RFR: 8266252: Streamline AbstractInterpreter::method_kind [v6]

Claes Redestad redestad at openjdk.java.net
Mon May 10 08:17:30 UTC 2021


> This patch refactors AbstractInterpreter::method_kind to reduce branches on average while better compartmentalizing the exceptional cases.
> 
> Additionally Method::is_empty_method is trivial enough that making it inlineable helps reduce cost while reducing size of the libjvm.
> 
> Result is a 40% speed-up, or a reduction of .25% of instructions on Hello World that scales to larger applications.

Claes Redestad has updated the pull request incrementally with one additional commit since the last revision:

  8259316 added call to is_empty_method in compilerOracle.cpp so we now need to include method.inline.hpp there

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

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/3798/files
  - new: https://git.openjdk.java.net/jdk/pull/3798/files/d06002c9..9e11dc3e

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=3798&range=05
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=3798&range=04-05

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

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


More information about the hotspot-runtime-dev mailing list