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

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


caojoshua abandoned this revision.
caojoshua added a comment.

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

> Results: https://llvm-compile-time-tracker.com/?config=NewPM-O3&stat=instructions%3Au&branch=nikic/perf/underlyingphi
>
> As expected, a major regression. I've left some suggestions for possible improvements.

The NFC patch itself creates a regression. I don't think the recursion is an issue, since I see on my local build the tail recursion is eliminated. I suspect removing the std::function might be sufficient to eliminate regression.

For the main patch, it looks unrealistic to eliminate compile-time regression. I think this functionality could be useful for some callers, maybe it would be good to create a different code path that does not touch the existing getUnderlyingObject.


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