llvm-6502/lib/Transforms/InstCombine
Duncan Sands 37bf92b523 Add a generic expansion transform: A op (B op' C) -> (A op B) op' (A op C)
if both A op B and A op C simplify.  This fires fairly often but doesn't
make that much difference.  On gcc-as-one-file it removes two "and"s and
turns one branch into a select.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122399 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-22 13:36:08 +00:00
..
CMakeLists.txt Removed a bunch of unnecessary target_link_libraries. 2010-09-28 22:39:14 +00:00
InstCombine.h Add a generic expansion transform: A op (B op' C) -> (A op B) op' (A op C) 2010-12-22 13:36:08 +00:00
InstCombineAddSub.cpp Add a generic expansion transform: A op (B op' C) -> (A op B) op' (A op C) 2010-12-22 13:36:08 +00:00
InstCombineAndOrXor.cpp Add a generic expansion transform: A op (B op' C) -> (A op B) op' (A op C) 2010-12-22 13:36:08 +00:00
InstCombineCalls.cpp fix PR8807 by making transformConstExprCastCall aware of byval arguments. 2010-12-20 08:36:38 +00:00
InstCombineCasts.cpp Whitespace fixes. No functionality change. 2010-12-17 23:27:41 +00:00
InstCombineCompares.cpp recognize an unsigned add with overflow idiom into uadd. 2010-12-19 19:37:52 +00:00
InstCombineLoadStoreAlloca.cpp Fix a case where instcombine was stripping metadata (and alignment) 2010-10-25 16:16:27 +00:00
InstCombineMulDivRem.cpp Add a generic expansion transform: A op (B op' C) -> (A op B) op' (A op C) 2010-12-22 13:36:08 +00:00
InstCombinePHI.cpp Teach InstructionSimplify about phi nodes. I chose to have it simply 2010-11-14 13:30:18 +00:00
InstCombineSelect.cpp Generalize the and-icmp-select instcombine further by allowing selects of the form 2010-12-11 10:49:22 +00:00
InstCombineShifts.cpp Really check that the bits that will become zero are actually already zero 2010-12-09 02:52:17 +00:00
InstCombineSimplifyDemanded.cpp PR5207: Change APInt methods trunc(), sext(), zext(), sextOrTrunc() and 2010-12-07 08:25:19 +00:00
InstCombineVectorOps.cpp PR5207: Rename overloaded APInt methods set(), clear(), flip() to 2010-12-01 08:53:58 +00:00
InstCombineWorklist.h I got tired of VISIBILITY_HIDDEN colliding with the gcc enum. Rename it 2010-05-11 20:16:09 +00:00
InstructionCombining.cpp Add a generic expansion transform: A op (B op' C) -> (A op B) op' (A op C) 2010-12-22 13:36:08 +00:00
Makefile make -fno-rtti the default unless a directory builds with REQUIRES_RTTI. 2010-01-24 20:43:08 +00:00