[lworld] RFR: 8235914: [lworld] Profile acmp bytecode [v2]

Roland Westrelin roland at openjdk.java.net
Tue Sep 15 13:44:20 UTC 2020

> This includes:
> - a new ProfileData structure to profile both inputs to acmp
> - profile collection at acmp in the interpreter on x86
> - profile collection at acmp in c1 generated code on x86
> - changes to c2's acmp implementation to leverage profiling (both existing profiling through type speculation and new
>   profile data at acmp)
> - small tweaks to the assembly code generated for acmp
> - a change to the implementation of LIRGenerator::profile_null_free_array() so it doesn't use a branch (which is
>   dangerous given the register allocator is not aware of branches added at the LIR level)
> - new tests
> Profile collection happens unconditionally. Leveraging profiling at acmp is under UseACmpProfile which is false by
> default.

Roland Westrelin has updated the pull request with a new target base due to a merge or a rebase. The pull request now
contains two commits:

 - fix for CI test failures
 - acmp profiling


Changes: https://git.openjdk.java.net/valhalla/pull/185/files
 Webrev: https://webrevs.openjdk.java.net/?repo=valhalla&pr=185&range=01
  Stats: 1272 lines in 44 files changed: 1146 ins; 70 del; 56 mod
  Patch: https://git.openjdk.java.net/valhalla/pull/185.diff
  Fetch: git fetch https://git.openjdk.java.net/valhalla pull/185/head:pull/185

PR: https://git.openjdk.java.net/valhalla/pull/185

More information about the valhalla-dev mailing list