[PATCH] D152082: [ValueTracking] getUnderlyingObject() look through phi.

Joshua Cao via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Jun 4 02:02:17 PDT 2023


caojoshua added a comment.

In D152082#4393701 <https://reviews.llvm.org/D152082#4393701>, @nikic wrote:

> If you upload the base revision I can check, but I'm pretty confident that this is not viable from a compile-time perspective. getUnderlyingObject() is very performance critical, and we rely on the fact that this operation is "essentially free". We have a separate getUnderlyingObjects() function that can recurse though selects and phis.

Please check if you are able to. I have uploaded to https://github.com/caojoshua/llvm-project/tree/underlyingphi.

My hope is that with the default `MaxLookup = 6`, the compile time does not see significant impact. I just uploaded some new changes that hopefully makes compile time better.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D152082



More information about the llvm-commits mailing list