[PATCH] D61075: [CodeGenPrepare] delay instruction deletion for efficiency

Sanjay Patel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 24 09:01:06 PDT 2019


spatel created this revision.
spatel added reviewers: yrouban, reames, tejohnson, xur, Carrot, skatkov.
Herald added subscribers: hiraditya, mcrosier.
Herald added a project: LLVM.

This is no-outwardly-visible-functional-change-intended: the IR output at the end of CGP should always be identical to before. This should improve speed of CGP though. I don't have examples where this is a real problem, so I'm requesting confirmation of that theory from reviewers.

We were restarting the iterator loops when doing the overflow intrinsic transforms by marking the dominator tree for update. That was done to prevent iterating over a removed instruction. But we can postpone the deletion using the existing "RemovedInsts" structure, and that means we don't need to update the DT.

See post-commit thread for rL354298 <https://reviews.llvm.org/rL354298> for more details:
http://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20190422/646276.html


https://reviews.llvm.org/D61075

Files:
  llvm/lib/CodeGen/CodeGenPrepare.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D61075.196464.patch
Type: text/x-patch
Size: 3926 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190424/6b775251/attachment.bin>


More information about the llvm-commits mailing list