Commit Graph

23277 Commits

Author SHA1 Message Date
Chris Lattner cce5eef431 New testcase, the new CFE compiles this into insertelement instructions, the
old one crashes.

llvm-svn: 26794
2006-03-16 18:47:51 +00:00
Chris Lattner 1678a6c477 Save/restore VRSAVE once per function, not once per block.
llvm-svn: 26793
2006-03-16 18:25:23 +00:00
Jim Laskey 4187778726 Typo.
llvm-svn: 26792
2006-03-16 18:15:12 +00:00
Chris Lattner b96bf56253 Fix a typo Eric van Riet Paap noticed
llvm-svn: 26791
2006-03-16 16:14:59 +00:00
Reid Spencer 0d42f696a6 Add a RUN: line so this test doesn't fail.
llvm-svn: 26790
2006-03-16 03:05:57 +00:00
Chris Lattner 4b41e40621 add support for the bitconvert node
llvm-svn: 26789
2006-03-16 01:29:53 +00:00
Chris Lattner 4024c00ce7 add support for vector->vector casts
llvm-svn: 26788
2006-03-15 22:19:46 +00:00
Chris Lattner cad70c3e46 Add a note, this code should be moved to the dag combiner.
llvm-svn: 26787
2006-03-15 22:19:18 +00:00
Chris Lattner d348f5be2c minor changes so that GCC builtin can be specified before the Intrinsic info,
add some more PPC intrinsics.

llvm-svn: 26786
2006-03-15 19:23:40 +00:00
Chris Lattner 6d6084fd04 Teach the strip pass to strip type names in addition to value names. This
is fallout from the type/value split in the symtab long long ago :)

llvm-svn: 26785
2006-03-15 19:22:41 +00:00
Chris Lattner 09ffafcf54 allow the GCCBuiltinName field to be optional
llvm-svn: 26784
2006-03-15 19:15:26 +00:00
Jim Laskey 9dcffe7767 Update doc to reflect changes in subprogram and block descriptors.
llvm-svn: 26783
2006-03-15 19:10:52 +00:00
Jim Laskey 71050ba709 Expand subprogram and added block descriptor.
llvm-svn: 26782
2006-03-15 19:09:58 +00:00
Andrew Lenharth b3dae7cfa9 no heap is happening here
llvm-svn: 26781
2006-03-15 19:03:16 +00:00
Andrew Lenharth 18e788e452 better check
llvm-svn: 26780
2006-03-15 19:02:54 +00:00
Andrew Lenharth c0b65305f1 remove qsort for now
llvm-svn: 26779
2006-03-15 18:32:18 +00:00
Evan Cheng f49357f81d Also requires -mattr=-sse3
llvm-svn: 26778
2006-03-15 18:05:13 +00:00
Andrew Lenharth fb4df2055f allow field sensitivity to be a tunable parameter
llvm-svn: 26777
2006-03-15 05:43:41 +00:00
Nate Begeman 2e1fde7c5c Update scheduling info for vrsave instruction
llvm-svn: 26776
2006-03-15 05:25:05 +00:00
Andrew Lenharth 3196422df0 Handle one offset with growth case seen in povray. Namely, if we have an offset,
and the offset lands at a field boundary in the old type, construct a new type,
copying the fields masked by the offset from the old type, and unify with that.

llvm-svn: 26775
2006-03-15 04:04:21 +00:00
Andrew Lenharth c254e5b180 improve mem intrinsics and add a few things povray uses
llvm-svn: 26774
2006-03-15 03:43:59 +00:00
Jeff Cohen c4e2468251 Fix VC++ build error.
llvm-svn: 26773
2006-03-15 02:51:05 +00:00
Chris Lattner 1c32e04b5f remove typo
llvm-svn: 26772
2006-03-15 02:05:38 +00:00
Chris Lattner da1a4cc6a4 Autogenerate a table of intrinsic names, so we can map from intrinsic ID to
LLVM intrinsic function name.

llvm-svn: 26771
2006-03-15 01:55:21 +00:00
Chris Lattner 402a573764 Autogenerate code to map from GCC builtin to LLVM intrinsic.
llvm-svn: 26770
2006-03-15 01:33:26 +00:00
Chris Lattner d00dddeb41 Set TargetPrefix on target-specific intrinsics. That way, in theory, different
targets could have different implemenations of a __builtin_foo gcc intrinsic.

llvm-svn: 26769
2006-03-15 01:32:36 +00:00
Robert Bocchino 2923bd009f Fixed a typo in the vsetfp examples.
llvm-svn: 26768
2006-03-14 23:22:57 +00:00
Robert Bocchino 81e95ba849 Split the 'vset' instruction into two instructions, 'vsetint' and
'vsetfp', to reflect the fact that the semantics are different for
integer and fp values.

