diff options
author | Kyrylo Tkachov <kyrylo.tkachov@arm.com> | 2021-02-01 15:29:13 +0000 |
---|---|---|
committer | Kyrylo Tkachov <kyrylo.tkachov@arm.com> | 2021-02-01 16:45:05 +0000 |
commit | 8bfdf51d8595537937f990947a7a36d3a63dca5f (patch) | |
tree | 2b29abe9350fb4e45eb9d2b625d2c22102e63f99 /gcc/expr.c | |
parent | 6b2034c479e5882a8566393e4fb632a23cfd6ff0 (diff) | |
download | gcc-8bfdf51d8595537937f990947a7a36d3a63dca5f.zip gcc-8bfdf51d8595537937f990947a7a36d3a63dca5f.tar.gz gcc-8bfdf51d8595537937f990947a7a36d3a63dca5f.tar.bz2 |
aarch64: Reimplement vmovl_high_* intrinsics using builtins
The vmovl_high_* intrinsics map down to the SXTL2/UXTL2 instructions
that already have appropriately-named patterns and expanders,
so it's straightforward to wire them up.
gcc/ChangeLog:
* config/aarch64/aarch64-simd-builtins.def (vec_unpacks_hi,
vec_unpacku_hi_): Define builtins.
* config/aarch64/arm_neon.h (vmovl_high_s8): Reimplement using
builtin.
(vmovl_high_s16): Likewise.
(vmovl_high_s32): Likewise.
(vmovl_high_u8): Likewise.
(vmovl_high_u16): Likewise.
(vmovl_high_u32): Likewise.
gcc/testsuite/ChangeLog:
* gcc.target/aarch64/simd/vmovl_high_1.c: New test.
Diffstat (limited to 'gcc/expr.c')
0 files changed, 0 insertions, 0 deletions