diff options
author | Jessica Paquette <jpaquette@apple.com> | 2017-03-23 21:27:38 +0000 |
---|---|---|
committer | Jessica Paquette <jpaquette@apple.com> | 2017-03-23 21:27:38 +0000 |
commit | acffa28c6396dcf1e86232024f189db742f63770 (patch) | |
tree | 0b756f7a085c0e682c79c7fa217fe8054a222cd9 /llvm/lib/DebugInfo/CodeView/RecordSerialization.cpp | |
parent | 1240bd31e98ecab697c55b7d3b649e78b1c61759 (diff) | |
download | bcm5719-llvm-acffa28c6396dcf1e86232024f189db742f63770.tar.gz bcm5719-llvm-acffa28c6396dcf1e86232024f189db742f63770.zip |
[Outliner] Fix compile-time overhead for candidate choice
The old candidate collection method in the outliner caused some very large
regressions in compile time on large tests. For MultiSource/Benchmarks/7zip it
caused a 284.07 s or 1156% increase in compile time. On average, using the
SingleSource/MultiSource tests, it caused an average increase of 8 seconds in
compile time (something like 1000%).
This commit replaces that candidate collection method with a new one which
only visits each node in the tree once. This reduces the worst compile time
increase (still 7zip) to a 0.542 s overhead (22%) and the average compile time
increase on SingleSource and MultiSource to 0.018 s (4%).
llvm-svn: 298648
Diffstat (limited to 'llvm/lib/DebugInfo/CodeView/RecordSerialization.cpp')
0 files changed, 0 insertions, 0 deletions