RFR: 8278793: Interpreter(x64) intrinsify Thread.currentThread()
    Robbin Ehn 
    rehn at openjdk.java.net
       
    Fri Dec 17 08:40:55 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.
-------------
Commit messages:
 - We must use the MacroAssembler version of the call VM when not having a proper intepreter frame
 - Intrinsic
Changes: https://git.openjdk.java.net/jdk/pull/6833/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=6833&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8278793
  Stats: 35 lines in 6 files changed: 31 ins; 0 del; 4 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