1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-26 22:42:46 +02:00
Commit Graph

146 Commits

Author SHA1 Message Date
Chris Lattner
7925cc72c0 Reimplement the parameter attributes support, phase #1. hilights:
1. There is now a "PAListPtr" class, which is a smart pointer around
   the underlying uniqued parameter attribute list object, and manages
   its refcount.  It is now impossible to mess up the refcount.
2. PAListPtr is now the main interface to the underlying object, and
   the underlying object is now completely opaque.
3. Implementation details like SmallVector and FoldingSet are now no
   longer part of the interface.
4. You can create a PAListPtr with an arbitrary sequence of
   ParamAttrsWithIndex's, no need to make a SmallVector of a specific 
   size (you can just use an array or scalar or vector if you wish).
5. All the client code that had to check for a null pointer before
   dereferencing the pointer is simplified to just access the 
   PAListPtr directly.
6. The interfaces for adding attrs to a list and removing them is a
   bit simpler.

Phase #2 will rename some stuff (e.g. PAListPtr) and do other less 
invasive changes.

llvm-svn: 48289
2008-03-12 17:45:29 +00:00
Nick Lewycky
fac0f67198 Update the .cvs files to match today's asm syntax change.
llvm-svn: 48128
2008-03-10 05:01:34 +00:00
Devang Patel
e7bf998c9a regenerate.
llvm-svn: 47849
2008-03-03 18:58:47 +00:00
Devang Patel
4813397027 regenerate.
llvm-svn: 47642
2008-02-26 23:19:08 +00:00
Devang Patel
6229b52816 regenerate
llvm-svn: 47634
2008-02-26 22:17:48 +00:00
Devang Patel
ac2ec94778 Regenerate.
llvm-svn: 47519
2008-02-23 01:17:37 +00:00
Devang Patel
7cfd9e7634 Regenerate
llvm-svn: 47509
2008-02-23 00:38:56 +00:00
Dale Johannesen
ae08bdb4cf Split ParameterAttributes.h, putting the complicated
stuff into ParamAttrsList.h.  Per feedback from
ParamAttrs changes.

llvm-svn: 47504
2008-02-22 22:17:59 +00:00
Devang Patel
f8efadbac0 Regenerate
llvm-svn: 47495
2008-02-22 19:31:30 +00:00
Dale Johannesen
1d3737e5ed Generated files for 47484.
llvm-svn: 47485
2008-02-22 17:50:51 +00:00
Devang Patel
302f762255 regenerate.
llvm-svn: 47408
2008-02-20 22:40:23 +00:00
Dale Johannesen
7c2d87a9fc Regenerated files.
llvm-svn: 47402
2008-02-20 21:15:43 +00:00
Devang Patel
9f3c2e3d61 Regenerate.
llvm-svn: 47391
2008-02-20 19:13:10 +00:00
Anton Korobeynikov
c41f5b6af4 Fix newly-introduced 4.3 warnings
llvm-svn: 47375
2008-02-20 12:07:57 +00:00
Devang Patel
f5e3f35874 regenerate
llvm-svn: 47350
2008-02-19 22:27:01 +00:00
Dale Johannesen
b022130b62 Generated files for checkin 47342.
llvm-svn: 47344
2008-02-19 21:40:51 +00:00
Chris Lattner
851ebb75de regenerate
llvm-svn: 47312
2008-02-19 04:36:25 +00:00
Scott Michel
4a4f50da13 Back out mods to llvmAsmParser, incorrectly committed
llvm-svn: 46545
2008-01-30 03:10:00 +00:00
Scott Michel
ab3702fba9 More cleanups for CellSPU:
- Expand tabs... (poss 80-col violations, will get them later...)
- Consolidate logic for SelectDFormAddr and SelectDForm2Addr into a single
  function, simplifying maintenance. Also reduced custom instruction
  generation for SPUvecinsert/INSERT_MASK.

llvm-svn: 46544
2008-01-30 02:55:46 +00:00
Chris Lattner
ad9a6ccb83 Remove attribution from file headers, per discussion on llvmdev.
llvm-svn: 45418
2007-12-29 20:36:04 +00:00
Christopher Lamb
2087584f25 regenerate.
llvm-svn: 45085
2007-12-17 01:17:35 +00:00
Christopher Lamb
8187d5cde7 Regenerate.
llvm-svn: 44934
2007-12-12 08:45:45 +00:00
Christopher Lamb
71a996a387 Regenerate.
llvm-svn: 44859
2007-12-11 09:02:08 +00:00
Gordon Henriksen
5d201e0bcc Adding a collector name attribute to Function in the IR. These
methods are new to Function:

  bool hasCollector() const;
  const std::string &getCollector() const;
  void setCollector(const std::string &);
  void clearCollector();

