Revert "[InstSimplify] Remove select ?, undef, X -> X and select ?, X, undef...
Revert "[InstSimplify] Remove select ?, undef, X -> X and select ?, X, undef -> X transforms" and subsequent patches This reverts most of the following patches due to reports of miscompiles. I've left the added test cases with comments updated to be FIXMEs. 1cf6f210 [IR] Disable select ? C : undef -> C fold in ConstantFoldSelectInstruction unless we know C isn't poison. 469da663 [InstSimplify] Re-enable select ?, undef, X -> X transform when X is provably not poison 122b0640 [InstSimplify] Don't fold vectors of partial undef in SimplifySelectInst if the non-undef element value might produce poison ac0af12e [InstSimplify] Add test cases for opportunities to fold select ?, X, undef -> X when we can prove X isn't poison 9b1e9532 [InstSimplify] Remove select ?, undef, X -> X and select ?, X, undef -> X transforms
Loading