On Wed, 24 Aug 2022 23:48:36 GMT, Smita Kamath <svkam...@openjdk.org> wrote:
>> 8289552: Make intrinsic conversions between bit representations of half >> precision values and floats > > Smita Kamath has updated the pull request incrementally with one additional > commit since the last revision: > > Updated copyright comment src/hotspot/cpu/x86/x86.ad line 1686: > 1684: case Op_ConvHF2F: > 1685: if (!VM_Version::supports_f16c() && !VM_Version::supports_evex() > && > 1686: !VM_Version::supports_avx512vl()) { The condition should be: if (!VM_Version::supports_f16c() && !(VM_Version::supports_evex() && VM_Version::supports_avx512vl())) { return false; } For AVX-512 both evex and avx512vl are needed. src/hotspot/cpu/x86/x86_64.ad line 11320: > 11318: ins_pipe( pipe_slow ); > 11319: %} > 11320: For F2HF, good to also add optimized rule with StoreC to benefit from vcvtps2ph memory destination form of instruction. match(Set mem (StoreC mem (ConvF2HF src))); src/hotspot/cpu/x86/x86_64.ad line 11330: > 11328: ins_pipe( pipe_slow ); > 11329: %} > 11330: For HF2F, good to also add optimized rule with LoadS to benefit from vcvtph2ps memory src form of instruction. match(Set dst (ConvHF2F ( LoadS mem))); ------------- PR: https://git.openjdk.org/jdk/pull/9781