The assembly representation is as such:

  define void @f() gc "shadow-stack" { ...

The implementation uses an on-the-side table to map Functions to 
collector names, such that there is no overhead. A StringPool is 
further used to unique collector names, which are extremely
likely to be unique per process.

llvm-svn: 44769
2007-12-10 03:18:06 +00:00
Anton Korobeynikov
75a3208bb0 Regenerate
llvm-svn: 44546
2007-12-03 21:01:29 +00:00
Anton Korobeynikov
a19d61c50e More sanity checks for function types.
Thanks goes to PyPy folks for generating broken stuff :)

llvm-svn: 44538
2007-12-03 19:16:54 +00:00
Duncan Sands
1b0feb42e2 Add some convenience methods for querying attributes, and
use them.

llvm-svn: 44403
2007-11-28 17:07:01 +00:00
Duncan Sands
3602011bec Fix PR1146: parameter attributes are longer part of
the function type, instead they belong to functions
and function calls.  This is an updated and slightly
corrected version of Reid Spencer's original patch.
The only known problem is that auto-upgrading of
bitcode files doesn't seem to work properly (see
test/Bitcode/AutoUpgradeIntrinsics.ll).  Hopefully
a bitcode guru (who might that be? :) ) will fix it.

llvm-svn: 44359
2007-11-27 13:23:08 +00:00
Nate Begeman
a42e2c2272 Basic non-power-of-2 vector support
llvm-svn: 44181
2007-11-15 21:15:26 +00:00
Anton Korobeynikov
b1e6079350 Regenerate
llvm-svn: 44110
2007-11-14 09:53:48 +00:00
Dale Johannesen
1f70f86c7a Make labels work in asm blocks; allow labels as
parameters.  Rename ValueRefList to ParamList
in AsmParser, since its only use is for parameters.

llvm-svn: 43734
2007-11-05 21:20:28 +00:00
Dale Johannesen
967ee09f04 Generated files for previous patch.
llvm-svn: 41876
2007-09-12 03:31:28 +00:00
Dale Johannesen
4ee2a51844 Generated files for previous patch.
llvm-svn: 41859
2007-09-11 18:33:39 +00:00
Chris Lattner
9f93ab3579 regenerate
llvm-svn: 41816
2007-09-10 23:24:14 +00:00
Dale Johannesen
783215c630 Apply feedback from previous patch.
llvm-svn: 41774
2007-09-07 21:07:57 +00:00
Dale Johannesen
86f367a6b7 Next round of APFloat changes.
Use APFloat in UpgradeParser and AsmParser.
Change all references to ConstantFP to use the
APFloat interface rather than double.  Remove
the ConstantFP double interfaces.
Use APFloat functions for constant folding arithmetic
and comparisons.
(There are still way too many places APFloat is
just a wrapper around host float/double, but we're
getting there.)

llvm-svn: 41747
2007-09-06 18:13:44 +00:00
David Greene
34e8027ee3 Update generated files.
llvm-svn: 41706
2007-09-04 18:46:50 +00:00
Chris Lattner
c3b406a619 update these
llvm-svn: 41565
2007-08-29 16:15:23 +00:00
Chris Lattner
789dad3483 regenerate
llvm-svn: 40875
2007-08-06 21:00:46 +00:00
Chandler Carruth
d76683caee Regenerating.
llvm-svn: 40808
2007-08-04 01:56:21 +00:00
Dale Johannesen
dda00eb44d Long double, part 1 of N. Support in IR.
llvm-svn: 40774
2007-08-03 01:03:46 +00:00
David Greene
29112580c6 Update generated files.
llvm-svn: 40663
2007-08-01 03:59:32 +00:00
Reid Spencer
037c4a8a1d Regenerate.
llvm-svn: 40634
2007-07-31 14:41:17 +00:00
Reid Spencer
70d8b73b1d Regenerate.
llvm-svn: 40621
2007-07-31 06:37:43 +00:00
Reid Spencer
1d951c9803 Regenerate.
llvm-svn: 40611
2007-07-31 03:50:36 +00:00
Chris Lattner
1d5bf72d84 update the .cvs files
llvm-svn: 37918
2007-07-05 17:26:49 +00:00
Reid Spencer
c0e0e864b3 Regenerate.
llvm-svn: 37292
2007-05-22 18:52:55 +00:00
Reid Spencer
b95962309d Regenerate
llvm-svn: 37258
2007-05-19 07:22:10 +00:00
Chris Lattner
9f7278dff9 regenerate
llvm-svn: 36740
2007-05-04 04:01:37 +00:00
Anton Korobeynikov
3d95e52ea2 Implement protected visibility. This partly implements PR1363. Linker
should be taught to deal with protected symbols.

llvm-svn: 36565
2007-04-29 18:35:00 +00:00