RFR: JDK-8331732 : [PPC64] Unify and optimize code which converts != 0 to 1 [v11]

Suchismith Roy sroy at openjdk.org
Fri Jun 28 14:40:32 UTC 2024


> [JDK-8331732](https://bugs.openjdk.org/browse/JDK-8331732)
> The template interpreter contains branch-free conversion code for T_BOOLEAN (TemplateInterpreterGenerator::generate_result_handler_for).
> 
> SharedRuntime::generate_native_wrapper uses unoptimized code to "Unpack the native result" for T_BOOLEAN.
> Power10 has the "setbc" / "setbcr" instruction.
> 
> A new function has been created for the conversion and use "setbcr" on Power10 (determined by VM_Version::has_brw()) and otherwise the branch-free implementation. We should have a function for 32 and one for 64 bit operations (or one with supports both).
> 
> The new code for MacroAssembler::verify_secondary_supers_table  also uses the new function.

Suchismith Roy has updated the pull request incrementally with one additional commit since the last revision:

  nits

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/19886/files
  - new: https://git.openjdk.org/jdk/pull/19886/files/f0b1b087..b85c2726

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=19886&range=10
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=19886&range=09-10

  Stats: 2 lines in 1 file changed: 1 ins; 1 del; 0 mod
  Patch: https://git.openjdk.org/jdk/pull/19886.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/19886/head:pull/19886

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


More information about the hotspot-dev mailing list