1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 04:02:41 +01:00
llvm-mirror/lib/Transforms/Scalar
Chris Lattner 792bfd8f28 Merge two almost-identical pieces of code.
Make this code more powerful by using ComputeMaskedBits instead of looking
for an AND operand.  This lets us fold this:

int %test23(int %a) {
        %tmp.1 = and int %a, 1
        %tmp.2 = seteq int %tmp.1, 0
        %tmp.3 = cast bool %tmp.2 to int  ;; xor tmp1, 1
        ret int %tmp.3
}

into: xor (and a, 1), 1
llvm-svn: 26396
2006-02-27 02:38:23 +00:00
..
ADCE.cpp Make iostream #inclusion explicit 2006-01-22 23:32:06 +00:00
BasicBlockPlacement.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
CondPropagate.cpp Fix a fixme in CondPropagate.cpp by moving a PhiNode optimization into 2005-08-04 23:24:19 +00:00
ConstantProp.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
CorrelatedExprs.cpp Improve compatibility with VC2005, patch by Morten Ofstad! 2006-01-26 20:41:32 +00:00
DCE.cpp clean up and modernize this pass. 2005-05-08 18:45:26 +00:00
DeadStoreElimination.cpp Fix a bug where we didn't realize that vaarg reads memory. This fixes 2005-11-30 19:38:22 +00:00
GCSE.cpp Switch these to using ETForest instead of DominatorSet to compute itself. 2006-01-11 05:10:20 +00:00
IndVarSimplify.cpp Fix a crash building 176.gcc due to my recent patch, which only fixed 2005-11-18 18:30:47 +00:00
InstructionCombining.cpp Merge two almost-identical pieces of code. 2006-02-27 02:38:23 +00:00
LICM.cpp Make iostream #inclusion explicit 2006-01-22 23:32:06 +00:00
LoopStrengthReduce.cpp Use SCEVExpander::InsertCastOfTo instead of our own code. This reduces 2006-02-04 09:52:43 +00:00
LoopUnroll.cpp Make iostream #inclusion explicit 2006-01-22 23:32:06 +00:00
LoopUnswitch.cpp Fix Regression/Transforms/LoopUnswitch/2006-02-22-UnswitchCrash.ll, which 2006-02-22 23:55:00 +00:00
LowerAllocations.cpp When a function takes a variable number of pointer arguments, with a zero 2005-10-23 04:37:20 +00:00
LowerGC.cpp FunctionPass's cannot do IPO things. 2006-01-14 19:30:35 +00:00
LowerInvoke.cpp Add support alignment of allocation instructions. 2005-11-05 09:21:28 +00:00
LowerPacked.cpp Lowerpacked and SCCP support for the insertelement operation. 2006-01-17 20:06:55 +00:00
LowerSelect.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
LowerSwitch.cpp Make iostream #inclusion explicit 2006-01-22 23:32:06 +00:00
Makefile DONT_BUILD_RELINKED is gone and implied by BUILD_ARCHIVE now 2005-10-24 02:26:13 +00:00
Mem2Reg.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
Reassociate.cpp Make iostream #inclusion explicit 2006-01-22 23:32:06 +00:00
Reg2Mem.cpp since reg2mem requires it, might as well mention that it preserves it 2005-11-25 16:04:54 +00:00
ScalarReplAggregates.cpp Fix Regression/Transforms/ScalarRepl/2006-01-24-IllegalUnionPromoteCrash.ll 2006-01-24 19:36:27 +00:00
SCCP.cpp Implement some more interesting select sccp cases. This implements: 2006-02-08 02:38:11 +00:00
SimplifyCFG.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
TailDuplication.cpp Make iostream #inclusion explicit 2006-01-22 23:32:06 +00:00
TailRecursionElimination.cpp Implement Transforms/TailCallElim/return-undef.ll, a trivial case 2005-11-05 08:21:11 +00:00