[PATCH] D76153: [SimplifyCFG] try branch-to-branch simplification sooner

Juneyoung Lee via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Mar 14 10:11:22 PDT 2020


aqjune added a comment.

Freezing arguments will work if whole expressions are purely relying on function arguments. This can be done by a cascade of transformations like `freeze(icmp p, q) -> icmp (freeze p), (freeze q)` and `freeze (bop x y) -> bop (freeze x) (freeze y)` (where `bop` is guaranteed to return non-undef/poison if both operands are non-undef/poison). 
If a value `x` is never undef or poison, `freeze x` can be optimized to `x`. I have a few patches which is under reviewed for this direction: D76010 <https://reviews.llvm.org/D76010> and D75808 <https://reviews.llvm.org/D75808>.


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

https://reviews.llvm.org/D76153





More information about the llvm-commits mailing list