src/share/vm/opto/phaseX.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
*** old/src/share/vm/opto/phaseX.cpp Tue Mar 17 11:32:56 2015
--- new/src/share/vm/opto/phaseX.cpp Tue Mar 17 11:32:56 2015
*** 1603,1627 ****
--- 1603,1612 ----
void PhaseCCP::do_transform() {
// Correct leaves of new-space Nodes; they point to old-space.
C->set_root( transform(C->root())->as_Root() );
assert( C->top(), "missing TOP node" );
assert( C->root(), "missing root" );
// Eagerly remove castPP nodes here. CastPP nodes might not be
// removed in the subsequent IGVN phase if a node that changes
// in(1) of a castPP is processed prior to the castPP node.
for (uint i = 0; i < _worklist.size(); i++) {
Node* n = _worklist.at(i);
if (n->is_ConstraintCast()) {
Node* nn = n->Identity(this);
if (nn != n) {
replace_node(n, nn);
--i;
}
}
}
}
//------------------------------transform--------------------------------------
// Given a Node in old-space, clone him into new-space.
// Convert any of his old-space children into new-space children.
*** 1698,1712 ****
--- 1683,1692 ----
hash_delete(n); // changing bottom type may force a rehash
n->raise_bottom_type(t);
_worklist.push(n); // n re-enters the hash table via the worklist
}
// Idealize graph using DU info. Must clone() into new-space.
// DU info is generally used to show profitability, progress or safety
// (but generally not needed for correctness).
Node *nn = n->Ideal_DU_postCCP(this);
// TEMPORARY fix to ensure that 2nd GVN pass eliminates NULL checks
switch( n->Opcode() ) {
case Op_FastLock: // Revisit FastLocks for lock coarsening
case Op_If:
case Op_CountedLoopEnd:
*** 1719,1734 ****
--- 1699,1708 ----
_worklist.push(n);
break;
default:
break;
}
if( nn ) {
_worklist.push(n);
// Put users of 'n' onto worklist for second igvn transform
add_users_to_worklist(n);
return nn;
}
return n;
}
//---------------------------------saturate------------------------------------
src/share/vm/opto/phaseX.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File