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

Sandhya Viswanathan sviswanathan at openjdk.org
Fri May 2 23:37:47 UTC 2025


On Fri, 2 May 2025 22:48:02 GMT, Srinivas Vamsi Parasa <sparasa at openjdk.org> wrote:

>> 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 one additional commit since the last revision:
> 
>   more clarifying comments next to boolean literals

src/hotspot/cpu/x86/assembler_x86.cpp line 4403:

> 4401:   emit_arith(0x0B, 0xC0, dst, src);
> 4402: }
> 4403: 

No need to add this function now.

src/hotspot/cpu/x86/assembler_x86.cpp line 12979:

> 12977:   }
> 12978:   emit_operand(src1, src2, 0);
> 12979: }

This function could be removed, not used.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/24431#discussion_r2072236026
PR Review Comment: https://git.openjdk.org/jdk/pull/24431#discussion_r2072236681


More information about the hotspot-compiler-dev mailing list