RFR: 8364305: Support AVX10 saturating floating point conversion instructions [v17]

Mohamed Issa missa at openjdk.org
Fri Sep 26 18:34:04 UTC 2025


On Fri, 26 Sep 2025 09:09:02 GMT, Manuel Hässig <mhaessig at openjdk.org> wrote:

>> Mohamed Issa has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 21 additional commits since the last revision:
>> 
>>  - Merge branch 'master' of https://github.com/missa-prime/jdk into user/missa-prime/avx10_2
>>  - Use compiler generator instead of standard Java streams
>>  - Clean up scalar floating point conversion tests
>>  - Introduce scalar floating point conversion tests with IR rules
>>  - Add extra constraints to vector floating point conversion instruction predicates and tests
>>  - Change the floating point conversion instruction, IR nodes, and test rules to make them clearer
>>  - Change debug text format of AVX 10.2 vector conversion instructions
>>  - Check for instructions that shouldn't appear in vector floating point conversion tests
>>  - Correctly calculate vector lengths and don't rely on VectorReinterpret in cast2F2X and cast2D2X memory instructions
>>  - Add new IR nodes covering x86 floating point conversion instructions
>>  - ... and 11 more: https://git.openjdk.org/jdk/compare/66285fb8...0415ddf2
>
> src/hotspot/cpu/x86/c2_MacroAssembler_x86.cpp line 5182:
> 
>> 5180:       evpmovdb(dst, dst, vec_enc);
>> 5181:       break;
>> 5182:     default: assert(false, "%s", type2name(to_elem_bt));
> 
> Perhaps you could provide a richer assert message like this:
> Suggestion:
> 
>     default: assert(false, "unexpexted basic type for vector castF2X AVX10: %s", type2name(to_elem_bt));

Sure, I added more verbose messages for the other vector casts as well.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/26919#discussion_r2383175122


More information about the hotspot-compiler-dev mailing list