summaryrefslogtreecommitdiff
path: root/clang/lib/Sema/SemaInit.cpp
diff options
context:
space:
mode:
authorTom Stellard <tstellar@redhat.com>2018-11-20 03:42:43 +0000
committerTom Stellard <tstellar@redhat.com>2018-11-20 03:42:43 +0000
commit600a37517c80a2303073636afc7161cc33306e72 (patch)
tree0019bb3259d85ce1489ada74a6772fccb06c261f /clang/lib/Sema/SemaInit.cpp
parentfbf89ef761b05bb6663630083ac85e4d906c8eb9 (diff)
Merging r345353:
------------------------------------------------------------------------ r345353 | sima | 2018-10-25 18:28:36 -0700 (Thu, 25 Oct 2018) | 21 lines Teach the DominatorTree fallback to recalculation when applying updates to speedup JT (PR37929) Summary: This patch makes the dominatortree recalculate when applying updates with the size of the update vector larger than a threshold. Directly applying updates is usually slower than recalculating the whole domtree in this case. This patch fixes an issue which causes JT running slowly on some inputs. In bug 37929, the dominator tree is trying to apply 19,000+ updates several times, which takes several minutes. After this patch, the time used by DT.applyUpdates: | Input | Before (s) | After (s) | Speedup | | the 2nd Reproducer in 37929 | 297 | 0.15 | 1980x | | clang-5.0.0.0.bc | 9.7 | 4.3 | 2.26x | | clang-5.0.0.4.bc | 11.6 | 2.6 | 4.46x | Reviewers: kuhar, brzycki, trentxintong, davide, dmgreen, grosser Reviewed By: kuhar, brzycki Subscribers: kristina, llvm-commits Differential Revision: https://reviews.llvm.org/D53245 ------------------------------------------------------------------------
Diffstat (limited to 'clang/lib/Sema/SemaInit.cpp')
0 files changed, 0 insertions, 0 deletions