< prev index next >

src/share/vm/opto/opaquenode.cpp

Print this page

        

*** 38,48 **** // the opaque Node until no more loop ops can happen. Note the timing of // _major_progress; it's set in the major loop optimizations THEN comes the // call to IterGVN and any chance of hitting this code. Hence there's no // phase-ordering problem with stripping Opaque1 in IGVN followed by some // more loop optimizations that require it. ! Node *Opaque1Node::Identity( PhaseTransform *phase ) { return phase->C->major_progress() ? this : in(1); } //============================================================================= // A node to prevent unwanted optimizations. Allows constant folding. Stops --- 38,48 ---- // the opaque Node until no more loop ops can happen. Note the timing of // _major_progress; it's set in the major loop optimizations THEN comes the // call to IterGVN and any chance of hitting this code. Hence there's no // phase-ordering problem with stripping Opaque1 in IGVN followed by some // more loop optimizations that require it. ! Node* Opaque1Node::Identity(PhaseGVN* phase) { return phase->C->major_progress() ? this : in(1); } //============================================================================= // A node to prevent unwanted optimizations. Allows constant folding. Stops
*** 74,84 **** } else { return NULL; } } ! Node *ProfileBooleanNode::Identity( PhaseTransform *phase ) { if (_delay_removal) { return this; } else { assert(_consumed, "profile should be consumed before elimination"); return in(1); --- 74,84 ---- } else { return NULL; } } ! Node* ProfileBooleanNode::Identity(PhaseGVN* phase) { if (_delay_removal) { return this; } else { assert(_consumed, "profile should be consumed before elimination"); return in(1);
< prev index next >