RFR: 8278793: Interpreter(x64) intrinsify Thread.currentThread() [v2]

Robbin Ehn rehn at openjdk.java.net
Fri Dec 17 12:02:49 UTC 2021


> Please consider this enhancement.
> This makes Thread.currentThread() eight times faster on my box when running in interpreter.
> 
> Passes t1-t4
> 
> As suggested I added a related fix to Shenandoah.
> Shenandoah LB was using InterpreterMacroAssembler version of call_VM_leaf_base (it's virtual).
> The interpreter version adds a check on last_sp, since the intrinsic is not setting up a new frame, this check is faulty.
> Other GC seems to always use the base version, so let's use the base version in Shenandoah also.
> No issues found when locally running gc/shenandoah.

Robbin Ehn has updated the pull request incrementally with one additional commit since the last revision:

  Use resolve_oop_handle instead

-------------

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/6833/files
  - new: https://git.openjdk.java.net/jdk/pull/6833/files/e0d699c3..976baf2b

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=6833&range=01
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=6833&range=00-01

  Stats: 4 lines in 1 file changed: 0 ins; 2 del; 2 mod
  Patch: https://git.openjdk.java.net/jdk/pull/6833.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/6833/head:pull/6833

PR: https://git.openjdk.java.net/jdk/pull/6833


More information about the hotspot-dev mailing list