RFR: 8266252: Streamline AbstractInterpreter::method_kind

Claes Redestad redestad at openjdk.java.net
Thu Apr 29 16:15:09 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.

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

Commit messages:
 - Improve comment
 - Select native as the kind for StrictMath::sqrt
 - Streamline AbstractInterpreter::method_kind

Changes: https://git.openjdk.java.net/jdk/pull/3798/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3798&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8266252
  Stats: 89 lines in 3 files changed: 28 ins; 37 del; 24 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-dev mailing list