summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaDecl.cpp
diff options
context:
space:
mode:
authorChandler Carruth <chandlerc@gmail.com>2017-05-25 07:15:09 +0000
committerChandler Carruth <chandlerc@gmail.com>2017-05-25 07:15:09 +0000
commitf4d62c480c314f6514c3b54d69bb7eb0c0b69d5a (patch)
treeac2d7151c216f837e6c29188dae75be99e997150 /clang/lib/Sema/SemaDecl.cpp
parentc1e4611754176a7bac0b161566b7981bca33fa0b (diff)
downloadbcm5719-llvm-f4d62c480c314f6514c3b54d69bb7eb0c0b69d5a.tar.gz
bcm5719-llvm-f4d62c480c314f6514c3b54d69bb7eb0c0b69d5a.zip
[PM] Teach the PGO instrumentation pasess to run GlobalDCE before
instrumenting code. This is important in the new pass manager. The old pass manager's inliner has a small DCE routine embedded within it. The new pass manager relies on the actual GlobalDCE pass for this. Without this patch, instrumentation profiling with the new PM results in massive code bloat in the object files because the instrumentation itself ends up preventing DCE from working to remove the code. We should probably change the instrumentation (and/or DCE) so that we can eliminate dead code even if instrumented, but we shouldn't even spend the time generating instrumentation for that code so this still seems like a good patch. Differential Revision: https://reviews.llvm.org/D33535 llvm-svn: 303845
Diffstat (limited to 'clang/lib/Sema/SemaDecl.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud