diff src/share/vm/runtime/sharedRuntime.cpp @ 20705:d3f3f7677537

6898462: The escape analysis with G1 cause crash assertion src/share/vm/runtime/vframeArray.cpp:94 Summary: OOM during reallocation of scalar replaced objects in deoptimization causes crashes Reviewed-by: kvn, jrose
author roland
date Tue, 25 Nov 2014 17:33:59 +0100
parents 07e01043ade7
children 7848fc12602b
line wrap: on
line diff
--- a/src/share/vm/runtime/sharedRuntime.cpp	Thu Dec 11 10:38:17 2014 +0000
+++ b/src/share/vm/runtime/sharedRuntime.cpp	Tue Nov 25 17:33:59 2014 +0100
@@ -482,6 +482,7 @@
 
 address SharedRuntime::raw_exception_handler_for_return_address(JavaThread* thread, address return_address) {
   assert(frame::verify_return_pc(return_address), err_msg("must be a return address: " INTPTR_FORMAT, return_address));
+  assert(thread->frames_to_pop_failed_realloc() == 0 || Interpreter::contains(return_address), "missed frames to pop?");
 
   // Reset method handle flag.
   thread->set_is_method_handle_return(false);