llvm-project/llvm/lib/Transforms/InstCombine
Sanjay Patel d640641a61 [InstCombine] add folds for icmp (smin X, Y), X
Min/max canonicalization (r287585) exposes the fact that we're missing combines for min/max patterns. 
This patch won't solve the example that was attached to that thread, so something else still needs fixing.

The line between InstCombine and InstSimplify gets blurry here because sometimes the icmp instruction that
we want to fold to already exists, but sometimes it's the swapped form of what we want.

Corresponding changes for smax/umin/umax to follow.

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

llvm-svn: 289855
2016-12-15 19:13:37 +00:00
..
CMakeLists.txt [CMake] NFC. Updating CMake dependency specifications 2016-11-17 04:36:50 +00:00
InstCombineAddSub.cpp Remove the AssumptionCache 2016-12-15 03:02:15 +00:00
InstCombineAndOrXor.cpp [InstCombine] New opportunities for FoldAndOfICmp and FoldXorOfICmp 2016-12-15 12:25:13 +00:00
InstCombineCalls.cpp [AVX-512][InstCombine] Add masked scalar FMA intrinsics to SimplifyDemandedVectorElts. 2016-12-15 03:49:45 +00:00
InstCombineCasts.cpp Replace APFloatBase static fltSemantics data members with getter functions 2016-12-14 11:57:17 +00:00
InstCombineCompares.cpp [InstCombine] add folds for icmp (smin X, Y), X 2016-12-15 19:13:37 +00:00
InstCombineInternal.h [InstCombine] New opportunities for FoldAndOfICmp and FoldXorOfICmp 2016-12-15 12:25:13 +00:00
InstCombineLoadStoreAlloca.cpp Remove the AssumptionCache 2016-12-15 03:02:15 +00:00
InstCombineMulDivRem.cpp Remove the AssumptionCache 2016-12-15 03:02:15 +00:00
InstCombinePHI.cpp Remove the AssumptionCache 2016-12-15 03:02:15 +00:00
InstCombineSelect.cpp Remove the AssumptionCache 2016-12-15 03:02:15 +00:00
InstCombineShifts.cpp Remove the AssumptionCache 2016-12-15 03:02:15 +00:00
InstCombineSimplifyDemanded.cpp [AVX-512][InstCombine] Add masked scalar FMA intrinsics to SimplifyDemandedVectorElts. 2016-12-15 03:49:45 +00:00
InstCombineVectorOps.cpp Remove the AssumptionCache 2016-12-15 03:02:15 +00:00
InstructionCombining.cpp Remove the AssumptionCache 2016-12-15 03:02:15 +00:00
LLVMBuild.txt Update libdeps since TLI was moved from Target to Analysis in r226078. 2015-01-15 05:21:00 +00:00