Mercurial > hg > graal-jvmci-8
comparison src/share/vm/opto/coalesce.cpp @ 12171:4b078f877b56
8023988: Move local scheduling of nodes to the CFG creation and code motion phase (PhaseCFG)
Summary: Moved local scheduling code from class Block to class PhaseCFG
Reviewed-by: kvn, roland
author | adlertz |
---|---|
date | Sun, 01 Sep 2013 19:21:05 +0200 |
parents | 650868c062a9 |
children | 04e7587c97dc b8e2e616c1e9 |
comparison
equal
deleted
inserted
replaced
12169:29aa8936f03c | 12171:4b078f877b56 |
---|---|
337 } | 337 } |
338 | 338 |
339 } // End of is two-adr | 339 } // End of is two-adr |
340 | 340 |
341 // Insert a copy at a debug use for a lrg which has high frequency | 341 // Insert a copy at a debug use for a lrg which has high frequency |
342 if (b->_freq < OPTO_DEBUG_SPLIT_FREQ || b->is_uncommon(&_phc._cfg)) { | 342 if (b->_freq < OPTO_DEBUG_SPLIT_FREQ || _phc._cfg.is_uncommon(b)) { |
343 // Walk the debug inputs to the node and check for lrg freq | 343 // Walk the debug inputs to the node and check for lrg freq |
344 JVMState* jvms = n->jvms(); | 344 JVMState* jvms = n->jvms(); |
345 uint debug_start = jvms ? jvms->debug_start() : 999999; | 345 uint debug_start = jvms ? jvms->debug_start() : 999999; |
346 uint debug_end = jvms ? jvms->debug_end() : 999999; | 346 uint debug_end = jvms ? jvms->debug_end() : 999999; |
347 for(uint inpidx = debug_start; inpidx < debug_end; inpidx++) { | 347 for(uint inpidx = debug_start; inpidx < debug_end; inpidx++) { |
767 } | 767 } |
768 | 768 |
769 // Conservative (but pessimistic) copy coalescing of a single block | 769 // Conservative (but pessimistic) copy coalescing of a single block |
770 void PhaseConservativeCoalesce::coalesce( Block *b ) { | 770 void PhaseConservativeCoalesce::coalesce( Block *b ) { |
771 // Bail out on infrequent blocks | 771 // Bail out on infrequent blocks |
772 if (b->is_uncommon(&_phc._cfg)) { | 772 if (_phc._cfg.is_uncommon(b)) { |
773 return; | 773 return; |
774 } | 774 } |
775 // Check this block for copies. | 775 // Check this block for copies. |
776 for( uint i = 1; i<b->end_idx(); i++ ) { | 776 for( uint i = 1; i<b->end_idx(); i++ ) { |
777 // Check for actual copies on inputs. Coalesce a copy into its | 777 // Check for actual copies on inputs. Coalesce a copy into its |