Dan Gohman
41cc1e1fc4
Make RecursivelyDeleteTriviallyDeadInstructions,
...
RecursivelyDeleteDeadPHINode, and DeleteDeadPHIs return a flag
indicating whether they made any changes.
llvm-svn: 92732
2010-01-05 15:45:31 +00:00
Dan Gohman
66ee3816ef
Some versions of GCC don't like non-static data members in sizeof
...
in this context.
llvm-svn: 92731
2010-01-05 15:28:21 +00:00
Dan Gohman
090f279ac5
Add a SmallBitVector class, which mimics BitVector but uses only
...
a single pointer (PointerIntPair) member. In "small" mode, the
pointer field is reinterpreted as a set of bits. In "large" mode,
the pointer points to a heap-allocated object.
Also, give BitVector empty and swap functions.
And, add some simple unittests for BitVector and SmallBitVector.
llvm-svn: 92730
2010-01-05 15:04:49 +00:00
Benjamin Kramer
cd6b749245
Add newline at EOF.
...
llvm-svn: 92727
2010-01-05 13:32:48 +00:00
Benjamin Kramer
e90a3c66c4
Avoid going through the LLVMContext for type equality where it's safe to dereference the type pointer.
...
llvm-svn: 92726
2010-01-05 13:12:22 +00:00
Chris Lattner
09b91ecf3c
prune some #includes.
...
llvm-svn: 92712
2010-01-05 07:54:43 +00:00
Chris Lattner
58ddbda58c
split and/or/xor out into one overly-large (2000LOC) file. However, I think
...
it does make sense to keep them together, at least for now.
llvm-svn: 92711
2010-01-05 07:50:36 +00:00
Chris Lattner
7201f09ff2
missed file with previous commit.
...
llvm-svn: 92710
2010-01-05 07:45:02 +00:00
Chris Lattner
dd39b601af
split instcombine of shifts out to its own file.
...
llvm-svn: 92709
2010-01-05 07:44:46 +00:00
Chris Lattner
e75f48f8bd
eliminate getBitCastOperand and simplify some over-complex inbounds stuff.
...
llvm-svn: 92708
2010-01-05 07:42:10 +00:00
Chris Lattner
e21194fe22
split call handling out to InstCombineCalls.cpp
...
llvm-svn: 92707
2010-01-05 07:32:13 +00:00
Chris Lattner
491e03b6ef
optimize cttz and ctlz when we can prove something about the
...
leading/trailing bits. Patch by Alastair Lynn!
llvm-svn: 92706
2010-01-05 07:23:56 +00:00
Chris Lattner
e36e3b586d
this inline function moved to addsub
...
llvm-svn: 92705
2010-01-05 07:20:54 +00:00
Chris Lattner
63747a10a8
split add/sub out to its own file. Eliminate use of
...
dyn_castNotVal in the X+~X transform. dyn_castNotVal is
dramatic overkill for what the xform needed.
llvm-svn: 92704
2010-01-05 07:18:46 +00:00
Chris Lattner
5ea00f56bd
all the places we use hasOneUse() we know are instructions, so inline
...
and simplify.
llvm-svn: 92700
2010-01-05 07:04:23 +00:00
Chris Lattner
081decf118
eliminate AssociativeOpt and its last uses.
...
llvm-svn: 92697
2010-01-05 07:01:16 +00:00
Chris Lattner
4d773ac576
inline the FoldICmpLogical functor.
...
llvm-svn: 92695
2010-01-05 06:59:49 +00:00
Evan Cheng
3c99a6f8c3
Code refactoring.
...
llvm-svn: 92694
2010-01-05 06:52:31 +00:00
Chris Lattner
1e57d0e7e3
inline the 'AddRHS' transformation, simplifying things significantly.
...
Eliminate the 'AddMaskingAnd' transformation, it is redundant with this
more general code right below it:
// A+B --> A|B iff A and B have no bits set in common.
llvm-svn: 92693
2010-01-05 06:29:13 +00:00
Chris Lattner
17a2db8444
remove massive over-genality manifested as a big template
...
that got instantiated. There is no reason for instcombine
to try this hard for simple associative optimizations. Next
up, eliminate the template completely.
llvm-svn: 92692
2010-01-05 06:24:06 +00:00
Chris Lattner
92f9d59ad1
split mul/div/rem instructions out to their own file.
...
llvm-svn: 92689
2010-01-05 06:09:35 +00:00
Chris Lattner
8822b80a65
clean up header.
...
llvm-svn: 92688
2010-01-05 06:05:07 +00:00
Chris Lattner
e4910dc145
split select out to its own file.
...
llvm-svn: 92687
2010-01-05 06:03:12 +00:00
Chris Lattner
b55724e825
split out load/store/alloca.
...
llvm-svn: 92685
2010-01-05 05:57:49 +00:00
Chris Lattner
916d97c2d5
reduce indentation
...
llvm-svn: 92684
2010-01-05 05:42:08 +00:00
Chris Lattner
e22030e730
split vector stuff out to InstCombineVectorOps.cpp
...
llvm-svn: 92683
2010-01-05 05:36:20 +00:00
Chris Lattner
23ff3ce8eb
split PHI node stuff out to InstCombinePHI.cpp
...
llvm-svn: 92682
2010-01-05 05:31:55 +00:00
Chris Lattner
48618eeec3
convert various IntrinsicInst's to use class instead of struct.
...
llvm-svn: 92681
2010-01-05 05:21:26 +00:00
Chris Lattner
2ef4ba7cf5
fix an infinite loop in reassociate building emacs.
...
llvm-svn: 92679
2010-01-05 04:55:35 +00:00
David Greene
2f13cc8277
Change this back to errs().
...
llvm-svn: 92674
2010-01-05 01:55:22 +00:00
David Greene
28c02548d3
These should probably be errs().
...
llvm-svn: 92673
2010-01-05 01:53:59 +00:00
Devang Patel
9c02d20409
Delete renaming use of dead dbg intrinsics.
...
Intrinsic::dbg_stoppoint
Intrinsic::dbg_region_start
Intrinsic::dbg_region_end
Intrinsic::dbg_func_start
llvm-svn: 92672
2010-01-05 01:47:06 +00:00
Devang Patel
e6e1c93fb9
Use StringRef.startswith().
...
llvm-svn: 92671
2010-01-05 01:46:14 +00:00
David Greene
ede60e521f
Fix a build error by adding a missing commit.
...
llvm-svn: 92670
2010-01-05 01:36:30 +00:00
David Greene
a2eb2bde9e
Fix a build error and change errs() to dbgs().
...
llvm-svn: 92669
2010-01-05 01:34:26 +00:00
David Greene
4c591a29fd
Enable debug buffering.
...
llvm-svn: 92667
2010-01-05 01:30:32 +00:00
David Greene
a9aa7f2e15
Enable debug buffering.
...
llvm-svn: 92666
2010-01-05 01:30:21 +00:00
David Greene
2f3bd270a0
Change errs() to dbgs().
...
llvm-svn: 92665
2010-01-05 01:30:18 +00:00
David Greene
1ee15299b7
Change errs() to dbgs().
...
llvm-svn: 92664
2010-01-05 01:30:14 +00:00
David Greene
da24eb426d
Change errs() to dbgs().
...
llvm-svn: 92663
2010-01-05 01:30:09 +00:00
David Greene
38e8cf6313
Change errs() to dbgs().
...
llvm-svn: 92662
2010-01-05 01:30:06 +00:00
David Greene
b4caa095f9
Change errs() to dbgs().
...
llvm-svn: 92661
2010-01-05 01:30:04 +00:00
David Greene
3a9e6e8827
Change errs() to dbgs().
...
llvm-svn: 92660
2010-01-05 01:30:02 +00:00
David Greene
36abd30d2e
Change errs() to dbgs().
...
llvm-svn: 92659
2010-01-05 01:30:00 +00:00
David Greene
f8d868e805
Change errs() to dbgs().
...
llvm-svn: 92658
2010-01-05 01:29:58 +00:00
David Greene
446bde822e
Change errs() to dbgs().
...
llvm-svn: 92657
2010-01-05 01:29:55 +00:00
David Greene
6ad48aba1c
Change errs() to dbgs().
...
llvm-svn: 92656
2010-01-05 01:29:39 +00:00
David Greene
d9586419d7
Change errs() to dbgs().
...
llvm-svn: 92655
2010-01-05 01:29:36 +00:00
David Greene
d1475983db
Change errs() to dbgs().
...
llvm-svn: 92654
2010-01-05 01:29:34 +00:00
David Greene
05203dccf1
Change errs() to dbgs().
...
llvm-svn: 92653
2010-01-05 01:29:29 +00:00