Mercurial > hg > graal-jvmci-8
comparison src/share/vm/opto/phase.cpp @ 23471:70649f10b88c
8129847: Compiling methods generated by Nashorn triggers high memory usage in C2
Summary: Add a new compiler phase, PhaseRenumberLive, that renumbers live nodes.
Reviewed-by: kvn, thartmann, vlivanov, shade
author | zmajo |
---|---|
date | Tue, 15 Dec 2015 09:46:51 +0100 |
parents | 9df0d8f65fea |
children | b5f3a471e646 |
comparison
equal
deleted
inserted
replaced
23469:c1679cc87ba0 | 23471:70649f10b88c |
---|---|
65 | 65 |
66 // Subtimers for _t_optimizer | 66 // Subtimers for _t_optimizer |
67 elapsedTimer Phase::_t_iterGVN; | 67 elapsedTimer Phase::_t_iterGVN; |
68 elapsedTimer Phase::_t_iterGVN2; | 68 elapsedTimer Phase::_t_iterGVN2; |
69 elapsedTimer Phase::_t_incrInline; | 69 elapsedTimer Phase::_t_incrInline; |
70 elapsedTimer Phase::_t_renumberLive; | |
71 | |
70 | 72 |
71 // Subtimers for _t_registerAllocation | 73 // Subtimers for _t_registerAllocation |
72 elapsedTimer Phase::_t_ctorChaitin; | 74 elapsedTimer Phase::_t_ctorChaitin; |
73 elapsedTimer Phase::_t_buildIFGphysical; | 75 elapsedTimer Phase::_t_buildIFGphysical; |
74 elapsedTimer Phase::_t_computeLive; | 76 elapsedTimer Phase::_t_computeLive; |
113 tty->print_cr (" connection graph: %3.3f sec", Phase::_t_connectionGraph.seconds()); | 115 tty->print_cr (" connection graph: %3.3f sec", Phase::_t_connectionGraph.seconds()); |
114 tty->print_cr (" macroEliminate : %3.3f sec", Phase::_t_macroEliminate.seconds()); | 116 tty->print_cr (" macroEliminate : %3.3f sec", Phase::_t_macroEliminate.seconds()); |
115 } | 117 } |
116 tty->print_cr (" iterGVN : %3.3f sec", Phase::_t_iterGVN.seconds()); | 118 tty->print_cr (" iterGVN : %3.3f sec", Phase::_t_iterGVN.seconds()); |
117 tty->print_cr (" incrInline : %3.3f sec", Phase::_t_incrInline.seconds()); | 119 tty->print_cr (" incrInline : %3.3f sec", Phase::_t_incrInline.seconds()); |
120 tty->print_cr (" renumberLive : %3.3f sec", Phase::_t_renumberLive.seconds()); | |
118 tty->print_cr (" idealLoop : %3.3f sec", Phase::_t_idealLoop.seconds()); | 121 tty->print_cr (" idealLoop : %3.3f sec", Phase::_t_idealLoop.seconds()); |
119 tty->print_cr (" idealLoopVerify: %3.3f sec", Phase::_t_idealLoopVerify.seconds()); | 122 tty->print_cr (" idealLoopVerify: %3.3f sec", Phase::_t_idealLoopVerify.seconds()); |
120 tty->print_cr (" ccp : %3.3f sec", Phase::_t_ccp.seconds()); | 123 tty->print_cr (" ccp : %3.3f sec", Phase::_t_ccp.seconds()); |
121 tty->print_cr (" iterGVN2 : %3.3f sec", Phase::_t_iterGVN2.seconds()); | 124 tty->print_cr (" iterGVN2 : %3.3f sec", Phase::_t_iterGVN2.seconds()); |
122 tty->print_cr (" macroExpand : %3.3f sec", Phase::_t_macroExpand.seconds()); | 125 tty->print_cr (" macroExpand : %3.3f sec", Phase::_t_macroExpand.seconds()); |
123 tty->print_cr (" graphReshape : %3.3f sec", Phase::_t_graphReshaping.seconds()); | 126 tty->print_cr (" graphReshape : %3.3f sec", Phase::_t_graphReshaping.seconds()); |
124 double optimizer_subtotal = Phase::_t_iterGVN.seconds() + Phase::_t_iterGVN2.seconds() + | 127 double optimizer_subtotal = Phase::_t_iterGVN.seconds() + Phase::_t_iterGVN2.seconds() + Phase::_t_renumberLive.seconds() + |
125 Phase::_t_escapeAnalysis.seconds() + Phase::_t_macroEliminate.seconds() + | 128 Phase::_t_escapeAnalysis.seconds() + Phase::_t_macroEliminate.seconds() + |
126 Phase::_t_idealLoop.seconds() + Phase::_t_ccp.seconds() + | 129 Phase::_t_idealLoop.seconds() + Phase::_t_ccp.seconds() + |
127 Phase::_t_macroExpand.seconds() + Phase::_t_graphReshaping.seconds(); | 130 Phase::_t_macroExpand.seconds() + Phase::_t_graphReshaping.seconds(); |
128 double percent_of_optimizer = ((optimizer_subtotal == 0.0) ? 0.0 : (optimizer_subtotal / Phase::_t_optimizer.seconds() * 100.0)); | 131 double percent_of_optimizer = ((optimizer_subtotal == 0.0) ? 0.0 : (optimizer_subtotal / Phase::_t_optimizer.seconds() * 100.0)); |
129 tty->print_cr (" subtotal : %3.3f sec, %3.2f %%", optimizer_subtotal, percent_of_optimizer); | 132 tty->print_cr (" subtotal : %3.3f sec, %3.2f %%", optimizer_subtotal, percent_of_optimizer); |