[PATCH] D84493: [InstCombine] Disable branch predicate canonicalization

Roman Lebedev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 24 04:35:11 PDT 2020


lebedev.ri added a comment.

So in other words, instead of paying the price of recreating domtrees after instcombine,
we'll just shift the transforms to some other pass that already causes domtrees to be recreated, correct?

In D84493#2171811 <https://reviews.llvm.org/D84493#2171811>, @yrouban wrote:

> In D84493#2171571 <https://reviews.llvm.org/D84493#2171571>, @lebedev.ri wrote:
>
> >
>
>
> Thank you for pointing this out. I will try changing canonicalizeICmpPredicate(), canFreelyInvertAllUsersOf().




> In D84493#2171571 <https://reviews.llvm.org/D84493#2171571>, @lebedev.ri wrote:
> 
>> Was the other proper solution of either updating PDT, or making it order-insensitive explored and turned out to be impossible?
> 
> 
> Nobody proposed a good solution with a PDT calculation fix to make it insensitive to the branch order. PDT could not be updated properly either.



In D81089#2088014 <https://reviews.llvm.org/D81089#2088014>, @kuhar wrote:

> <..> you have to chose some arbitrary way of selecting a fake-entry node from nodes in an scc. Right now this order is whatever children or inverse_children return, but could be based on the order of blocks in a function instead.



Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D84493





More information about the llvm-commits mailing list