Skip to content
Permalink
Browse files

8237086: assert(is_MachReturn()) running CTW with fix for JDK-8231291

Reviewed-by: kvn, vlivanov
  • Loading branch information
rwestrel committed Jan 14, 2020
1 parent 00c40ae commit 1745ae28b9820d11d49facf1d1fc5fa43719bd60
Showing with 8 additions and 0 deletions.
  1. +5 −0 src/hotspot/share/opto/compile.cpp
  2. +3 −0 src/hotspot/share/opto/graphKit.cpp
@@ -2191,6 +2191,11 @@ void Compile::remove_root_to_sfpts_edges(PhaseIterGVN& igvn) {
--i;
}
}
// Parsing may have added top inputs to the root node (Path
// leading to the Halt node proven dead). Make sure we get a
// chance to clean them up.
igvn._worklist.push(r);
igvn.optimize();
}
}

@@ -1406,6 +1406,9 @@ Node* GraphKit::cast_not_null(Node* obj, bool do_replace_in_map) {
// opts so the test goes away and the compiled code doesn't execute a
// useless check.
Node* GraphKit::must_be_not_null(Node* value, bool do_replace_in_map) {
if (!TypePtr::NULL_PTR->higher_equal(_gvn.type(value))) {
return value;
}
Node* chk = _gvn.transform(new CmpPNode(value, null()));
Node *tst = _gvn.transform(new BoolNode(chk, BoolTest::ne));
Node* opaq = _gvn.transform(new Opaque4Node(C, tst, intcon(1)));

0 comments on commit 1745ae2

Please sign in to comment.