[LLVMdev] [cfe-dev] costing optimisations
john skaller
skaller at users.sourceforge.net
Fri Nov 23 07:46:06 PST 2012
On 24/11/2012, at 1:44 AM, Benjamin Kramer wrote:
> You can also pass -ftime-report to clang to get a breakdown on where the compile time goes.
Here we go:
/usr/local/bin/clang++ -c -fno-common -fno-strict-aliasing -std=c++11 -fPIC -Wall -Wfatal-errors -Wno-invalid-offsetof -Wno-logical-op-parentheses -Wno-bitwise-op-parentheses -Wno-parentheses-equality -Wno-return-stack-address -Wno-tautological-compare -Wno-return-type-c-linkage -Wno-unused-variable -fPIC -O2 -ftime-report -DTARGET_BUILD '-Ibuild/release/lib/rtl' '-Ibuild/release/config/target' -Ilib/rtl '/Users/johnskaller/.felix/cache/text/Users/johnskaller/felix/test/regress/rt/tuple-02.cpp' -o '/Users/johnskaller/.felix/cache/text/Users/johnskaller/felix/test/regress/rt/tuple-02.os'
===-------------------------------------------------------------------------===
Register Allocation
===-------------------------------------------------------------------------===
Total Execution Time: 0.2010 seconds (0.2010 wall clock)
---User Time--- --System Time-- --User+System-- ---Wall Time--- --- Name ---
0.1381 ( 70.9%) 0.0049 ( 78.5%) 0.1431 ( 71.2%) 0.1431 ( 71.2%) Global Splitting
0.0256 ( 13.2%) 0.0003 ( 4.3%) 0.0259 ( 12.9%) 0.0259 ( 12.9%) Spiller
0.0198 ( 10.2%) 0.0010 ( 15.9%) 0.0208 ( 10.3%) 0.0209 ( 10.4%) Evict
0.0111 ( 5.7%) 0.0001 ( 1.3%) 0.0112 ( 5.6%) 0.0112 ( 5.6%) Seed Live Regs
0.0000 ( 0.0%) 0.0000 ( 0.0%) 0.0000 ( 0.0%) 0.0000 ( 0.0%) Local Splitting
0.1947 (100.0%) 0.0063 (100.0%) 0.2010 (100.0%) 0.2010 (100.0%) Total
===-------------------------------------------------------------------------===
Instruction Selection and Scheduling
===-------------------------------------------------------------------------===
Total Execution Time: 3.1943 seconds (3.1915 wall clock)
---User Time--- --System Time-- --User+System-- ---Wall Time--- --- Name ---
0.6484 ( 20.7%) 0.0072 ( 11.4%) 0.6556 ( 20.5%) 0.6549 ( 20.5%) Instruction Selection
0.6157 ( 19.7%) 0.0085 ( 13.5%) 0.6241 ( 19.5%) 0.6239 ( 19.5%) Instruction Scheduling
0.4356 ( 13.9%) 0.0074 ( 11.9%) 0.4430 ( 13.9%) 0.4423 ( 13.9%) Instruction Creation
0.3199 ( 10.2%) 0.0056 ( 9.0%) 0.3255 ( 10.2%) 0.3251 ( 10.2%) DAG Legalization
0.3047 ( 9.7%) 0.0055 ( 8.8%) 0.3103 ( 9.7%) 0.3100 ( 9.7%) Type Legalization
0.2613 ( 8.3%) 0.0055 ( 8.8%) 0.2668 ( 8.4%) 0.2664 ( 8.3%) Vector Legalization
0.2454 ( 7.8%) 0.0100 ( 15.9%) 0.2553 ( 8.0%) 0.2559 ( 8.0%) DAG Combining 1
0.1322 ( 4.2%) 0.0029 ( 4.7%) 0.1351 ( 4.2%) 0.1349 ( 4.2%) DAG Combining after legalize types
0.1285 ( 4.1%) 0.0051 ( 8.1%) 0.1336 ( 4.2%) 0.1332 ( 4.2%) DAG Combining 2
0.0400 ( 1.3%) 0.0049 ( 7.9%) 0.0449 ( 1.4%) 0.0449 ( 1.4%) Instruction Scheduling Cleanup
3.1317 (100.0%) 0.0626 (100.0%) 3.1943 (100.0%) 3.1915 (100.0%) Total
===-------------------------------------------------------------------------===
DWARF Emission
===-------------------------------------------------------------------------===
Total Execution Time: 0.0425 seconds (0.0425 wall clock)
---User Time--- --System Time-- --User+System-- ---Wall Time--- --- Name ---
0.0283 ( 67.7%) 0.0005 ( 83.5%) 0.0289 ( 67.9%) 0.0289 ( 67.9%) DWARF Exception Writer
0.0135 ( 32.3%) 0.0001 ( 16.5%) 0.0136 ( 32.1%) 0.0136 ( 32.1%) DWARF Debug Writer
0.0419 (100.0%) 0.0006 (100.0%) 0.0425 (100.0%) 0.0425 (100.0%) Total
===-------------------------------------------------------------------------===
... Pass execution timing report ...
===-------------------------------------------------------------------------===
Total Execution Time: 92.0530 seconds (92.0723 wall clock)
---User Time--- --System Time-- --User+System-- ---Wall Time--- --- Name ---
27.5508 ( 30.2%) 0.1963 ( 25.7%) 27.7470 ( 30.1%) 27.7566 ( 30.1%) Value Propagation
26.1573 ( 28.7%) 0.1526 ( 19.9%) 26.3099 ( 28.6%) 26.3122 ( 28.6%) Value Propagation
6.3041 ( 6.9%) 0.0269 ( 3.5%) 6.3310 ( 6.9%) 6.3340 ( 6.9%) Global Value Numbering
5.4471 ( 6.0%) 0.0172 ( 2.3%) 5.4644 ( 5.9%) 5.4648 ( 5.9%) Merge disjoint stack slots
4.6219 ( 5.1%) 0.1389 ( 18.1%) 4.7607 ( 5.2%) 4.7609 ( 5.2%) X86 DAG->DAG Instruction Selection
3.9909 ( 4.4%) 0.0024 ( 0.3%) 3.9933 ( 4.3%) 3.9935 ( 4.3%) Eliminate PHI nodes for register allocation
3.1346 ( 3.4%) 0.0083 ( 1.1%) 3.1429 ( 3.4%) 3.1431 ( 3.4%) Combine redundant instructions
1.4523 ( 1.6%) 0.0048 ( 0.6%) 1.4570 ( 1.6%) 1.4580 ( 1.6%) Combine redundant instructions
1.2421 ( 1.4%) 0.0092 ( 1.2%) 1.2513 ( 1.4%) 1.2516 ( 1.4%) Function Integration/Inlining
0.9490 ( 1.0%) 0.0034 ( 0.4%) 0.9523 ( 1.0%) 0.9524 ( 1.0%) Combine redundant instructions
0.9009 ( 1.0%) 0.0008 ( 0.1%) 0.9017 ( 1.0%) 0.9017 ( 1.0%) Dead Store Elimination
0.7361 ( 0.8%) 0.0009 ( 0.1%) 0.7371 ( 0.8%) 0.7372 ( 0.8%) Simple Register Coalescing
0.5746 ( 0.6%) 0.0649 ( 8.5%) 0.6395 ( 0.7%) 0.6395 ( 0.7%) Lazy Value Information Analysis
0.5550 ( 0.6%) 0.0587 ( 7.7%) 0.6137 ( 0.7%) 0.6137 ( 0.7%) Lazy Value Information Analysis
0.5214 ( 0.6%) 0.0032 ( 0.4%) 0.5246 ( 0.6%) 0.5245 ( 0.6%) Combine redundant instructions
0.4474 ( 0.5%) 0.0086 ( 1.1%) 0.4560 ( 0.5%) 0.4560 ( 0.5%) Greedy Register Allocator
0.4033 ( 0.4%) 0.0009 ( 0.1%) 0.4043 ( 0.4%) 0.4044 ( 0.4%) Control Flow Optimizer
0.3810 ( 0.4%) 0.0013 ( 0.2%) 0.3822 ( 0.4%) 0.3825 ( 0.4%) Early CSE
0.3772 ( 0.4%) 0.0020 ( 0.3%) 0.3791 ( 0.4%) 0.3792 ( 0.4%) Live Variable Analysis
0.3284 ( 0.4%) 0.0017 ( 0.2%) 0.3301 ( 0.4%) 0.3302 ( 0.4%) Combine redundant instructions
0.2968 ( 0.3%) 0.0007 ( 0.1%) 0.2975 ( 0.3%) 0.2976 ( 0.3%) Jump Threading
0.2808 ( 0.3%) 0.0011 ( 0.1%) 0.2819 ( 0.3%) 0.2819 ( 0.3%) Jump Threading
0.2609 ( 0.3%) 0.0010 ( 0.1%) 0.2619 ( 0.3%) 0.2619 ( 0.3%) Simplify the CFG
0.2379 ( 0.3%) 0.0006 ( 0.1%) 0.2385 ( 0.3%) 0.2385 ( 0.3%) Unroll loops
0.2274 ( 0.2%) 0.0008 ( 0.1%) 0.2282 ( 0.2%) 0.2291 ( 0.2%) Simplify the CFG
0.2019 ( 0.2%) 0.0013 ( 0.2%) 0.2032 ( 0.2%) 0.2033 ( 0.2%) X86 AT&T-Style Assembly Printer
0.1992 ( 0.2%) 0.0003 ( 0.0%) 0.1995 ( 0.2%) 0.1995 ( 0.2%) Machine Common Subexpression Elimination
0.1973 ( 0.2%) 0.0005 ( 0.1%) 0.1978 ( 0.2%) 0.1978 ( 0.2%) Optimize for code generation
0.1587 ( 0.2%) 0.0032 ( 0.4%) 0.1619 ( 0.2%) 0.1619 ( 0.2%) Live Interval Analysis
0.1595 ( 0.2%) 0.0008 ( 0.1%) 0.1603 ( 0.2%) 0.1603 ( 0.2%) Simplify the CFG
0.1477 ( 0.2%) 0.0003 ( 0.0%) 0.1480 ( 0.2%) 0.1480 ( 0.2%) Module Verifier
0.1375 ( 0.2%) 0.0004 ( 0.0%) 0.1379 ( 0.1%) 0.1378 ( 0.1%) Module Verifier
0.1311 ( 0.1%) 0.0016 ( 0.2%) 0.1326 ( 0.1%) 0.1326 ( 0.1%) Sparse Conditional Constant Propagation
0.1102 ( 0.1%) 0.0017 ( 0.2%) 0.1119 ( 0.1%) 0.1119 ( 0.1%) SROA
0.1100 ( 0.1%) 0.0005 ( 0.1%) 0.1105 ( 0.1%) 0.1105 ( 0.1%) Branch Probability Basic Block Placement
0.1024 ( 0.1%) 0.0010 ( 0.1%) 0.1035 ( 0.1%) 0.1035 ( 0.1%) Reassociate expressions
0.1018 ( 0.1%) 0.0007 ( 0.1%) 0.1026 ( 0.1%) 0.1026 ( 0.1%) MemCpy Optimization
0.0966 ( 0.1%) 0.0002 ( 0.0%) 0.0968 ( 0.1%) 0.0968 ( 0.1%) Two-Address instruction pass
0.0912 ( 0.1%) 0.0008 ( 0.1%) 0.0920 ( 0.1%) 0.0921 ( 0.1%) Early CSE
0.0905 ( 0.1%) 0.0001 ( 0.0%) 0.0905 ( 0.1%) 0.0906 ( 0.1%) Virtual Register Rewriter
0.0896 ( 0.1%) 0.0002 ( 0.0%) 0.0898 ( 0.1%) 0.0898 ( 0.1%) Machine code sinking
0.0814 ( 0.1%) 0.0007 ( 0.1%) 0.0821 ( 0.1%) 0.0821 ( 0.1%) Simplify the CFG
0.0743 ( 0.1%) 0.0008 ( 0.1%) 0.0750 ( 0.1%) 0.0751 ( 0.1%) Simplify the CFG
0.0643 ( 0.1%) 0.0002 ( 0.0%) 0.0645 ( 0.1%) 0.0645 ( 0.1%) Machine Copy Propagation Pass
0.0617 ( 0.1%) 0.0016 ( 0.2%) 0.0633 ( 0.1%) 0.0634 ( 0.1%) Dominator Tree Construction
0.0614 ( 0.1%) 0.0007 ( 0.1%) 0.0621 ( 0.1%) 0.0621 ( 0.1%) Module Verifier
0.0559 ( 0.1%) 0.0028 ( 0.4%) 0.0588 ( 0.1%) 0.0588 ( 0.1%) Machine Function Analysis
0.0569 ( 0.1%) 0.0013 ( 0.2%) 0.0582 ( 0.1%) 0.0582 ( 0.1%) Slot index numbering
0.0557 ( 0.1%) 0.0018 ( 0.2%) 0.0575 ( 0.1%) 0.0575 ( 0.1%) Slot index numbering
0.0505 ( 0.1%) 0.0041 ( 0.5%) 0.0546 ( 0.1%) 0.0547 ( 0.1%) Dominator Tree Construction
0.0512 ( 0.1%) 0.0033 ( 0.4%) 0.0545 ( 0.1%) 0.0545 ( 0.1%) Dominator Tree Construction
0.0508 ( 0.1%) 0.0008 ( 0.1%) 0.0516 ( 0.1%) 0.0517 ( 0.1%) Aggressive Dead Code Elimination
0.0491 ( 0.1%) 0.0006 ( 0.1%) 0.0497 ( 0.1%) 0.0497 ( 0.1%) SROA
0.0494 ( 0.1%) 0.0001 ( 0.0%) 0.0495 ( 0.1%) 0.0495 ( 0.1%) Remove dead machine instructions
0.0488 ( 0.1%) 0.0005 ( 0.1%) 0.0494 ( 0.1%) 0.0494 ( 0.1%) Interprocedural Sparse Conditional Constant Propagation
0.0493 ( 0.1%) 0.0001 ( 0.0%) 0.0493 ( 0.1%) 0.0493 ( 0.1%) Calculate spill weights
0.0484 ( 0.1%) 0.0004 ( 0.0%) 0.0488 ( 0.1%) 0.0488 ( 0.1%) Dominator Tree Construction
0.0478 ( 0.1%) 0.0008 ( 0.1%) 0.0487 ( 0.1%) 0.0487 ( 0.1%) Dominator Tree Construction
0.0474 ( 0.1%) 0.0001 ( 0.0%) 0.0475 ( 0.1%) 0.0475 ( 0.1%) Prologue/Epilogue Insertion & Frame Finalization
0.0452 ( 0.0%) 0.0015 ( 0.2%) 0.0466 ( 0.1%) 0.0467 ( 0.1%) Natural Loop Information
0.0359 ( 0.0%) 0.0008 ( 0.1%) 0.0368 ( 0.0%) 0.0368 ( 0.0%) MachineDominator Tree Construction
0.0343 ( 0.0%) 0.0007 ( 0.1%) 0.0351 ( 0.0%) 0.0351 ( 0.0%) MachineDominator Tree Construction
0.0339 ( 0.0%) 0.0003 ( 0.0%) 0.0342 ( 0.0%) 0.0342 ( 0.0%) Execution dependency fix
0.0336 ( 0.0%) 0.0003 ( 0.0%) 0.0339 ( 0.0%) 0.0339 ( 0.0%) Induction Variable Simplification
0.0333 ( 0.0%) 0.0004 ( 0.0%) 0.0337 ( 0.0%) 0.0337 ( 0.0%) Machine Block Frequency Analysis
0.0331 ( 0.0%) 0.0005 ( 0.1%) 0.0337 ( 0.0%) 0.0337 ( 0.0%) MachineDominator Tree Construction
0.0325 ( 0.0%) 0.0001 ( 0.0%) 0.0326 ( 0.0%) 0.0326 ( 0.0%) Branch Probability Analysis
0.0299 ( 0.0%) 0.0001 ( 0.0%) 0.0301 ( 0.0%) 0.0301 ( 0.0%) Natural Loop Information
0.0295 ( 0.0%) 0.0001 ( 0.0%) 0.0297 ( 0.0%) 0.0297 ( 0.0%) Peephole Optimizations
0.0289 ( 0.0%) 0.0001 ( 0.0%) 0.0290 ( 0.0%) 0.0290 ( 0.0%) Natural Loop Information
0.0278 ( 0.0%) 0.0006 ( 0.1%) 0.0284 ( 0.0%) 0.0284 ( 0.0%) Stack Slot Coloring
0.0258 ( 0.0%) 0.0001 ( 0.0%) 0.0259 ( 0.0%) 0.0260 ( 0.0%) Loop Invariant Code Motion
0.0223 ( 0.0%) 0.0008 ( 0.1%) 0.0231 ( 0.0%) 0.0232 ( 0.0%) Dominator Tree Construction
0.0213 ( 0.0%) 0.0012 ( 0.2%) 0.0225 ( 0.0%) 0.0225 ( 0.0%) Dominator Tree Construction
0.0201 ( 0.0%) 0.0002 ( 0.0%) 0.0203 ( 0.0%) 0.0203 ( 0.0%) X86 FP Stackifier
0.0192 ( 0.0%) 0.0001 ( 0.0%) 0.0193 ( 0.0%) 0.0193 ( 0.0%) Dead Global Elimination
0.0173 ( 0.0%) 0.0005 ( 0.1%) 0.0178 ( 0.0%) 0.0177 ( 0.0%) Machine Natural Loop Construction
0.0172 ( 0.0%) 0.0003 ( 0.0%) 0.0174 ( 0.0%) 0.0174 ( 0.0%) Machine Natural Loop Construction
0.0145 ( 0.0%) 0.0007 ( 0.1%) 0.0153 ( 0.0%) 0.0153 ( 0.0%) Remove unused exception handling info
0.0137 ( 0.0%) 0.0006 ( 0.1%) 0.0144 ( 0.0%) 0.0143 ( 0.0%) Deduce function attributes
0.0139 ( 0.0%) 0.0001 ( 0.0%) 0.0140 ( 0.0%) 0.0140 ( 0.0%) Basic CallGraph Construction
0.0131 ( 0.0%) 0.0001 ( 0.0%) 0.0132 ( 0.0%) 0.0132 ( 0.0%) Debug Variable Analysis
0.0121 ( 0.0%) 0.0005 ( 0.1%) 0.0126 ( 0.0%) 0.0126 ( 0.0%) Simplify well-known library calls
0.0122 ( 0.0%) 0.0001 ( 0.0%) 0.0123 ( 0.0%) 0.0123 ( 0.0%) Remove unreachable blocks from the CFG
0.0113 ( 0.0%) 0.0001 ( 0.0%) 0.0114 ( 0.0%) 0.0114 ( 0.0%) Loop Strength Reduction
0.0109 ( 0.0%) 0.0001 ( 0.0%) 0.0109 ( 0.0%) 0.0109 ( 0.0%) Post-RA pseudo instruction expansion pass
0.0096 ( 0.0%) 0.0001 ( 0.0%) 0.0096 ( 0.0%) 0.0096 ( 0.0%) Tail Duplication
0.0091 ( 0.0%) 0.0000 ( 0.0%) 0.0091 ( 0.0%) 0.0091 ( 0.0%) Remove unreachable machine basic blocks
0.0075 ( 0.0%) 0.0001 ( 0.0%) 0.0076 ( 0.0%) 0.0076 ( 0.0%) Tail Duplication
0.0075 ( 0.0%) 0.0001 ( 0.0%) 0.0076 ( 0.0%) 0.0076 ( 0.0%) Loop-Closed SSA Form Pass
0.0075 ( 0.0%) 0.0001 ( 0.0%) 0.0076 ( 0.0%) 0.0076 ( 0.0%) Expand ISel Pseudo-instructions
0.0068 ( 0.0%) 0.0005 ( 0.1%) 0.0073 ( 0.0%) 0.0073 ( 0.0%) Tail Call Elimination
0.0052 ( 0.0%) 0.0008 ( 0.1%) 0.0061 ( 0.0%) 0.0061 ( 0.0%) Memory Dependence Analysis
0.0055 ( 0.0%) 0.0001 ( 0.0%) 0.0056 ( 0.0%) 0.0056 ( 0.0%) Loop-Closed SSA Form Pass
0.0053 ( 0.0%) 0.0002 ( 0.0%) 0.0055 ( 0.0%) 0.0055 ( 0.0%) Bundle Machine CFG Edges
0.0052 ( 0.0%) 0.0003 ( 0.0%) 0.0055 ( 0.0%) 0.0055 ( 0.0%) Canonicalize natural loops
0.0053 ( 0.0%) 0.0001 ( 0.0%) 0.0054 ( 0.0%) 0.0054 ( 0.0%) Bundle Machine CFG Edges
0.0024 ( 0.0%) 0.0028 ( 0.4%) 0.0051 ( 0.0%) 0.0052 ( 0.0%) No Alias Analysis (always returns 'may' alias)
0.0046 ( 0.0%) 0.0000 ( 0.0%) 0.0047 ( 0.0%) 0.0047 ( 0.0%) Optimize machine instruction PHIs
0.0040 ( 0.0%) 0.0005 ( 0.1%) 0.0045 ( 0.0%) 0.0045 ( 0.0%) Lower 'expect' Intrinsics
0.0041 ( 0.0%) 0.0000 ( 0.0%) 0.0041 ( 0.0%) 0.0041 ( 0.0%) Induction Variable Users
0.0039 ( 0.0%) 0.0002 ( 0.0%) 0.0041 ( 0.0%) 0.0041 ( 0.0%) Canonicalize natural loops
0.0037 ( 0.0%) 0.0001 ( 0.0%) 0.0037 ( 0.0%) 0.0037 ( 0.0%) Insert stack protectors
0.0033 ( 0.0%) 0.0001 ( 0.0%) 0.0033 ( 0.0%) 0.0033 ( 0.0%) Machine Loop Invariant Code Motion
0.0026 ( 0.0%) 0.0006 ( 0.1%) 0.0033 ( 0.0%) 0.0033 ( 0.0%) Scalar Evolution Analysis
0.0022 ( 0.0%) 0.0007 ( 0.1%) 0.0029 ( 0.0%) 0.0029 ( 0.0%) Memory Dependence Analysis
0.0028 ( 0.0%) 0.0001 ( 0.0%) 0.0029 ( 0.0%) 0.0029 ( 0.0%) Unswitch loops
0.0019 ( 0.0%) 0.0006 ( 0.1%) 0.0026 ( 0.0%) 0.0026 ( 0.0%) Memory Dependence Analysis
0.0023 ( 0.0%) 0.0001 ( 0.0%) 0.0024 ( 0.0%) 0.0024 ( 0.0%) Spill Code Placement Analysis
0.0023 ( 0.0%) 0.0001 ( 0.0%) 0.0024 ( 0.0%) 0.0024 ( 0.0%) Process Implicit Definitions
0.0021 ( 0.0%) 0.0002 ( 0.0%) 0.0023 ( 0.0%) 0.0023 ( 0.0%) Loop-Closed SSA Form Pass
0.0053 ( 0.0%) 0.0002 ( 0.0%) 0.0055 ( 0.0%) 0.0055 ( 0.0%) Bundle Machine CFG Edges
0.0052 ( 0.0%) 0.0003 ( 0.0%) 0.0055 ( 0.0%) 0.0055 ( 0.0%) Canonicalize natural loops
0.0053 ( 0.0%) 0.0001 ( 0.0%) 0.0054 ( 0.0%) 0.0054 ( 0.0%) Bundle Machine CFG Edges
0.0024 ( 0.0%) 0.0028 ( 0.4%) 0.0051 ( 0.0%) 0.0052 ( 0.0%) No Alias Analysis (always returns 'may' alias)
0.0046 ( 0.0%) 0.0000 ( 0.0%) 0.0047 ( 0.0%) 0.0047 ( 0.0%) Optimize machine instruction PHIs
0.0040 ( 0.0%) 0.0005 ( 0.1%) 0.0045 ( 0.0%) 0.0045 ( 0.0%) Lower 'expect' Intrinsics
0.0041 ( 0.0%) 0.0000 ( 0.0%) 0.0041 ( 0.0%) 0.0041 ( 0.0%) Induction Variable Users
0.0039 ( 0.0%) 0.0002 ( 0.0%) 0.0041 ( 0.0%) 0.0041 ( 0.0%) Canonicalize natural loops
0.0037 ( 0.0%) 0.0001 ( 0.0%) 0.0037 ( 0.0%) 0.0037 ( 0.0%) Insert stack protectors
0.0033 ( 0.0%) 0.0001 ( 0.0%) 0.0033 ( 0.0%) 0.0033 ( 0.0%) Machine Loop Invariant Code Motion
0.0026 ( 0.0%) 0.0006 ( 0.1%) 0.0033 ( 0.0%) 0.0033 ( 0.0%) Scalar Evolution Analysis
0.0022 ( 0.0%) 0.0007 ( 0.1%) 0.0029 ( 0.0%) 0.0029 ( 0.0%) Memory Dependence Analysis
0.0028 ( 0.0%) 0.0001 ( 0.0%) 0.0029 ( 0.0%) 0.0029 ( 0.0%) Unswitch loops
0.0019 ( 0.0%) 0.0006 ( 0.1%) 0.0026 ( 0.0%) 0.0026 ( 0.0%) Memory Dependence Analysis
0.0023 ( 0.0%) 0.0001 ( 0.0%) 0.0024 ( 0.0%) 0.0024 ( 0.0%) Spill Code Placement Analysis
0.0023 ( 0.0%) 0.0001 ( 0.0%) 0.0024 ( 0.0%) 0.0024 ( 0.0%) Process Implicit Definitions
0.0021 ( 0.0%) 0.0002 ( 0.0%) 0.0023 ( 0.0%) 0.0023 ( 0.0%) Loop-Closed SSA Form Pass
0.0021 ( 0.0%) 0.0001 ( 0.0%) 0.0022 ( 0.0%) 0.0022 ( 0.0%) Exception handling preparation
0.0014 ( 0.0%) 0.0005 ( 0.1%) 0.0019 ( 0.0%) 0.0019 ( 0.0%) Preliminary module verification
0.0018 ( 0.0%) 0.0000 ( 0.0%) 0.0018 ( 0.0%) 0.0018 ( 0.0%) Dead Argument Elimination
0.0018 ( 0.0%) 0.0000 ( 0.0%) 0.0018 ( 0.0%) 0.0018 ( 0.0%) Preliminary module verification
0.0009 ( 0.0%) 0.0010 ( 0.1%) 0.0018 ( 0.0%) 0.0018 ( 0.0%) Basic Alias Analysis (stateless AA impl)
0.0007 ( 0.0%) 0.0008 ( 0.1%) 0.0015 ( 0.0%) 0.0015 ( 0.0%) Basic Alias Analysis (stateless AA impl)
0.0013 ( 0.0%) 0.0001 ( 0.0%) 0.0013 ( 0.0%) 0.0013 ( 0.0%) Delete dead loops
0.0012 ( 0.0%) 0.0001 ( 0.0%) 0.0013 ( 0.0%) 0.0013 ( 0.0%) Global Variable Optimizer
0.0012 ( 0.0%) 0.0000 ( 0.0%) 0.0012 ( 0.0%) 0.0012 ( 0.0%) X86 Maximal Stack Alignment Check
0.0009 ( 0.0%) 0.0001 ( 0.0%) 0.0010 ( 0.0%) 0.0010 ( 0.0%) Live Register Matrix
0.0009 ( 0.0%) 0.0000 ( 0.0%) 0.0009 ( 0.0%) 0.0009 ( 0.0%) Preliminary module verification
0.0008 ( 0.0%) 0.0001 ( 0.0%) 0.0009 ( 0.0%) 0.0009 ( 0.0%) Recognize loop idioms
0.0008 ( 0.0%) 0.0000 ( 0.0%) 0.0008 ( 0.0%) 0.0008 ( 0.0%) Machine Loop Invariant Code Motion
0.0004 ( 0.0%) 0.0004 ( 0.1%) 0.0008 ( 0.0%) 0.0008 ( 0.0%) No Alias Analysis (always returns 'may' alias)
0.0005 ( 0.0%) 0.0000 ( 0.0%) 0.0005 ( 0.0%) 0.0005 ( 0.0%) Canonicalize natural loops
0.0002 ( 0.0%) 0.0003 ( 0.0%) 0.0005 ( 0.0%) 0.0005 ( 0.0%) Target Library Information
0.0004 ( 0.0%) 0.0001 ( 0.0%) 0.0005 ( 0.0%) 0.0005 ( 0.0%) Virtual Register Map
0.0002 ( 0.0%) 0.0002 ( 0.0%) 0.0005 ( 0.0%) 0.0005 ( 0.0%) No Alias Analysis (always returns 'may' alias)
0.0004 ( 0.0%) 0.0001 ( 0.0%) 0.0004 ( 0.0%) 0.0004 ( 0.0%) Rotate Loops
0.0004 ( 0.0%) 0.0000 ( 0.0%) 0.0004 ( 0.0%) 0.0004 ( 0.0%) Canonicalize natural loops
0.0004 ( 0.0%) 0.0000 ( 0.0%) 0.0004 ( 0.0%) 0.0004 ( 0.0%) Scalar Evolution Analysis
0.0002 ( 0.0%) 0.0001 ( 0.0%) 0.0003 ( 0.0%) 0.0003 ( 0.0%) Live Stack Slot Analysis
0.0001 ( 0.0%) 0.0000 ( 0.0%) 0.0001 ( 0.0%) 0.0001 ( 0.0%) Post RA top-down list latency scheduler
0.0001 ( 0.0%) 0.0000 ( 0.0%) 0.0001 ( 0.0%) 0.0001 ( 0.0%) Local Stack Slot Allocation
0.0000 ( 0.0%) 0.0000 ( 0.0%) 0.0001 ( 0.0%) 0.0001 ( 0.0%) Analyze Machine Code For Garbage Collection
0.0001 ( 0.0%) 0.0000 ( 0.0%) 0.0001 ( 0.0%) 0.0001 ( 0.0%) Strip Unused Function Prototypes
0.0000 ( 0.0%) 0.0000 ( 0.0%) 0.0001 ( 0.0%) 0.0001 ( 0.0%) Lower Garbage Collection Instructions
0.0001 ( 0.0%) 0.0000 ( 0.0%) 0.0001 ( 0.0%) 0.0001 ( 0.0%) Merge Duplicate Global Constants
0.0000 ( 0.0%) 0.0000 ( 0.0%) 0.0001 ( 0.0%) 0.0001 ( 0.0%) Delete Garbage Collector Information
0.0000 ( 0.0%) 0.0000 ( 0.0%) 0.0000 ( 0.0%) 0.0000 ( 0.0%) Create Garbage Collector Module Metadata
0.0000 ( 0.0%) 0.0000 ( 0.0%) 0.0000 ( 0.0%) 0.0000 ( 0.0%) Machine Branch Probability Analysis
0.0000 ( 0.0%) 0.0000 ( 0.0%) 0.0000 ( 0.0%) 0.0000 ( 0.0%) Machine Module Information
0.0000 ( 0.0%) 0.0000 ( 0.0%) 0.0000 ( 0.0%) 0.0000 ( 0.0%) Target Pass Configuration
0.0000 ( 0.0%) 0.0000 ( 0.0%) 0.0000 ( 0.0%) 0.0000 ( 0.0%) Target Library Information
91.2879 (100.0%) 0.7651 (100.0%) 92.0530 (100.0%) 92.0723 (100.0%) Total
===-------------------------------------------------------------------------===
Miscellaneous Ungrouped Timers
===-------------------------------------------------------------------------===
---User Time--- --System Time-- --User+System-- ---Wall Time--- --- Name ---
96.8998 ( 51.2%) 0.8612 ( 51.4%) 97.7611 ( 51.3%) 97.7872 ( 51.3%) Clang front-end timer
91.7164 ( 48.5%) 0.8066 ( 48.1%) 92.5230 ( 48.5%) 92.5430 ( 48.5%) Code Generation Time
0.4608 ( 0.2%) 0.0074 ( 0.4%) 0.4682 ( 0.2%) 0.4684 ( 0.2%) LLVM IR Generation Time
189.0770 (100.0%) 1.6753 (100.0%) 190.7523 (100.0%) 190.7986 (100.0%) Total
System:Elapsed: 97.848, Result code 0
--
john skaller
skaller at users.sourceforge.net
http://felix-lang.org
More information about the llvm-dev
mailing list