# HG changeset patch # User Gilles Duboscq # Date 1446649918 -3600 # Node ID 48fde4d037679cdbc2259c37515bf85d10defe2d # Parent 44bc739eae23b9028ed769e71add39b10b584acc Add assert for Unpack_uncommon_trap for ppc and always check for rethrow_exception diff -r 44bc739eae23 -r 48fde4d03767 src/cpu/ppc/vm/sharedRuntime_ppc.cpp --- a/src/cpu/ppc/vm/sharedRuntime_ppc.cpp Mon Nov 02 23:53:10 2015 +0100 +++ b/src/cpu/ppc/vm/sharedRuntime_ppc.cpp Wed Nov 04 16:11:58 2015 +0100 @@ -3013,6 +3013,12 @@ // stack: (caller_of_deoptee, ...). +#ifdef ASSERT + __ lwz(R22_tmp2, Deoptimization::UnrollBlock::unpack_kind_offset_in_bytes(), unroll_block_reg); + __ cmpdi(CCR0, R22_tmp2, Deoptimization::Unpack_uncommon_trap); + __ asm_assert_eq("SharedRuntime::generate_deopt_blob: expected Unpack_uncommon_trap", 0); +#endif + // Allocate new interpreter frame(s) and possibly a c2i adapter // frame. push_skeleton_frames(masm, false/*deopt*/, diff -r 44bc739eae23 -r 48fde4d03767 src/share/vm/runtime/deoptimization.cpp --- a/src/share/vm/runtime/deoptimization.cpp Mon Nov 02 23:53:10 2015 +0100 +++ b/src/share/vm/runtime/deoptimization.cpp Wed Nov 04 16:11:58 2015 +0100 @@ -226,7 +226,6 @@ assert(vf->is_compiled_frame(), "Wrong frame type"); chunk->push(compiledVFrame::cast(vf)); -#ifdef INCLUDE_JVMCI ScopeDesc* trap_scope = chunk->at(0)->scope(); Handle exceptionObject; if (trap_scope->rethrow_exception()) { @@ -239,7 +238,6 @@ exceptionObject = StackValue::create_stack_value(&deoptee, &map, topOfStack)->get_obj(); assert(exceptionObject() != NULL, "exception oop can not be null"); } -#endif bool realloc_failures = false;