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

Srinivas Vamsi Parasa sparasa at openjdk.org
Thu May 22 20:48:38 UTC 2025


On Thu, 22 May 2025 19:26:36 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:

>> Srinivas Vamsi Parasa has updated the pull request incrementally with five additional commits since the last revision:
>> 
>>  - refactor to use is_P6_or_later()
>>  - rename byte1 to opcode_byte
>>  - rename evex_opcode_prefix_and_encode as emit_eevex_or_demote
>>  - rename evex to eevex in method names
>>  - reset swap=false as default
>
> src/hotspot/cpu/x86/vm_version_x86.hpp line 680:
> 
>> 678:   static int  cpu_family()        { return _cpu;}
>> 679:   static bool is_P6()             { return cpu_family() >= 6; }
>> 680:   static bool is_P6_or_later()    { return cpu_family() == 6 || cpu_family() == 18 || cpu_family() == 19; }
> 
> ``` suggestion
>   static bool is_intel_server_family()    { return cpu_family() == 6 || cpu_family() == 18 || cpu_family() == 19; }
> 
> We already have is_P6(), which returns true for CPU family >=6, a minor name change suggestion.

Please see the updated code with the naming change as suggested.

> src/hotspot/cpu/x86/vm_version_x86.hpp line 680:
> 
>> 678:   static int  cpu_family()        { return _cpu;}
>> 679:   static bool is_P6()             { return cpu_family() >= 6; }
>> 680:   static bool is_P6_or_later()    { return cpu_family() == 6 || cpu_family() == 18 || cpu_family() == 19; }
> 
> Do we need cpu_family() == 18  check ?
> 19 is for Diamond Rapids and 6 for all Xerons before it, including E-core variants.

Removed cpu_family()==18.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/24431#discussion_r2103369018
PR Review Comment: https://git.openjdk.org/jdk/pull/24431#discussion_r2103369953


More information about the hotspot-compiler-dev mailing list