llvm-6502/lib/Transforms/Scalar
Chris Lattner 3c6a0d4ae2 Implement InstCombine:shift.ll:test16, which turns (X >> C1) & C2 != C3
into (X & (C2 << C1)) != (C3 << C1), where the shift may be either left or
right and the compare may be any one.

This triggers 1546 times in 176.gcc alone, as it is a common pattern that
occurs for bitfield accesses.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13740 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-25 06:32:08 +00:00
..
ADCE.cpp Do not mark instructions in unreachable sections of the function as live. 2004-05-04 17:00:46 +00:00
BasicBlockPlacement.cpp Remove obsolete comment. Unreachable blocks will automatically be left at the 2004-02-11 05:20:50 +00:00
ConstantProp.cpp Changes to fix up the inst_iterator to pass to boost iterator checks. This 2004-04-27 15:13:33 +00:00
CorrelatedExprs.cpp Remove use of the ConstantHandling interfaces 2004-01-12 19:12:50 +00:00
DCE.cpp Changes to fix up the inst_iterator to pass to boost iterator checks. This 2004-04-27 15:13:33 +00:00
DecomposeMultiDimRefs.cpp Finegrainify namespacification 2004-01-09 06:02:20 +00:00
GCSE.cpp Add support for replacement of formal arguments with simpler expressions. 2004-05-23 21:19:55 +00:00
IndVarSimplify.cpp Move the scev expansion code into this pass, where it belongs. There is 2004-04-23 21:29:48 +00:00
InstructionCombining.cpp Implement InstCombine:shift.ll:test16, which turns (X >> C1) & C2 != C3 2004-05-25 06:32:08 +00:00
LICM.cpp Adjust to the changes in the AliasSetTracker interface 2004-05-23 21:20:19 +00:00
LoopUnroll.cpp Fix a nasty bug that caused us to unroll EXTREMELY large loops due to overflow 2004-05-13 20:43:31 +00:00
LoopUnswitch.cpp Initial checkin of a simple loop unswitching pass. It still needs work, 2004-04-19 18:07:02 +00:00
LowerGC.cpp Spelling people's names right is kinda important 2004-05-23 21:27:29 +00:00
Makefile
PiNodeInsertion.cpp Finegrainify namespacification 2004-01-09 06:02:20 +00:00
PRE.cpp Finegrainify namespacification 2004-01-09 06:02:20 +00:00
Reassociate.cpp Finegrainify namespacification 2004-01-09 06:02:20 +00:00
ScalarReplAggregates.cpp Support getelementptr instructions which use uint's to index into structure 2004-04-05 01:30:19 +00:00
SCCP.cpp Add SCCP support for constant folding calls, implementing: 2004-04-13 19:43:54 +00:00
SimplifyCFG.cpp Finegrainify namespacification 2004-01-09 06:02:20 +00:00
SymbolStripping.cpp Update obsolete comments 2004-01-10 21:36:49 +00:00
TailDuplication.cpp Make the tail duplication threshold accessible from the command line instead of hardcoded 2004-04-18 00:52:43 +00:00
TailRecursionElimination.cpp Adjust to the new BasicBlock ctor, which requires a function parameter 2004-02-04 03:58:28 +00:00