RFR(s): 8205581: PPC64: RTM: Fix abort on native calls

Doerr, Martin martin.doerr at sap.com
Mon Jun 25 16:37:09 UTC 2018


Hi Gustavo,

I wonder why you placed the tabort so late in generate_native_wrapper. I'd put it at the Verified Entry Point.

Besides that, it looks good to me.

Thanks,
Martin


-----Original Message-----
From: Gustavo Romero [mailto:gromero at linux.vnet.ibm.com] 
Sent: Montag, 25. Juni 2018 10:21
To: Lindenmaier, Goetz <goetz.lindenmaier at sap.com>; Doerr, Martin <martin.doerr at sap.com>; hotspot-compiler-dev at openjdk.java.net
Cc: ppc-aix-port-dev at openjdk.java.net
Subject: RFR(s): 8205581: PPC64: RTM: Fix abort on native calls

Hi,

Could the following change be reviewed please?

bug   : https://bugs.openjdk.java.net/browse/JDK-8205581
webrev: http://cr.openjdk.java.net/~gromero/8205581/v1/

It forces a transactional state to abort before calling native methods, before
calling runtime, and on uncommon trap checking, mostly because transaction will
be aborted soon or latter in either case, similarly to what happens on Intel.
The abort instruction (tabort) is only emitted if UseRTMLocking is "true" and
any 'tabort' instruction is treated as a 'nop' instruction if TM state is
non-transactional.

It fixes the following tests:

+Passed: compiler/rtm/print/TestPrintPreciseRTMLockingStatistics.java
+Passed: compiler/rtm/locking/TestRTMDeoptOnHighAbortRatio.java


Thank you and best regards,
Gustavo



More information about the ppc-aix-port-dev mailing list