RFR: 8351016: RA support for EVEX to REX/REX2 demotion to optimize NDD instructions [v2]
Jatin Bhateja
jbhateja at openjdk.org
Fri Sep 19 12:55:42 UTC 2025
On Tue, 26 Aug 2025 23:37:01 GMT, Sandhya Viswanathan <sviswanathan at openjdk.org> wrote:
>> Jatin Bhateja has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains four commits:
>>
>> - Updating as per reivew suggestions
>> - Merge branch 'master' of http://github.com/openjdk/jdk into JDK-8351016
>> - Some refactoring
>> - 8351016: RA support for EVEX to REX/REX2 demotion to optimize NDD instructions
>
> src/hotspot/share/opto/chaitin.cpp line 1655:
>
>> 1653: };
>> 1654:
>> 1655: if (X86_ONLY(UseAPX) NOT_X86(false)) {
>
> The change looks to be generically applicable and not APX or X86 specific.
Hi @sviswa7, I have generalized the fix by lifting X86/APX checks as per the suggestion. Though, our intent here is to facilitate the demotion of NDD instructions having 4 byte EEVEX prefix, in other scenarios of 3-operand instructions, we may not see any benefit from biasing. If a use's live range (LRG) surpasses its user's LRG then, RA automatically prevents sharing of register, in other case **it may** assign the same register to definition as per first allocation policy. Thus, biasing is only favorable to APX NDD use case where assembler layer is equipped to perform demotion.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/26283#discussion_r2362786986
More information about the hotspot-compiler-dev
mailing list