JDK-6710487 : More than half of JDI Regression tests hang with COOPs in -Xcomp mode
The Version table provides details related to the release that this issue/RFE will be addressed.
Unresolved : Release in which this issue/RFE will be addressed. Resolved: Release in which this issue/RFE has been resolved. Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availabitlity Release.
More than half of JDI Regression tests hang with COOPs in -Xcomp mode
and as result they fail with timeout.
See comments for more details.
Remove DecodeNNode::decode() and EncodePNode::encode() methods.
Both nodes now have Identity() and Value() methods which
do transformations we need.
Replace TypeOopPtr::make_narrowoop() with Type::make_narrowoop() and
TypeNarrowOop::make_oopptr() with Type::make_ptr() to simplify the code.
This change to LoadNode::make:
- return new (C, 2) DecodeNNode(load, rt);
+ return DecodeNNode::decode(&gvn, load);
causes the problem. The result of LoadNode::make is passed to _gvn.transform by GraphKit::make_load. decode returns a preexisting Phi that gets simplified too early when passed to transform so that instead of getParent walking up the chain it calls getParent on the same object over and over again.