diff options
author | Kyrylo Tkachov <kyrylo.tkachov@arm.com> | 2018-06-01 15:50:18 +0000 |
---|---|---|
committer | Kyrylo Tkachov <ktkachov@gcc.gnu.org> | 2018-06-01 15:50:18 +0000 |
commit | 77b8fb05b3ae9223abb7bac05d8af6892cfa251a (patch) | |
tree | 78d710facd7d9b41c56e3ec05bb671c79726df82 /gcc/fortran/iresolve.c | |
parent | 7aad7f4b8508e26248205c2b408186b5f8f71ce5 (diff) | |
download | gcc-77b8fb05b3ae9223abb7bac05d8af6892cfa251a.zip gcc-77b8fb05b3ae9223abb7bac05d8af6892cfa251a.tar.gz gcc-77b8fb05b3ae9223abb7bac05d8af6892cfa251a.tar.bz2 |
[AArch64] Used prefer aliases SXTL(2) and UXTL(2)
The SSHL and USHL instructions are used with a shift operand of zero to
sign and zero-extend integer vectors into wider modes.
GCC makes extensive use of them to "unpack" vectors.
AArch64 defines a shorthand alias for that case. Instead of writing:
SSHLL <Vd>.<Ta>, <Vn>.<Tb>, 0
we can write
SXTL <Vd>.<Ta>, <Vn>.<Tb>
Similar for the unsigned versions and the high-part versions (SSHL2 -> SXTL2).
This makes the assembly of vectorised functions a bit more readable.
* config/aarch64/aarch64-simd.md
(aarch64_simd_vec_unpack<su>_lo_<mode>): Use UXTL and SXTL assembler
mnemonics.
(aarch64_simd_vec_unpack<su>_hi_<mode>): Use UXTL2 and SXTL2 assembler
mnemonics.
From-SVN: r261073
Diffstat (limited to 'gcc/fortran/iresolve.c')
0 files changed, 0 insertions, 0 deletions