llvm-project/llvm/test/Transforms/CorrelatedValuePropagation
Philip Reames adf0e35308 [LVI] Extend select handling to catch min/max/clamp idioms
Most of this is fairly straight forward. Add handling for min/max via existing matcher utility and ConstantRange routines.  Add handling for clamp by exploiting condition constraints on inputs.  

Note that I'm only handling two constant ranges at this point. It would be reasonable to consider treating overdefined as a full range if the instruction is typed as an integer, but that should be a separate change.

Differential Revision: http://reviews.llvm.org/D17184

llvm-svn: 262085
2016-02-26 22:53:59 +00:00
..
2010-09-02-Trunc.ll
2010-09-26-MergeConstantRange.ll
basic.ll [LVI] Extend select handling to catch min/max/clamp idioms 2016-02-26 22:53:59 +00:00
conflict.ll [LVI] Introduce an intersect operation on lattice values 2016-02-02 03:15:40 +00:00
crash.ll
icmp.ll
non-null.ll Revert "Change memcpy/memset/memmove to have dest and source alignments." 2015-11-19 05:56:52 +00:00
range.ll [LVI/CVP] Teach LVI about range metadata 2015-10-29 03:57:17 +00:00
select.ll [LVI] Improve select handling to use condition 2016-02-12 00:09:18 +00:00