JDK10/RFR(XXS): 8011352: C1: TraceCodeBlobStacks crashes fastdebug solaris sparc

Patric Hedlin patric.hedlin at oracle.com
Thu Mar 23 11:04:47 UTC 2017


Hi,

Please review this minor change/fix:

     https://bugs.openjdk.java.net/browse/JDK-8011352

Rationale:

     Replacing assumption on '_younger_window' being available when 
performing lookup on OUT-register part (in window), in order to handle 
such access in the same manner as other "out-of-scope" lookup (i.e. by 
returning NULL).

Regards,
Patric

Patch below:

-----8<-----

--- old/src/cpu/sparc/vm/frame_sparc.cpp	Wed Mar 22 16:47:13 2017
+++ new/src/cpu/sparc/vm/frame_sparc.cpp	Wed Mar 22 16:47:12 2017
@@ -123,8 +123,8 @@
      reg = regname->as_Register();
    }
    if (reg->is_out()) {
-    assert(_younger_window != NULL, "Younger window should be available");
-    return second_word + (address)&_younger_window[reg->after_save()->sp_offset_in_saved_window()];
+    return _younger_window == NULL ? NULL :
+      second_word + (address)&_younger_window[reg->after_save()->sp_offset_in_saved_window()];
    }
    if (reg->is_local() || reg->is_in()) {
      assert(_window != NULL, "Window should be available");



More information about the hotspot-dev mailing list