[master] RFR: Remaining changes to load_[n]klass implementation in x86 assembly

Roman Kennke rkennke at openjdk.java.net
Wed Feb 2 15:25:05 UTC 2022


This change addresses some remaining problems in the x86 implementation of load_klass:
 - Split load_klass() and load_nklass()
 - Fix arraycopy stubs to use load_nklass() instead of direct access of the Klass* field
 - Use call stub for the slowpath runtime call (that reduces generated code size)
 - Save/restore FPU registers around runtime call

Testing:
 - [x] tier1
 - [ ] tier2
 - [ ] tier3

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

Commit messages:
 - Cleanups
 - Merge branch 'master' into arraycopy-nklass
 - Trim code size estimate
 - Clean up and remaining fixes/improvements
 - Re-arrange 64/32bit code
 - Use movl to load nklass, not movptr
 - Improve handling of nklass_offset_in_bytes
 - Merge branch 'master' into arraycopy-nklass
 - Fix 32 bit
 - Merge branch 'master' into arraycopy-nklass
 - ... and 1 more: https://git.openjdk.java.net/lilliput/compare/e3b8f983...7cdb274a

Changes: https://git.openjdk.java.net/lilliput/pull/31/files
 Webrev: https://webrevs.openjdk.java.net/?repo=lilliput&pr=31&range=00
  Stats: 130 lines in 5 files changed: 80 ins; 26 del; 24 mod
  Patch: https://git.openjdk.java.net/lilliput/pull/31.diff
  Fetch: git fetch https://git.openjdk.java.net/lilliput pull/31/head:pull/31

PR: https://git.openjdk.java.net/lilliput/pull/31


More information about the lilliput-dev mailing list