[PR16756] Add SSAUpdaterBulk.
authorMichael Zolotukhin <mzolotukhin@apple.com>
Mon, 9 Apr 2018 23:37:20 +0000 (23:37 +0000)
committerMichael Zolotukhin <mzolotukhin@apple.com>
Mon, 9 Apr 2018 23:37:20 +0000 (23:37 +0000)
commit52b064f3d3758ce76ab49c0831ef385387ecb3b7
tree43e55513c2fbf9a667dcecb8dd171fae45f2d6ff
parente4ba9044ad226128313b90f439827e89aa7e4ca8
[PR16756] Add SSAUpdaterBulk.

Summary:
SSAUpdater is a bottleneck in a number of passes, and one of the reasons
is that it performs a lot of unnecessary computations (DT/IDF) over and
over again. This patch adds a new SSAUpdaterBulk that uses existing DT
and avoids recomputing IDF when possible.

Reviewers: dberlin, davide, MatzeB

Subscribers: llvm-commits, hiraditya

Differential Revision: https://reviews.llvm.org/D44282

llvm-svn: 329643
llvm/include/llvm/Transforms/Utils/SSAUpdaterBulk.h [new file with mode: 0644]
llvm/lib/Transforms/Utils/CMakeLists.txt
llvm/lib/Transforms/Utils/SSAUpdaterBulk.cpp [new file with mode: 0644]
llvm/unittests/Transforms/Utils/CMakeLists.txt
llvm/unittests/Transforms/Utils/SSAUpdaterBulk.cpp [new file with mode: 0644]