diff options
author | Reid Kleckner <rnk@google.com> | 2019-01-25 19:18:40 +0000 |
---|---|---|
committer | Reid Kleckner <rnk@google.com> | 2019-01-25 19:18:40 +0000 |
commit | f09c19c896e40fdc6e47491e1031e7de6eac7a0e (patch) | |
tree | 676f65b3f7a7cdb489f581b02935b118b555d483 /llvm/lib/CodeGen/MachineBlockPlacement.cpp | |
parent | 09197fac59f165ca81ae5956a56c970abdeb4d2a (diff) | |
download | bcm5719-llvm-f09c19c896e40fdc6e47491e1031e7de6eac7a0e.tar.gz bcm5719-llvm-f09c19c896e40fdc6e47491e1031e7de6eac7a0e.zip |
[CodeGen] Implement isTriviallyRecursive with StmtVisitor instead of RecursiveASTVisitor
This code doesn't need to traverse types, lambdas, template arguments,
etc to detect trivial recursion. We can do a basic statement traversal
instead. This reduces the time spent compiling CodeGenModule.cpp, the
object file size (mostly reduced debug info), and the final executable
size by a small amount. I measured the exe mostly to check how much of
the overhead is from debug info, object file section headers, etc, vs
actual code.
metric | before | after | diff
time (s) | 47.4 | 38.5 | -8.9
obj (kb) | 12888 | 12012 | -876
exe (kb) | 86072 | 85996 | -76
llvm-svn: 352232
Diffstat (limited to 'llvm/lib/CodeGen/MachineBlockPlacement.cpp')
0 files changed, 0 insertions, 0 deletions