1.1 --- a/src/share/vm/opto/ifg.cpp Mon Aug 26 16:12:20 2013 +0200 1.2 +++ b/src/share/vm/opto/ifg.cpp Mon Aug 26 12:50:23 2013 +0200 1.3 @@ -319,7 +319,7 @@ 1.4 // value is then removed from the live-ness set and it's inputs are 1.5 // added to the live-ness set. 1.6 for (uint j = block->end_idx() + 1; j > 1; j--) { 1.7 - Node* n = block->_nodes[j - 1]; 1.8 + Node* n = block->get_node(j - 1); 1.9 1.10 // Get value being defined 1.11 uint r = _lrg_map.live_range_id(n); 1.12 @@ -456,7 +456,7 @@ 1.13 // Compute first nonphi node index 1.14 uint first_inst; 1.15 for (first_inst = 1; first_inst < last_inst; first_inst++) { 1.16 - if (!block->_nodes[first_inst]->is_Phi()) { 1.17 + if (!block->get_node(first_inst)->is_Phi()) { 1.18 break; 1.19 } 1.20 } 1.21 @@ -464,15 +464,15 @@ 1.22 // Spills could be inserted before CreateEx node which should be 1.23 // first instruction in block after Phis. Move CreateEx up. 1.24 for (uint insidx = first_inst; insidx < last_inst; insidx++) { 1.25 - Node *ex = block->_nodes[insidx]; 1.26 + Node *ex = block->get_node(insidx); 1.27 if (ex->is_SpillCopy()) { 1.28 continue; 1.29 } 1.30 if (insidx > first_inst && ex->is_Mach() && ex->as_Mach()->ideal_Opcode() == Op_CreateEx) { 1.31 // If the CreateEx isn't above all the MachSpillCopies 1.32 // then move it to the top. 1.33 - block->_nodes.remove(insidx); 1.34 - block->_nodes.insert(first_inst, ex); 1.35 + block->remove_node(insidx); 1.36 + block->insert_node(ex, first_inst); 1.37 } 1.38 // Stop once a CreateEx or any other node is found 1.39 break; 1.40 @@ -523,7 +523,7 @@ 1.41 // to the live-ness set. 1.42 uint j; 1.43 for (j = last_inst + 1; j > 1; j--) { 1.44 - Node* n = block->_nodes[j - 1]; 1.45 + Node* n = block->get_node(j - 1); 1.46 1.47 // Get value being defined 1.48 uint r = _lrg_map.live_range_id(n); 1.49 @@ -541,7 +541,7 @@ 1.50 if( !n->is_Proj() || 1.51 // Could also be a flags-projection of a dead ADD or such. 1.52 (_lrg_map.live_range_id(def) && !liveout.member(_lrg_map.live_range_id(def)))) { 1.53 - block->_nodes.remove(j - 1); 1.54 + block->remove_node(j - 1); 1.55 if (lrgs(r)._def == n) { 1.56 lrgs(r)._def = 0; 1.57 } 1.58 @@ -605,7 +605,7 @@ 1.59 // (j - 1) is index for current instruction 'n' 1.60 Node *m = n; 1.61 for (uint i = j; i <= last_inst && m->is_SpillCopy(); ++i) { 1.62 - m = block->_nodes[i]; 1.63 + m = block->get_node(i); 1.64 } 1.65 if (m == single_use) { 1.66 lrgs(r)._area = 0.0; 1.67 @@ -772,20 +772,20 @@ 1.68 1.69 // Compute high pressure indice; avoid landing in the middle of projnodes 1.70 j = hrp_index[0]; 1.71 - if (j < block->_nodes.size() && j < block->end_idx() + 1) { 1.72 - Node* cur = block->_nodes[j]; 1.73 + if (j < block->number_of_nodes() && j < block->end_idx() + 1) { 1.74 + Node* cur = block->get_node(j); 1.75 while (cur->is_Proj() || (cur->is_MachNullCheck()) || cur->is_Catch()) { 1.76 j--; 1.77 - cur = block->_nodes[j]; 1.78 + cur = block->get_node(j); 1.79 } 1.80 } 1.81 block->_ihrp_index = j; 1.82 j = hrp_index[1]; 1.83 - if (j < block->_nodes.size() && j < block->end_idx() + 1) { 1.84 - Node* cur = block->_nodes[j]; 1.85 + if (j < block->number_of_nodes() && j < block->end_idx() + 1) { 1.86 + Node* cur = block->get_node(j); 1.87 while (cur->is_Proj() || (cur->is_MachNullCheck()) || cur->is_Catch()) { 1.88 j--; 1.89 - cur = block->_nodes[j]; 1.90 + cur = block->get_node(j); 1.91 } 1.92 } 1.93 block->_fhrp_index = j;