[PATCH] D83360: [InstSimplify] Remove select ?, undef, X -> X and select ?, X, undef -> X

Sanjay Patel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 8 04:47:04 PDT 2020


spatel added a comment.

In D83360#2138392 <https://reviews.llvm.org/D83360#2138392>, @lebedev.ri wrote:

> In D83360#2138386 <https://reviews.llvm.org/D83360#2138386>, @nlopes wrote:
>
> > Here's an end-to-end miscompilation: https://bugs.llvm.org/show_bug.cgi?id=31633
>
>
> Sure, but we still need to have a test with comment that it should not be folded, referencing all this.


Yes - we need ~4 tests ( {trueval/falseval} * {scalar/vector} ) to ensure that the transform doesn't get mistakenly re-added. Also, there's a clang test that is going to fail with this change:
clang/test/CodeGen/arm-mve-intrinsics/dup.c
That file tried to be minimally dependent on opt, but still used -early-cse which calls instsimplify for analysis.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D83360/new/

https://reviews.llvm.org/D83360





More information about the llvm-commits mailing list