ACLE intrinsics: BFloat16 store (vst<n>{q}_bf16) intrinsics for AArch32
Delia Burduv
delia.burduv@arm.com
Wed Feb 19 17:25:00 GMT 2020
Hi,
Here is the latest version of the patch. It just has some minor
formatting changes that were brought up by Richard Sandiford in the
AArch64 patches
Thanks,
Delia
On 1/22/20 5:29 PM, Delia Burduv wrote:
> Ping.
>
> I will change the tests to use the exact input and output registers as
> Richard Sandiford suggested for the AArch64 patches.
>
> On 12/20/19 6:46 PM, Delia Burduv wrote:
>> This patch adds the ARMv8.6 ACLE BFloat16 store intrinsics
>> vst<n>{q}_bf16 as part of the BFloat16 extension.
>> (https://developer.arm.com/architectures/instruction-sets/simd-isas/neon/intrinsics)
>>
>> The intrinsics are declared in arm_neon.h .
>> A new test is added to check assembler output.
>>
>> This patch depends on the Arm back-end patche.
>> (https://gcc.gnu.org/ml/gcc-patches/2019-12/msg01448.html)
>>
>> Tested for regression on arm-none-eabi and armeb-none-eabi. I don't
>> have commit rights, so if this is ok can someone please commit it for me?
>>
>> gcc/ChangeLog:
>>
>> 2019-11-14 Delia Burduv <delia.burduv@arm.com>
>>
>> Â Â Â Â Â * config/arm/arm_neon.h (bfloat16_t): New typedef.
>> Â Â Â Â Â Â Â Â (bfloat16x4x2_t): New typedef.
>> Â Â Â Â Â Â Â Â (bfloat16x8x2_t): New typedef.
>> Â Â Â Â Â Â Â Â (bfloat16x4x3_t): New typedef.
>> Â Â Â Â Â Â Â Â (bfloat16x8x3_t): New typedef.
>> Â Â Â Â Â Â Â Â (bfloat16x4x4_t): New typedef.
>> Â Â Â Â Â Â Â Â (bfloat16x8x4_t): New typedef.
>> Â Â Â Â Â Â Â Â (vst2_bf16): New.
>> Â Â Â Â Â (vst2q_bf16): New.
>> Â Â Â Â Â (vst3_bf16): New.
>> Â Â Â Â Â (vst3q_bf16): New.
>> Â Â Â Â Â (vst4_bf16): New.
>> Â Â Â Â Â (vst4q_bf16): New.
>> Â Â Â Â Â Â Â Â * config/arm/arm-builtins.c (E_V2BFmode): New mode.
>> Â Â Â Â Â Â Â Â (VAR13): New.
>> Â Â Â Â Â Â Â Â (arm_simd_types[Bfloat16x2_t]):New type.
>> Â Â Â Â Â Â Â Â * config/arm/arm-modes.def (V2BF): New mode.
>> Â Â Â Â Â Â Â Â * config/arm/arm-simd-builtin-types.def
>> Â Â Â Â Â Â Â Â (Bfloat16x2_t): New entry.
>> Â Â Â Â Â Â Â Â * config/arm/arm_neon_builtins.def
>> Â Â Â Â Â Â Â Â (vst2): Changed to VAR13 and added v4bf, v8bf
>> Â Â Â Â Â Â Â Â (vst3): Changed to VAR13 and added v4bf, v8bf
>> Â Â Â Â Â Â Â Â (vst4): Changed to VAR13 and added v4bf, v8bf
>> Â Â Â Â Â Â Â Â * config/arm/iterators.md (VDXBF): New iterator.
>> Â Â Â Â Â Â Â Â (VQ2BF): New iterator.
>> Â Â Â Â Â Â Â Â (V_elem): Added V4BF, V8BF.
>> Â Â Â Â Â Â Â Â (V_sz_elem): Added V4BF, V8BF.
>> Â Â Â Â Â Â Â Â (V_mode_nunits): Added V4BF, V8BF.
>> Â Â Â Â Â Â Â Â (q): Added V4BF, V8BF.
>> Â Â Â Â Â Â Â Â *config/arm/neon.md (vst2): Used new iterators.
>> Â Â Â Â Â Â Â Â (vst3): Used new iterators.
>> Â Â Â Â Â Â Â Â (vst3qa): Used new iterators.
>> Â Â Â Â Â Â Â Â (vst3qb): Used new iterators.
>> Â Â Â Â Â Â Â Â (vst4): Used new iterators.
>> Â Â Â Â Â Â Â Â (vst4qa): Used new iterators.
>> Â Â Â Â Â Â Â Â (vst4qb): Used new iterators.
>>
>>
>> gcc/testsuite/ChangeLog:
>>
>> 2019-11-14 Delia Burduv <delia.burduv@arm.com>
>>
>> Â Â Â Â Â * gcc.target/arm/simd/bf16_vstn_1.c: New test.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: rb12278.patch
Type: text/x-patch
Size: 15577 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20200219/da8bb3f1/attachment.bin>
More information about the Gcc-patches
mailing list