llvm-6502/lib/Transforms/InstCombine
Bill Wendling cc54889cd5 The transform is:
(or (bool?A:B),(bool?C:D)) --> (bool?(or A,C):(or B,D))

By the time the OR is visited, both the SELECTs have been visited and not
optimized and the OR itself hasn't been transformed so we do this transform in
the hopes that the new ORs will be optimized.

The transform is explicitly disabled for vector-selects until "codegen matures
to handle them better".

Patch by Muhammad Tauqir!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175380 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-16 23:41:36 +00:00
..
CMakeLists.txt llvm/lib: [CMake] Add explicit dependency to intrinsics_gen. 2012-06-24 13:32:01 +00:00
InstCombine.h Remove trailing spaces. 2013-01-14 23:16:36 +00:00
InstCombineAddSub.cpp Transform (sub 0, (zext bool to A)) to (sext bool to A) and 2013-01-21 21:57:20 +00:00
InstCombineAndOrXor.cpp The transform is: 2013-02-16 23:41:36 +00:00
InstCombineCalls.cpp Revert "Have InstCombine call SipmlifyCall when handling calls. Test case included." 2013-02-08 01:55:39 +00:00
InstCombineCasts.cpp Fix comment 2013-02-13 00:19:19 +00:00
InstCombineCompares.cpp Fix refactoring mistake in "Teach InstCombine to work with smaller legal types..." 2013-02-15 15:18:17 +00:00
InstCombineLoadStoreAlloca.cpp switch from pointer equality comparison to MDNode::getMostGenericTBAA 2013-01-05 16:44:07 +00:00
InstCombineMulDivRem.cpp 1. Hoist minus sign as high as possible in an attempt to reveal 2013-01-15 21:09:32 +00:00
InstCombinePHI.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
InstCombineSelect.cpp Use the new script to sort the includes of every file under lib. 2012-12-03 16:50:05 +00:00
InstCombineShifts.cpp Revert r174152. The shift amount may overflow and in that case this transformation is illegal. 2013-02-01 07:59:33 +00:00
InstCombineSimplifyDemanded.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
InstCombineVectorOps.cpp Check for less than 0 in shuffle mask instead of -1. It's more consistent with other code related to shuffles and easier to implement in compiled code. 2013-01-18 05:30:07 +00:00
InstCombineWorklist.h Remove trailing spaces. 2013-01-14 23:16:36 +00:00
InstructionCombining.cpp Preserve fast-math flags after reassociation and commutation. Update test cases 2013-02-07 01:40:15 +00:00
LLVMBuild.txt LLVMBuild: Remove trailing newline, which irked me. 2011-12-12 19:48:00 +00:00
Makefile