Commit Graph

10631 Commits

Author SHA1 Message Date
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
Alkis Evlogimenos 52de9e214c Add number of spilled registers statistic.
llvm-svn: 11759
2004-02-23 18:45:32 +00:00
Chris Lattner 91a7dc0a6e Fix bugs in finegrainification
llvm-svn: 11758
2004-02-23 18:40:08 +00:00
Chris Lattner 43df6c268b Finegrainify namespacification
llvm-svn: 11757
2004-02-23 18:38:20 +00:00
Alkis Evlogimenos b525d54045 Use MachineBasicBlock::getParent().
llvm-svn: 11756
2004-02-23 18:36:38 +00:00
Alkis Evlogimenos d780ce6462 Remove implementation of default constructor as it is useless now.
llvm-svn: 11755
2004-02-23 18:28:35 +00:00
Brian Gaeke 0fa55f7909 Renamed from include/Support/iterator. Doxygenify comments; add autoconf substitution tags.
llvm-svn: 11754
2004-02-23 18:16:10 +00:00
Brian Gaeke bd02d1806f Replaced by include/Support/iterator.in.
llvm-svn: 11753
2004-02-23 18:16:10 +00:00
Brian Gaeke e27fc812ca Regenerated with autoheader-2.57.
llvm-svn: 11752
2004-02-23 18:16:09 +00:00
Brian Gaeke 29bb0e93af Add include/Support/iterator as an AC_OUTPUT file.
llvm-svn: 11751
2004-02-23 18:16:08 +00:00
Brian Gaeke d4754adbcf Make all iterator checks use AC_SUBST instead of AC_DEFINE.
llvm-svn: 11750
2004-02-23 18:16:07 +00:00
Brian Gaeke 10e9315126 Regenerated with autoconf-2.57.
llvm-svn: 11749
2004-02-23 18:16:06 +00:00
Alkis Evlogimenos af2de4848e Refactor rewinding code for finding the first terminator of a basic
block into MachineBasicBlock::getFirstTerminator().

This also fixes a bug in the implementation of the above in both
RegAllocLocal and InstrSched, where instructions where added after the
terminator if the basic block's only instruction was a terminator (it
shouldn't matter for RegAllocLocal since this case never occurs in
practice).

llvm-svn: 11748
2004-02-23 18:14:48 +00:00
Chris Lattner cb185a34bb Simplify code a bit, don't go off the end of the block, now that the current
block we are in might be empty

llvm-svn: 11744
2004-02-23 07:42:19 +00:00
Chris Lattner 4ffd4443ce We were forgetting to add FP_REG_KILL instructions to basic blocks which will
eventually get an assignment due to elimination of PHIs.

llvm-svn: 11743
2004-02-23 07:29:45 +00:00
Chris Lattner 2b55ea38bc Implement cast.ll::test14/15
llvm-svn: 11742
2004-02-23 07:16:20 +00:00
Chris Lattner be9082a63d Add tests for casts that should be eliminated
llvm-svn: 11741
2004-02-23 07:16:03 +00:00
Chris Lattner e79e854c5c Refactor some code. In the mul - setcc folding case, we really care about
whether this is the sign bit or not, so check unsigned comparisons as well.

llvm-svn: 11740
2004-02-23 06:38:22 +00:00
Chris Lattner 6ddaa24dd9 Handle the unsigned form as well
llvm-svn: 11739
2004-02-23 06:37:33 +00:00
Alkis Evlogimenos f83cb74b57 Improved PhysRegTracker interface. RegAlloc lazily allocates the register tracker using a std::auto_ptr
llvm-svn: 11738
2004-02-23 06:10:13 +00:00
Chris Lattner c8a10c4b6a Implement mul.ll:test11
llvm-svn: 11737
2004-02-23 06:00:11 +00:00
Chris Lattner fb302df02c Add a slight variant of test10
llvm-svn: 11736
2004-02-23 05:59:52 +00:00
Chris Lattner 59611149ee Implement "strength reduction" of X <= C and X >= C
llvm-svn: 11735
2004-02-23 05:47:48 +00:00
Chris Lattner 2635b52d4e Implement InstCombine/mul.ll:test10, which is a case that occurs when dealing
with "predication"

llvm-svn: 11734
2004-02-23 05:39:21 +00:00
Chris Lattner d0ffbe1cbe This multiply can be eliminated
llvm-svn: 11733
2004-02-23 05:38:47 +00:00
Alkis Evlogimenos c31ff795d5 Simplify iterator usage now that we have next(). Also don't pass iterators by reference now that MachineInstr* are in an ilist
llvm-svn: 11732
2004-02-23 04:12:30 +00:00
Chris Lattner e0f79a6a55 Update the 'new features' section
llvm-svn: 11731
2004-02-23 03:51:34 +00:00
Chris Lattner c6acc1076e Bug fixed
llvm-svn: 11730
2004-02-23 03:36:36 +00:00
Chris Lattner abb9162999 Work around a gas bug. Print '-9223372036854775808' as unsigned.
llvm-svn: 11729
2004-02-23 03:27:05 +00:00
Chris Lattner 7e90628a8a Implement cast fp -> bool
llvm-svn: 11728
2004-02-23 03:21:41 +00:00