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

34960 Commits

Author SHA1 Message Date
Victor Hernandez
173518e4ae Fix comment for CheckDebugInfoIntrinsics
llvm-svn: 92774
2010-01-05 21:13:46 +00:00
Chris Lattner
3aac94341a move a trunc-specific transform out of commonIntCastTransforms into visitTrunc.
llvm-svn: 92773
2010-01-05 21:11:17 +00:00
Dan Gohman
b4e120e7a7 Restore dump() methods to Loop and MachineLoop.
llvm-svn: 92772
2010-01-05 21:08:02 +00:00
Benjamin Kramer
0ba7479f2c Move remaining stuff to the isInteger predicate.
llvm-svn: 92771
2010-01-05 21:05:54 +00:00
Chris Lattner
18ed3a6976 move a zext specific xform out of commonIntCastTransforms into visitZExt and modernize it.
llvm-svn: 92770
2010-01-05 21:04:47 +00:00
Jakob Stoklund Olesen
0277c4cd0b Remove livein checks from machine code verifier.
A phi operand that is implicitly defined in a predecessor becomes an undefined
register after phi elimination. This causes a lot of false positives when the
verifier is checking if live-in registers are live-out from all predecessors.

Removing the verifier checks seems like a better solution than insisting on
IMPLICIT_DEF instructions in predecessor blocks.

llvm-svn: 92769
2010-01-05 20:59:36 +00:00
Chris Lattner
4c21bfec50 move a trunc-specific xform out of commonIntCastTransforms into visitTrunc
llvm-svn: 92768
2010-01-05 20:57:30 +00:00
Chris Lattner
e293a03aff reduce indentation
llvm-svn: 92766
2010-01-05 20:56:24 +00:00
Devang Patel
ab66612f1b NamedMDNode is a collection MDNodes.
llvm-svn: 92761
2010-01-05 20:41:31 +00:00
Benjamin Kramer
c233521d45 Convert a ton of simple integer type equality tests to the new predicate.
llvm-svn: 92760
2010-01-05 20:07:06 +00:00
Benjamin Kramer
6a11532b00 Add a new predicate for integer type equality tests.
llvm-svn: 92759
2010-01-05 20:04:48 +00:00
Chris Lattner
f457542506 optimize comparisons against cttz/ctlz/ctpop, patch by Alastair Lynn!
llvm-svn: 92745
2010-01-05 18:09:56 +00:00
Dan Gohman
4b9a39d586 Nick Lewycky pointed out that this code makes changes unconditionally.
llvm-svn: 92739
2010-01-05 17:50:58 +00:00
Devang Patel
eb75073664 If a scope has only one instruction then first instruction is also the last instruction.
llvm-svn: 92736
2010-01-05 16:59:17 +00:00
Dan Gohman
fff95c0489 Set Changed properly after calling DeleteDeadPHIs.
llvm-svn: 92735
2010-01-05 16:31:45 +00:00
Dan Gohman
e4a22bdd4a Use do+while instead of while for loops which obviously have a
non-zero trip count. Use SmallVector's pop_back_val().

llvm-svn: 92734
2010-01-05 16:27:25 +00:00
Dan Gohman
7924aacfe4 Fix indentation.
llvm-svn: 92733
2010-01-05 16:20:55 +00:00
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
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
a2eb2bde9e Fix a build error and change errs() to dbgs().
llvm-svn: 92669
2010-01-05 01:34:26 +00:00
David Greene
2f3bd270a0 Change errs() to dbgs().
llvm-svn: 92665
2010-01-05 01:30:18 +00:00