RFR: 8351994: Enable Extended EVEX to REX2/REX demotion when src and dst are the same [v15]

Srinivas Vamsi Parasa sparasa at openjdk.org
Fri May 2 22:23:00 UTC 2025


> The current scheme for Intel APX NDD code generation favors the emission of NDD instruction on APX-enabled targets, even if destination and source registers are the same. To prevent this, this PR extends the assembler layer to demote EEVEX to REX encoding if dst matches with source operands.

Srinivas Vamsi Parasa has updated the pull request incrementally with six additional commits since the last revision:

 - replace evex_opcode_and_int16_nf with evex_opcode_prefix_and_encode
 - Remove unused functions
 - replace evex_opcode_and_int16_ndd with evex_opcode_prefix_and_encode_swap
 - replace evex_opcode_int24_ndd with evex_opcode_prefix_and_encode
 - Replace evex_opcode_int16_ndd with evex_opcode_prefix_encoding
 - refactor emit_arith and evex_prefix_int8_operand

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/24431/files
  - new: https://git.openjdk.org/jdk/pull/24431/files/6a01e747..a1bea4e4

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=24431&range=14
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=24431&range=13-14

  Stats: 180 lines in 2 files changed: 41 ins; 53 del; 86 mod
  Patch: https://git.openjdk.org/jdk/pull/24431.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/24431/head:pull/24431

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


More information about the hotspot-compiler-dev mailing list