Hi Coleen,

thanks for implementing it for all platforms.

PPC64: looks good.

s390: The tm instruction produces a special condition code. z_brnaz should be 
used (please don't omit the 'a').

Tested interpreter safepoint polling by:
jdk/bin/java -Xint -XX:-UseBiasedLocking -XX:+SafepointTimeout 
-XX:+SafepointALot -XX:+AbortVMOnSafepointTimeout -XX:SafepointTimeoutDelay=300 
-XX:GuaranteedSafepointInterval=300 TestLoop

(With some long running TestLoop.)

This test crashed with z_brnz as expected, but worked with z_brnaz.

Thanks and best regards,
Martin


> -----Original Message-----
> From: hotspot-dev <hotspot-dev-boun...@openjdk.java.net> On Behalf Of
> coleen.phillim...@oracle.com
> Sent: Montag, 13. April 2020 16:34
> To: hotspot-dev developers <hotspot-...@openjdk.java.net>;
> serviceability-dev@openjdk.java.net
> Subject: RFR (S) 8074292: nsk/jdb/kill/kill001: generateOopMap.cpp
> assert(bb->is_reachable()) failed
> 
> Summary: Do not install async exceptions at_safepoint for each bytecode.
> 
> See CR for a lot more details.  This change calls a new
> InterpreterRuntime::at_safepoint_async_safe() which installs the async
> exception in the interpreter at backward branches and returns.  This
> uses safepoint polling code in the interpreter for each platform.  These
> changes (cross) compile on platforms that Oracle doesn't support but I
> don't know if they work.
> 
> I'm not convinced the platform specific changes are necessary, because
> calls to the runtime from many bytecodes will install the async
> exception, so it's essentially installed "enough" for this deprecated
> feature.  I tested the changes with *and* without the platform specific
> changes with no failure, which included the jdb, jdi and jvmti
> serviceability tests.
> 
> This change also makes InterpreterRuntime::monitorexit a JRT_LEAF
> bytecode. The code to check for exceptions is outside the runtime call.
> I ran the JCK vm and lang tests on this change with no failure.
> 
> Tested with tier1-6.
> 
> open webrev at
> http://cr.openjdk.java.net/~coleenp/2020/8074292.01/webrev
> bug link https://bugs.openjdk.java.net/browse/JDK-8074292
> 
> Thanks,
> Coleen

Reply via email to