RFR: 8342103: C2 compiler support for Float16 type and associated operations
Bhavana Kilambi
bkilambi at openjdk.org
Wed Nov 20 15:05:20 UTC 2024
On Wed, 20 Nov 2024 14:57:11 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:
>> test/hotspot/jtreg/compiler/vectorization/TestFloat16VectorConvChain.java line 44:
>>
>>> 42: @Test
>>> 43: @IR(applyIfCPUFeatureAnd = {"avx512_fp16", "false", "avx512vl", "true"}, counts = {IRNode.VECTOR_CAST_HF2F, IRNode.VECTOR_SIZE_ANY, ">= 1", IRNode.VECTOR_CAST_F2HF, IRNode.VECTOR_SIZE_ANY, " >= 1"})
>>> 44: @IR(applyIfCPUFeatureAnd = {"avx512_fp16", "false", "f16c", "true"}, counts = {IRNode.VECTOR_CAST_HF2F, IRNode.VECTOR_SIZE_ANY, ">= 1", IRNode.VECTOR_CAST_F2HF, IRNode.VECTOR_SIZE_ANY, " >= 1"})
>>
>> Wouldn't the Ideal transforms convert the IR for this test case to -
>>
>> ReinterpretS2HF ReinterpretS2HF
>> \ /
>> AddHF
>> |
>> ReinterpretHF2S
>> |
>> ConvHF2F
>>
>> in which case, ConvF2HF won't match?
>
> New transforms are guarded by target features checks, the IR test rules are enforced only on non AVX512_FP16 targets.
Oh right! Sorry misread the IR test rules. Got it now. Thanks!
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/21490#discussion_r1850477856
More information about the core-libs-dev
mailing list