593 } |
593 } |
594 ready_cnt[n->_idx] = local; // Count em up |
594 ready_cnt[n->_idx] = local; // Count em up |
595 |
595 |
596 // A few node types require changing a required edge to a precedence edge |
596 // A few node types require changing a required edge to a precedence edge |
597 // before allocation. |
597 // before allocation. |
598 if( UseConcMarkSweepGC ) { |
598 if( UseConcMarkSweepGC || UseG1GC ) { |
599 if( n->is_Mach() && n->as_Mach()->ideal_Opcode() == Op_StoreCM ) { |
599 if( n->is_Mach() && n->as_Mach()->ideal_Opcode() == Op_StoreCM ) { |
600 // Note: Required edges with an index greater than oper_input_base |
600 // Note: Required edges with an index greater than oper_input_base |
601 // are not supported by the allocator. |
601 // are not supported by the allocator. |
602 // Note2: Can only depend on unmatched edge being last, |
602 // Note2: Can only depend on unmatched edge being last, |
603 // can not depend on its absolute position. |
603 // can not depend on its absolute position. |