Files
clang-p2996/llvm/test/Transforms/InstCombine
David Majnemer 468f670021 [InstCombine] Don't miscompile select to poison
If we have (select a, b, c), it is sometimes valid to simplify this to a
single select operand.  However, doing so is only valid if the
computation doesn't inject poison into the computation.

It might be helpful to consider the following example:
  (select (icmp ne %i, INT_MAX), (add nsw %i, 1), INT_MIN)

The select is equivalent to (add %i, 1) but not (add nsw %i, 1).

Self hosting on x86_64 revealed that this occurs very, very rarely so
bailing out is hopefully pretty reasonable.

llvm-svn: 239215
2015-06-06 02:30:43 +00:00
..
2014-06-02 21:23:54 +00:00
2014-05-27 16:54:33 +00:00
2014-11-04 05:17:58 +00:00
2014-10-21 23:00:20 +00:00
2015-01-06 23:00:33 +00:00
2014-07-09 17:49:58 +00:00
2015-06-05 18:04:42 +00:00
2014-06-02 22:01:04 +00:00
2014-06-02 22:01:04 +00:00
2015-05-11 05:33:27 +00:00
2015-04-03 20:56:24 +00:00
2014-06-02 22:01:04 +00:00

This directory contains test cases for the instcombine transformation.  The
dated tests are actual bug tests, whereas the named tests are used to test
for features that the this pass should be capable of performing.