aboutsummaryrefslogtreecommitdiff
path: root/gcc/fold-const.c
diff options
context:
space:
mode:
authorRichard Sandiford <richard.sandiford@linaro.org>2018-03-13 15:12:14 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2018-03-13 15:12:14 +0000
commit11e9443f49729ae4ddfc9dda63b5ad7f65f33170 (patch)
treebca5ae159b99940d6448ecc1c33e26fca91d47f6 /gcc/fold-const.c
parentc9b39302efd79e2ef9c8f922b3068633edd40e76 (diff)
downloadgcc-11e9443f49729ae4ddfc9dda63b5ad7f65f33170.zip
gcc-11e9443f49729ae4ddfc9dda63b5ad7f65f33170.tar.gz
gcc-11e9443f49729ae4ddfc9dda63b5ad7f65f33170.tar.bz2
[AArch64] Add SVE mul_highpart patterns
One advantage of the new permute handling compared to the old way is that we can now easily take advantage of the vectoriser's divmod patterns for SVE. 2018-03-13 Richard Sandiford <richard.sandiford@linaro.org> gcc/ * config/aarch64/iterators.md (UNSPEC_SMUL_HIGHPART) (UNSPEC_UMUL_HIGHPART): New constants. (MUL_HIGHPART): New int iteraor. (su): Handle UNSPEC_SMUL_HIGHPART and UNSPEC_UMUL_HIGHPART. * config/aarch64/aarch64-sve.md (<su>mul<mode>3_highpart): New define_expand. (*<su>mul<mode>3_highpart): New define_insn. gcc/testsuite/ * gcc.target/aarch64/sve/mul_highpart_1.c: New test. * gcc.target/aarch64/sve/mul_highpart_1_run.c: Likewise. From-SVN: r258487
Diffstat (limited to 'gcc/fold-const.c')
0 files changed, 0 insertions, 0 deletions