-
Notifications
You must be signed in to change notification settings - Fork 15.6k
Open
Description
The compilation of the example code takes a lot of time in the scheduling pass for Hexagon. In our downstream backend, which use VLIWMachineScheduler it is even worse (85+%), therefore the cause should be in the target independent part.
===-------------------------------------------------------------------------===
Pass execution timing report
===-------------------------------------------------------------------------===
Total Execution Time: 144.8409 seconds (144.9222 wall clock)
---User Time--- --System Time-- --User+System-- ---Wall Time--- --- Name ---
74.5014 ( 51.5%) 0.0405 ( 21.3%) 74.5418 ( 51.5%) 74.5774 ( 51.5%) Machine Instruction Scheduler
25.3194 ( 17.5%) 0.0118 ( 6.2%) 25.3312 ( 17.5%) 25.3545 ( 17.5%) Hexagon bit simplification
17.2195 ( 11.9%) 0.0041 ( 2.1%) 17.2236 ( 11.9%) 17.2288 ( 11.9%) Hexagon generate "insert" instructions
10.9911 ( 7.6%) 0.0000 ( 0.0%) 10.9911 ( 7.6%) 10.9959 ( 7.6%) Hexagon Loop Rescheduling
8.2689 ( 5.7%) 0.0000 ( 0.0%) 8.2689 ( 5.7%) 8.2727 ( 5.7%) Hexagon constant-extender optimization
6.1502 ( 4.3%) 0.0161 ( 8.5%) 6.1663 ( 4.3%) 6.1687 ( 4.3%) Prologue/Epilogue Insertion & Frame Finalization
0.5480 ( 0.4%) 0.0365 ( 19.2%) 0.5845 ( 0.4%) 0.5845 ( 0.4%) Hexagon RDF optimizations
0.4602 ( 0.3%) 0.0324 ( 17.1%) 0.4926 ( 0.3%) 0.4927 ( 0.3%) Optimize addressing mode of load/store
0.4537 ( 0.3%) 0.0120 ( 6.3%) 0.4657 ( 0.3%) 0.4658 ( 0.3%) Hexagon DAG->DAG Pattern Instruction Selection