llvm-project/llvm/lib/Transforms/InstCombine
Sanjay Patel 53c5c3d65d [InstCombine] add nsw/nuw X, signbit --> or X, signbit
Changing to 'or' (rather than 'xor' when no wrapping flags are set)
allows icmp simplifies to happen as expected.

Differential Revision: https://reviews.llvm.org/D29729

llvm-svn: 295574
2017-02-18 22:20:09 +00:00
..
CMakeLists.txt [CMake] NFC. Updating CMake dependency specifications 2016-11-17 04:36:50 +00:00
InstCombineAddSub.cpp [InstCombine] add nsw/nuw X, signbit --> or X, signbit 2017-02-18 22:20:09 +00:00
InstCombineAndOrXor.cpp [InstCombine] Fold ((C1 OP zext(X)) & C2) -> zext((C1 OP X) & C2) 2017-01-17 18:08:06 +00:00
InstCombineCalls.cpp InstCombine: Canonicalize fast fmuladd to fmul + fadd 2017-02-16 18:46:24 +00:00
InstCombineCasts.cpp fix formatting; NFC 2017-01-31 17:25:42 +00:00
InstCombineCompares.cpp [InstCombine] fold icmp sgt/slt (add nsw X, C2), C --> icmp sgt/slt X, (C - C2) 2017-02-12 16:40:30 +00:00
InstCombineInternal.h Fix invalid addrspacecast due to combining alloca with global var 2017-02-10 21:46:07 +00:00
InstCombineLoadStoreAlloca.cpp [InstCombine] Move class into anonymous namespace. NFC. 2017-02-10 22:26:35 +00:00
InstCombineMulDivRem.cpp [InstCombine] add a wrapper for a common pair of transforms; NFCI 2017-01-10 23:49:07 +00:00
InstCombinePHI.cpp fix formatting; NFC 2017-01-31 17:25:42 +00:00
InstCombineSelect.cpp Use InstCombine's builder in foldSelectCttzCtlz instead of creating a new one. 2017-01-24 17:48:25 +00:00
InstCombineShifts.cpp [InstCombine] allow (X * C2) << C1 --> X * (C2 << C1) for vectors 2017-02-09 23:13:04 +00:00
InstCombineSimplifyDemanded.cpp [AVX-512][InstCombine] Teach InstCombine to optimize 512-bit packss/packus intrinsics like it does 128/256-bit. 2017-02-16 07:35:23 +00:00
InstCombineVectorOps.cpp InstCombine: fix extraction when performing vector/array punning 2017-02-17 07:36:03 +00:00
InstructionCombining.cpp [InstCombine] Make max size array combine a tunable. 2017-02-07 17:56:50 +00:00
LLVMBuild.txt Update libdeps since TLI was moved from Target to Analysis in r226078. 2015-01-15 05:21:00 +00:00