RFR: 8280152: AArch64: Reuse runtime call trampolines [v6]

Yi-Fan Tsai duke at openjdk.org
Mon Aug 1 06:42:58 UTC 2022


> A trampoline stub could be generated for each runtime call. These trampolines could be duplication if the callees are the same. This change delays the stub generation and generates one stub for a distinct callee.
> 
> Benchmark als, chi-square, dec-tree, gauss-mix, log-regression, movie-lens, naive-bayes, page-rank, fj-means, reactors, future-genetic, mnemonics, dotty, scala-kmeans, and finagle-http in Renaissance (0.14.1) are tested. The sum of the used size of CodeHeap 'non-profiled nmethods' and CodeHeap 'profiled nmethods' shows ~4.7% reduction on average.

Yi-Fan Tsai has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains seven additional commits since the last revision:

 - Merge branch 'master' of https://github.com/yftsai/jdk into JDK-8280152
 - Reduce maximum hash table size and cleanup
 - Use ResizeableResourceHashtable
 - Use a hash table to deduplicate
 - Rename variables
 - Remove dead codes
 - Reuse runtime call trampolines

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/9405/files
  - new: https://git.openjdk.org/jdk/pull/9405/files/baf72825..877ebb8b

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=9405&range=05
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=9405&range=04-05

  Stats: 105004 lines in 2480 files changed: 55826 ins; 32033 del; 17145 mod
  Patch: https://git.openjdk.org/jdk/pull/9405.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/9405/head:pull/9405

PR: https://git.openjdk.org/jdk/pull/9405


More information about the hotspot-dev mailing list