RFR(s): 8222640: Remove deopt suspend

Robbin Ehn robbin.ehn at oracle.com
Tue Apr 23 19:38:13 UTC 2019


Hi Dean,

Is this what you had in mind:
diff -r 295029840379 src/hotspot/share/runtime/frame.cpp
--- a/src/hotspot/share/runtime/frame.cpp       Tue Apr 23 09:58:55 2019 +0200
+++ b/src/hotspot/share/runtime/frame.cpp       Tue Apr 23 21:32:00 2019 +0200
@@ -272,4 +272,6 @@

  void frame::deoptimize(JavaThread* thread) {
+  assert(thread->frame_anchor()->has_last_Java_frame() &&
+         thread->frame_anchor()->walkable(), "must be");
    // Schedule deoptimization of an nmethod activation with this frame.
    assert(_cb != NULL && _cb->is_compiled(), "must be");

Passes t1-5.

v2:
http://cr.openjdk.java.net/~rehn/8222640/2/webrev/
Inc:
http://cr.openjdk.java.net/~rehn/8222640/2/inc/webrev/

Thanks, Robbin

On 2019-04-18 06:22, dean.long at oracle.com wrote:
> In frame::deoptimize(), can we assert that we have an anchor frame and that it is walkable?
> 
> dl
> 
> On 4/17/19 3:09 AM, Robbin Ehn wrote:
>> Adding compiler.
>>
>> /Robbin
>>
>> On 4/17/19 10:35 AM, Robbin Ehn wrote:
>>> Hi all, please consider this change.
>>>
>>> The code for deopt suspend is no longer needed since today the register window
>>> is always flushed when this code executes. Exactly when this code was needed is not clear, entered via duke changeset 
>>> 1. I did not dig since we no longer have such use case.
>>>
>>> Webrev:
>>> http://cr.openjdk.java.net/~rehn/8222640/webrev/
>>> Issue:
>>> https://bugs.openjdk.java.net/browse/JDK-8222640
>>>
>>> Passes t1-5.
>>>
>>> Thanks, Robbin
> 


More information about the hotspot-compiler-dev mailing list