[llvm-bugs] [Bug 25280] New: Long compile times, high memory usage for function containing large number of inlined functions
via llvm-bugs
llvm-bugs at lists.llvm.org
Wed Oct 21 19:20:17 PDT 2015
https://llvm.org/bugs/show_bug.cgi?id=25280
Bug ID: 25280
Summary: Long compile times, high memory usage for function
containing large number of inlined functions
Product: clang
Version: 3.6
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: C++11
Assignee: unassignedclangbugs at nondot.org
Reporter: chris.schaf at verizon.net
CC: dgregor at apple.com, llvm-bugs at lists.llvm.org
Classification: Unclassified
I have a function (obj_scan) containing a large computed goto table that calls
a lot of small functions (obj_scan_helper<...>). The small functions get
inlined in the larger one and the file takes 25 min and 12G to compile.
If compiled with -fno-inline it takes 30 seconds to compile.
The top time consuming passes are:
... Pass execution timing report ...
===-------------------------------------------------------------------------===
Total Execution Time: 1261.3373 seconds (1262.7082 wall clock)
---User Time--- --System Time-- --User+System-- ---Wall Time--- ---
Name ---
429.6477 ( 35.0%) 0.0040 ( 0.0%) 429.6517 ( 34.1%) 429.8509 ( 34.0%)
Virtual Register Rewriter
241.7193 ( 19.7%) 0.5819 ( 1.8%) 242.3012 ( 19.2%) 242.6868 ( 19.2%)
Debug Variable Analysis
113.4798 ( 9.2%) 0.0390 ( 0.1%) 113.5187 ( 9.0%) 113.7074 ( 9.0%)
Global Value Numbering
65.2541 ( 5.3%) 21.0698 ( 65.1%) 86.3239 ( 6.8%) 86.3884 ( 6.8%) X86
Assembly / Object Emitter
41.2397 ( 3.4%) 2.9026 ( 9.0%) 44.1423 ( 3.5%) 44.2051 ( 3.5%) X86
DAG->DAG Instruction Selection
41.4487 ( 3.4%) 1.4438 ( 4.5%) 42.8925 ( 3.4%) 42.9269 ( 3.4%)
Combine redundant instructions
34.6877 ( 2.8%) 0.7769 ( 2.4%) 35.4646 ( 2.8%) 35.4935 ( 2.8%)
Combine redundant instructions
32.9990 ( 2.7%) 0.6099 ( 1.9%) 33.6089 ( 2.7%) 33.6429 ( 2.7%)
Combine redundant instructions
21.5297 ( 1.8%) 0.7679 ( 2.4%) 22.2976 ( 1.8%) 22.3165 ( 1.8%)
Combine redundant instructions
20.9568 ( 1.7%) 0.7549 ( 2.3%) 21.7117 ( 1.7%) 21.7295 ( 1.7%)
Combine redundant instructions
20.7479 ( 1.7%) 0.4879 ( 1.5%) 21.2358 ( 1.7%) 21.2600 ( 1.7%)
Combine redundant instructions
12.8680 ( 1.0%) 0.0030 ( 0.0%) 12.8710 ( 1.0%) 12.8740 ( 1.0%)
Module Verifier
12.8340 ( 1.0%) 0.0000 ( 0.0%) 12.8340 ( 1.0%) 12.8522 ( 1.0%)
CodeGen Prepare
12.6951 ( 1.0%) 0.0040 ( 0.0%) 12.6991 ( 1.0%) 12.7133 ( 1.0%)
Module Verifier
10.3014 ( 0.8%) 0.0010 ( 0.0%) 10.3024 ( 0.8%) 10.3096 ( 0.8%)
Eliminate PHI nodes for register allocation
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20151022/a058f90d/attachment.html>
More information about the llvm-bugs
mailing list