[PATCH] D142551: [InstCombine] Teach isDeadPHICycle to look through multiple uses

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jan 26 13:36:36 PST 2023


nikic added a comment.

Huh, this made compile-time impact even worse: https://llvm-compile-time-tracker.com/compare.php?from=051bcd4f310bbf97781b9ccc95ae2754224a75b2&to=bd36ced96eabd9b4e028778d058dcb56bb6d86ba&stat=instructions

Apparently `wouldInstructionBeTriviallyDead` is that expensive. Using `!isa<PHINode>(I) && !isa<BinaryOperator>(I) && !isa<GetElementPtrInst>(I))` in keeping with the existing code brings it down to this: http://llvm-compile-time-tracker.com/compare.php?from=051bcd4f310bbf97781b9ccc95ae2754224a75b2&to=abae5ca4dc70078006e4e26095215a732be1f330&stat=instructions%3Au

This is still not as free as I had hoped :/


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D142551



More information about the llvm-commits mailing list