[PATCH] D65148: [SimplifyCFG] Bump phi-node-folding-threshold from 2 to 3

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 15 12:33:37 PDT 2019


nikic added a comment.

@lebedev.ri CVP can already determine that the condition is always true:

  define i1 @test(i8 %a, i8 %b) {
    %conv1 = sext i8 %a to i32
    %conv3 = sext i8 %b to i32
    %mul = mul nsw i32 %conv3, %conv1
    %shr = ashr i32 %mul, 7
    br label %split
  
  split:
    %icmp = icmp sgt i32 %shr, -128
    ret i1 %icmp
  }

This becomes `ret i1 true` under `-correlated-propagation`. Unfortunately CVP has some limitations on icmp simplification that makes it only work in cross-BB scenarios. Relaxing those is not entirely straightforward (iirc it had some negative effects due to LVI query order changes).


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D65148





More information about the llvm-commits mailing list