Delia Burduv <delia.bur...@arm.com> writes: > Sure, here it is. I'll do that for the other patch too.
Thanks, belatedly pushed as f78335df69993a900512f92324cab6a20b1bde0c. Sorry for the delay. Richard > > Thanks, > Delia > > On 1/31/20 3:37 PM, Richard Sandiford wrote: >> Delia Burduv <delia.bur...@arm.com> writes: >>> Thank you, Richard! >>> >>> Here is the updated patch. The test that checks for errors when bf16 is >>> disabled is in the bfcvt patch. >> >> Looks good. Just a couple of very minor things... >> >>> >>> Cheers, >>> Delia >>> >>> gcc/ChangeLog: >>> >>> 2019-11-06 Delia Burduv <delia.bur...@arm.com> >>> >>> * config/aarch64/aarch64-simd-builtins.def >>> (bfcvtn): New built-in function. >>> (bfcvtn_q): New built-in function. >>> (bfcvtn2): New built-in function. >>> (bfcvt): New built-in function. >>> * config/aarch64/aarch64-simd.md >>> (aarch64_bfcvtn<q><mode>): New pattern. >>> (aarch64_bfcvtn2v8bf): New pattern. >>> (aarch64_bfcvtbf): New pattern. >>> * config/aarch64/arm_bf16.h (float32_t): New typedef. >>> (vcvth_bf16_f32): New intrinsic. >>> * config/aarch64/arm_bf16.h (vcvt_bf16_f32): New intrinsic. >>> (vcvtq_low_bf16_f32): New intrinsic. >>> (vcvtq_high_bf16_f32): New intrinsic. >>> * config/aarch64/iterators.md (V4SF_TO_BF): New mode iterator. >>> (UNSPEC_BFCVTN): New UNSPEC. >>> (UNSPEC_BFCVTN2): New UNSPEC. >>> (UNSPEC_BFCVT): New UNSPEC. >>> * config/arm/types.md (bf_cvt): New type. >> >> The patch no longer changes types.md. :-) >> >>> diff --git >>> a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfmlalbt-compile.c >>> b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfmlalbt-compile.c >>> new file mode 100644 >>> index >>> 0000000000000000000000000000000000000000..9feb7ee7905cb14037427a36797fc67a6fa3fbc8 >>> --- /dev/null >>> +++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfmlalbt-compile.c >>> @@ -0,0 +1,67 @@ >>> +/* { dg-do assemble { target { aarch64*-*-* } } } */ >>> +/* { dg-require-effective-target arm_v8_2a_bf16_neon_ok } */ >>> +/* { dg-add-options arm_v8_2a_bf16_neon } */ >>> +/* { dg-additional-options "-save-temps" } */ >>> +/* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */ >>> + >>> +#include <arm_neon.h> >>> + >>> +/* >>> +**test_bfmlalb: >>> +** bfmlalb\tv0.4s, v1.8h, v2.8h >> >> This version uses \t while the previous one used literal tabs. >> TBH I think the literal tab is nicer (and what we use for SVE FWIW). >> >> OK with those changes, thanks. Seems silly to ask when the changes >> are so trivial, but: please could you post an updated patch so that >> I can apply verbatim? >> >> Richard >>