58 lines
1.9 KiB
Diff
58 lines
1.9 KiB
Diff
From e42367ab7ce5d66823ef32ea00dbc5e44e3b20d1 Mon Sep 17 00:00:00 2001
|
|
Date: Tue, 28 May 2019 21:38:21 +0000
|
|
Subject: [PATCH] 8161072: AArch64: jtreg compiler/uncommontrap/TestDeoptOOM failure
|
|
|
|
Summary:
|
|
Bug url: https://bugs.openjdk.java.net/browse/JDK-8161072
|
|
|
|
---
|
|
.../cpu/aarch64/vm/templateInterpreter_aarch64.cpp | 25 +++++++++++-----------
|
|
1 file changed, 12 insertions(+), 13 deletions(-)
|
|
|
|
diff --git a/hotspot/src/cpu/aarch64/vm/templateInterpreter_aarch64.cpp b/hotspot/src/cpu/aarch64/vm/templateInterpreter_aarch64.cpp
|
|
index 8dede4b74..566ddd173 100644
|
|
--- a/hotspot/src/cpu/aarch64/vm/templateInterpreter_aarch64.cpp
|
|
+++ b/hotspot/src/cpu/aarch64/vm/templateInterpreter_aarch64.cpp
|
|
@@ -223,19 +223,6 @@ address TemplateInterpreterGenerator::generate_deopt_entry_for(TosState state,
|
|
__ restore_locals();
|
|
__ restore_constant_pool_cache();
|
|
__ get_method(rmethod);
|
|
-
|
|
- // handle exceptions
|
|
- {
|
|
- Label L;
|
|
- __ ldr(rscratch1, Address(rthread, Thread::pending_exception_offset()));
|
|
- __ cbz(rscratch1, L);
|
|
- __ call_VM(noreg,
|
|
- CAST_FROM_FN_PTR(address,
|
|
- InterpreterRuntime::throw_pending_exception));
|
|
- __ should_not_reach_here();
|
|
- __ bind(L);
|
|
- }
|
|
-
|
|
__ get_dispatch();
|
|
|
|
// Calculate stack limit
|
|
@@ -253,6 +240,18 @@ address TemplateInterpreterGenerator::generate_deopt_entry_for(TosState state,
|
|
// NULL last_sp until next java call
|
|
__ str(zr, Address(rfp, frame::interpreter_frame_last_sp_offset * wordSize));
|
|
|
|
+ // handle exceptions
|
|
+ {
|
|
+ Label L;
|
|
+ __ ldr(rscratch1, Address(rthread, Thread::pending_exception_offset()));
|
|
+ __ cbz(rscratch1, L);
|
|
+ __ call_VM(noreg,
|
|
+ CAST_FROM_FN_PTR(address,
|
|
+ InterpreterRuntime::throw_pending_exception));
|
|
+ __ should_not_reach_here();
|
|
+ __ bind(L);
|
|
+ }
|
|
+
|
|
__ dispatch_next(state, step);
|
|
return entry;
|
|
}
|
|
--
|
|
2.12.3
|
|
|