[PATCH] aarch64: Use RTL builtins for [su]mlal_high_n intrinsics

Jonathan Wright Jonathan.Wright@arm.com
Wed Feb 3 12:28:58 GMT 2021


Hi,

As subject, this patch rewrites [su]mlal_high_n Neon intrinsics to use RTL
builtins rather than inline assembly code, allowing for better scheduling and
optimization.

Regression tested and bootstrapped on aarch64-none-linux-gnu and
aarch64_be-none-elf - no issues.

Ok for master?

Thanks,
Jonathan

--

gcc/ChangeLog:

2021-01-27  Jonathan Wright  <jonathan.wright@arm.com>

	* config/aarch64/aarch64-simd-builtins.def: Add [su]mlal_hi_n
	builtin generator macros.
	* config/aarch64/aarch64-simd.md (aarch64_<su>mlal_hi_n<mode>_insn):
	Define.
	(aarch64_<su>mlal_hi_n<mode>): Define.
	* config/aarch64/arm_neon.h (vmlal_high_n_s16): Use RTL builtin
	instead of inline asm.
	(vmlal_high_n_s32): Likewise.
	(vmlal_high_n_u16): Likewise.
	(vmlal_high_n_u32): Likewise.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: rb14080.patch
Type: text/x-patch
Size: 4339 bytes
Desc: rb14080.patch
URL: <https://gcc.gnu.org/pipermail/gcc-patches/attachments/20210203/5073c8b9/attachment.bin>


More information about the Gcc-patches mailing list