Brian Gaeke
04cff21c2f
Cygwin defines log2 as a macro. Undef it here IFF it has already been defined,
...
so that we always get the inline function instead. Remember, kids, like it says
in the GCC manual, "An Inline Function is As Fast As a Macro."
llvm-svn: 11815
2004-02-25 01:53:45 +00:00
Brian Gaeke
01d9231855
small portability fix.
...
llvm-svn: 11814
2004-02-24 22:58:31 +00:00
Chris Lattner
9ccb1af08f
Add support for 'rename'
...
llvm-svn: 11813
2004-02-24 22:17:00 +00:00
Chris Lattner
d996e543eb
Make the verifier a little more explicit about this problem.
...
llvm-svn: 11811
2004-02-24 22:06:07 +00:00
Chris Lattner
396cdaf067
Add support for remove, fwrite, and fread
...
Also fix problem where we didn't check to see if a node pointer was null.
Though fclose(null) doesn't make a lot of sense, 300.twolf does it.
llvm-svn: 11810
2004-02-24 22:02:48 +00:00
John Criswell
47c5459cec
Added the VTune tests.
...
llvm-svn: 11809
2004-02-24 21:43:38 +00:00
Brian Gaeke
10a32da382
FunctionLiveVarInfo.h moved: include/llvm/CodeGen -> lib/Target/Sparc/LiveVar
...
llvm-svn: 11804
2004-02-24 19:46:00 +00:00
Chris Lattner
b471f0188f
Fix some unexpected fallout from the config.h changes. Because the CBE no
...
longer was getting this #include, it always fell back on the less precise
floating point initializer values, causing some testsuite failures.
llvm-svn: 11803
2004-02-24 18:34:10 +00:00
Chris Lattner
8ee0593f0d
Fix a faulty optimization on FP values
...
llvm-svn: 11801
2004-02-24 18:10:14 +00:00
John Criswell
a92e58610d
Fixed minor typos.
...
llvm-svn: 11800
2004-02-24 16:13:56 +00:00
Chris Lattner
90ea78edba
If a block is made dead, make sure to promptly remove it.
...
llvm-svn: 11799
2004-02-24 16:09:21 +00:00
Alkis Evlogimenos
1dd872ce94
Move machine code rewriter and spiller outside the register
...
allocator.
The implementation is completely rewritten and now employs several
optimizations not exercised before. For example for 164.gzip we have
997 loads and 699 stores vs the 1221 loads and 880 stores we have
before.
llvm-svn: 11798
2004-02-24 08:58:30 +00:00
Chris Lattner
a2ab489135
Implement SimplifyCFG/switch_switch_fold.ll
...
This case occurs many times in various benchmarks, especially when combined
with the previous patch. This allows it to get stuff like:
if (X == 4 || X == 3)
if (X == 5 || X == 8)
and
switch (X) {
case 4: case 5: case 6:
if (X == 4 || X == 5)
llvm-svn: 11797
2004-02-24 07:23:58 +00:00
Chris Lattner
fe7a92fe7c
New testcase. Switch instructions that go to switch instructions should be
...
merged.
llvm-svn: 11796
2004-02-24 07:21:09 +00:00
Alkis Evlogimenos
63aea0b6a5
Add predicates for checking if a virtual register has a physical
...
register mapping or a stack slot mapping.
llvm-svn: 11795
2004-02-24 06:30:36 +00:00
Chris Lattner
c7f8ba9f4f
Add some helpful methods for dealing with switch instructions
...
llvm-svn: 11794
2004-02-24 06:26:00 +00:00
Chris Lattner
3cd98f054a
Rearrange code a bit
...
llvm-svn: 11793
2004-02-24 05:54:22 +00:00
Chris Lattner
6f4b45acf5
Implement: test/Regression/Transforms/SimplifyCFG/switch_create.ll
...
This turns code like this:
if (X == 4 | X == 7)
and
if (X != 4 & X != 7)
into switch instructions.
llvm-svn: 11792
2004-02-24 05:38:11 +00:00
Chris Lattner
ae509325d6
The simplifycfg pass should be able to turn stuff like:
...
if (X == 4 || X == 7)
and
if (X != 4 && X != 7)
into switch instructions.
llvm-svn: 11791
2004-02-24 05:34:44 +00:00
Chris Lattner
cf96c6caa5
Wow, the description of the 'switch' instruction was out of date.
...
llvm-svn: 11790
2004-02-24 04:54:45 +00:00
Chris Lattner
9f8bf00ac3
we no longer include boost
...
llvm-svn: 11789
2004-02-24 04:02:20 +00:00
Chris Lattner
291ebdbfcc
Hrm, my find must have been faulty. It didn't remove these as well.
...
llvm-svn: 11788
2004-02-24 03:54:22 +00:00
Chris Lattner
0da4862a80
Boost is now unneeded, thanks to the fix for PR253, contributed by Reid Spencer!
...
llvm-svn: 11787
2004-02-24 03:53:00 +00:00
Chris Lattner
7479e1ebd7
Now that's a new feature!
...
llvm-svn: 11786
2004-02-24 03:50:24 +00:00
Chris Lattner
101e704b0b
Use the new LLVM is_class template instead of the boost one, allowing us to
...
remove our dependency on boost! Thanks to Reid Spencer for making this possible!
llvm-svn: 11785
2004-02-24 03:50:05 +00:00
Chris Lattner
78eed17a29
Check in a new type_traits header which provides the mysterious is_class
...
template. Thanks go out to Reid Spencer for skillfully extracting this
from boost!
llvm-svn: 11784
2004-02-24 03:49:29 +00:00
Chris Lattner
1302e3ac95
Noone cares about similarity to boost
...
llvm-svn: 11783
2004-02-24 03:47:25 +00:00
Alkis Evlogimenos
8b571a64ac
Make enum private as it is an implementation detail.
...
llvm-svn: 11782
2004-02-23 23:49:40 +00:00
Alkis Evlogimenos
ab77b05d8c
Remove '4Virt' from member function names as it is obvious.
...
llvm-svn: 11781
2004-02-23 23:47:10 +00:00
Alkis Evlogimenos
c794a9060f
Refactor VirtRegMap out of RegAllocLinearScan as the first part of bug
...
251 (providing a generic machine code rewriter/spiller).
llvm-svn: 11780
2004-02-23 23:08:11 +00:00
Alkis Evlogimenos
d140e3d4ff
Include Config/config.h for SHLIBEXT.
...
llvm-svn: 11779
2004-02-23 22:42:51 +00:00
Brian Gaeke
686efc0b56
DataTypes.h is now output from configure, and shortened
...
llvm-svn: 11778
2004-02-23 22:07:26 +00:00
Brian Gaeke
090ed13063
Add SUBSTing checks for sys/types.h and inttypes.h; add DataTypes.h to AC_OUTPUT.
...
llvm-svn: 11777
2004-02-23 22:07:01 +00:00
Brian Gaeke
4eea32f37a
Regenerated with autoconf-2.57.
...
llvm-svn: 11776
2004-02-23 22:07:00 +00:00
Chris Lattner
ae739aefd7
Generate much more efficient code in programs like pifft
...
llvm-svn: 11775
2004-02-23 21:46:58 +00:00
Chris Lattner
c40b9d7d51
Fix a small typeo in my checkin last night that broke vortex and other programs :(
...
llvm-svn: 11774
2004-02-23 21:46:42 +00:00
Brian Gaeke
1bc5aaefc6
Regenerated with autoheader-2.57.
...
llvm-svn: 11773
2004-02-23 21:30:39 +00:00
Brian Gaeke
d3de6c0d30
Regenerated with autoconf-2.57.
...
llvm-svn: 11772
2004-02-23 21:30:37 +00:00
Brian Gaeke
01cc3d876f
Change test for pthreads to use AC_SUBST; add ThreadSupport.h as an AC_OUTPUT.
...
llvm-svn: 11771
2004-02-23 21:30:36 +00:00
Brian Gaeke
c685388125
ThreadSupport.h is now output from configure.
...
llvm-svn: 11770
2004-02-23 21:30:29 +00:00
Brian Gaeke
d97a1201c2
Remove check for slist
...
llvm-svn: 11769
2004-02-23 21:12:58 +00:00
Chris Lattner
f5ce254692
Fix InstCombine/2004-02-23-ShiftShiftOverflow.ll
...
Also, turn 'shr int %X, 1234' into 'shr int %X, 31'
llvm-svn: 11768
2004-02-23 20:30:06 +00:00
Chris Lattner
7eaa535d4d
Test for the other way also
...
llvm-svn: 11767
2004-02-23 20:24:16 +00:00
Chris Lattner
1cc1217121
New testcase
...
llvm-svn: 11766
2004-02-23 20:19:51 +00:00
Brian Gaeke
cc7644407c
Renamed to hash_set.in; move to using autoconf substitution tags.
...
llvm-svn: 11765
2004-02-23 18:56:36 +00:00
Brian Gaeke
17d7a29d76
Renamed to hash_map.in; move to using autoconf substitution tags.
...
llvm-svn: 11764
2004-02-23 18:56:35 +00:00
Brian Gaeke
cc2b8b78bf
Add include/Support/hash_map and include/Support/hash_set as AC_OUTPUT files.
...
llvm-svn: 11763
2004-02-23 18:56:05 +00:00
Brian Gaeke
ceb6842293
Regenerated using autoheader-2.57.
...
llvm-svn: 11762
2004-02-23 18:56:04 +00:00
Brian Gaeke
37205b099b
Move HASH_* checks to using AC_SUBST instead of AC_DEFINE. Tighten up some whitespace and comments.
...
llvm-svn: 11761
2004-02-23 18:56:03 +00:00
Brian Gaeke
8588355552
Regenerated using autoconf-2.57.
...
llvm-svn: 11760
2004-02-23 18:56:02 +00:00