From 3362efa83f21c0c044e4fdc1ed4f85e410fb0a77 Mon Sep 17 00:00:00 2001 From: kvn Date: Thu, 18 Nov 2010 09:52:48 -0800 Subject: [PATCH] 7000491: assert(false) failed: should be optimized out in SharedRuntime::g1_wb_pre Summary: Wrong value type is used for NULL store when clearing the detail message of the preallocated exception object. Reviewed-by: never, iveresov --- src/share/vm/opto/graphKit.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/share/vm/opto/graphKit.cpp b/src/share/vm/opto/graphKit.cpp index cbf43cb55..493af5cea 100644 --- a/src/share/vm/opto/graphKit.cpp +++ b/src/share/vm/opto/graphKit.cpp @@ -569,7 +569,8 @@ void GraphKit::builtin_throw(Deoptimization::DeoptReason reason, Node* arg) { const TypePtr* adr_typ = ex_con->add_offset(offset); Node *adr = basic_plus_adr(ex_node, ex_node, offset); - Node *store = store_oop_to_object(control(), ex_node, adr, adr_typ, null(), ex_con, T_OBJECT); + const TypeOopPtr* val_type = TypeOopPtr::make_from_klass(env()->String_klass()); + Node *store = store_oop_to_object(control(), ex_node, adr, adr_typ, null(), val_type, T_OBJECT); add_exception_state(make_exception_state(ex_node)); return; -- GitLab