diff options
author | Jonathan Wright <jonathan.wright@arm.com> | 2021-04-22 15:04:19 +0100 |
---|---|---|
committer | Jonathan Wright <jonathan.wright@arm.com> | 2021-04-28 21:14:03 +0100 |
commit | c99f3747131377956e3bd8e393911c959ef5ff34 (patch) | |
tree | 92008790ab16691b44bf768842cc63098e83fe57 /gcc/fortran/openmp.c | |
parent | 6a82f012c4a1c12468b154c59b817dc2d4d044c5 (diff) | |
download | gcc-c99f3747131377956e3bd8e393911c959ef5ff34.zip gcc-c99f3747131377956e3bd8e393911c959ef5ff34.tar.gz gcc-c99f3747131377956e3bd8e393911c959ef5ff34.tar.bz2 |
aarch64: Remove unspecs from [su]qmovn RTL pattern
Saturating truncation can be expressed using the RTL expressions
ss_truncate and us_truncate. This patch changes the implementation
of the vqmovn_* intrinsics to use these RTL expressions rather than
a pair of unspecs. The redundant unspecs are removed along with their
code iterator.
gcc/ChangeLog:
2021-04-12 Jonathan Wright <jonathan.wright@arm.com>
* config/aarch64/aarch64-simd-builtins.def: Modify comment to
make consistent with updated RTL pattern.
* config/aarch64/aarch64-simd.md (aarch64_<sur>qmovn<mode>):
Implement using ss_truncate and us_truncate rather than
unspecs.
* config/aarch64/iterators.md: Remove redundant unspecs and
iterator: UNSPEC_[SU]QXTN and SUQMOVN respectively.
Diffstat (limited to 'gcc/fortran/openmp.c')
0 files changed, 0 insertions, 0 deletions