llvm-svn: 26767
2006-03-14 20:55:28 +00:00
Chris Lattner f922807640 Update this to match the documentation in the GC doc and to match actual
practice.

llvm-svn: 26766
2006-03-14 20:02:51 +00:00
Chris Lattner c9cf65c2f8 Fix the gcread/gcwrite intrinsic specifications, fixing
CodeGen/Generic/GC/alloc_loop.ll

llvm-svn: 26765
2006-03-14 20:00:20 +00:00
Chris Lattner 6995470323 Bugfix, unbreaking CodeGen/PowerPC/cttz.ll
llvm-svn: 26764
2006-03-14 19:49:57 +00:00
Chris Lattner 6d4a221d80 Fix an et-forest memory leak. Patch by Daniel Berlin.
llvm-svn: 26763
2006-03-14 19:41:45 +00:00
Chris Lattner 5271a1f9b5 add a note
llvm-svn: 26762
2006-03-14 19:31:24 +00:00
Jim Laskey 2024aabcb0 Reflect the fact that empty strings can be expressed as null.
llvm-svn: 26761
2006-03-14 18:50:50 +00:00
Jim Laskey b8e155567a 1. Use null for serialized empty strings.
2. Allow for user defined debug descriptors.
3. Allow for user augmented fields on debug descriptors.

llvm-svn: 26760
2006-03-14 18:37:57 +00:00
Jim Laskey 14edc936ec Bring debugging information up to date.
llvm-svn: 26759
2006-03-14 18:08:46 +00:00
Chris Lattner ab1ed2aa96 Fix an off by one error that caused PPC LLC failures last night.
llvm-svn: 26758
2006-03-14 17:56:49 +00:00
Chris Lattner c5f866bb4a Implement a FIXME, recusively reassociating
A*A*B + A*A*C   -->   A*(A*B+A*C)   -->   A*(A*(B+C))

This implements Reassociate/mul-factor3.ll

llvm-svn: 26757
2006-03-14 16:04:29 +00:00
Chris Lattner e5a2155be9 new testcase from a FIXME in the code
llvm-svn: 26756
2006-03-14 08:13:09 +00:00
Chris Lattner 2fc319d444 extract some code into a method, no functionality change
llvm-svn: 26755
2006-03-14 07:11:11 +00:00
Chris Lattner 30402be175 transformation implemented
llvm-svn: 26754
2006-03-14 06:57:34 +00:00
Chris Lattner d6bde46d85 Promote shifts by a constant to multiplies so that we can reassociate
(x<<1)+(y<<1) -> (X+Y)<<1.  This implements
Transforms/Reassociate/shift-factor.ll

llvm-svn: 26753
2006-03-14 06:55:18 +00:00
Chris Lattner c714f268bf Test that we can reassociate (x<<1)+(y<<1) -> (X+Y)<<1.
llvm-svn: 26752
2006-03-14 06:54:32 +00:00
Reid Spencer 3e2d463a87 Allow a sequence of digits at the end of the directory name when trying to
determine the top directory. This allows the tool to find the correct top
directory when you have something like:

   /x/llvm
   /x/llvm2
   /x/llvm3

Previously the scripts would always find /x/llvm even if you were in the
llvm2 or llvm3 directory because the pattern didn't allow the digits at
the end of the path.

llvm-svn: 26751
2006-03-14 06:08:05 +00:00
Reid Spencer 552aa01d12 Change llvm.cs.uiuc.edu -> llvm.org
llvm-svn: 26750
2006-03-14 06:05:05 +00:00
Reid Spencer 3eb12e9a2a Add a newline at the end to avoid gcc warnings.
llvm-svn: 26749
2006-03-14 05:59:52 +00:00
Reid Spencer c67a060a51 Convert llvm.cs.uiuc.edu -> llvm.org
llvm-svn: 26748
2006-03-14 05:54:52 +00:00
Reid Spencer 85d182f3fc Change docs for llvm.cs.uiuc.edu -> llvm.org
llvm-svn: 26747
2006-03-14 05:42:07 +00:00
Reid Spencer ca05854a71 Changes docs for llvm.cs.uiuc.edu -> llvm.org
llvm-svn: 26746
2006-03-14 05:39:39 +00:00
Jim Laskey cf0bdffe6d 1. Handle removal of all arguments for a morphed intrinsic.
2. Remove the declaration of llvm.dbg.declare.

llvm-svn: 26745
2006-03-14 02:00:35 +00:00