[PATCH] D72396: [InstCombine] fold zext of masked bit set/clear

Sanjay Patel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 8 10:11:53 PST 2020


spatel added a comment.

Thanks all for the reductions!

>From what I can see so far, this patch is exposing an existing bug. We do this in instcombine independently of this patch:

  $ cat sel.ll 
  define i1 @poison_sel(i1 %cmp1, i1 %t) {
    %s = select i1 %cmp1, i1 %t, i1 true
    ret i1 %s
  }
  $ opt -instcombine sel.ll -S
  define i1 @poison_sel(i1 %cmp1, i1 %t) {
    %not.cmp1 = xor i1 %cmp1, true
    %s = or i1 %not.cmp1, %t
    ret i1 %s
  }

https://rise4fun.com/Alive/0uez
ERROR: Target is more poisonous than Source for i1 %s


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

https://reviews.llvm.org/D72396





More information about the llvm-commits mailing list