diff options
author | Przemyslaw Wirkus <przemyslaw.wirkus@arm.com> | 2020-08-28 11:31:04 +0100 |
---|---|---|
committer | Przemyslaw Wirkus <przemyslaw.wirkus@arm.com> | 2020-08-28 11:34:03 +0100 |
commit | b648814c02eb418aaf27897c480452172ee96303 (patch) | |
tree | 2609928e5512d866d11da73221bf3aa52df853d6 /gcc/fortran/trans-array.c | |
parent | 3b062fc43e1b564e2e18b5c89aa7b5463fcba735 (diff) | |
download | gcc-b648814c02eb418aaf27897c480452172ee96303.zip gcc-b648814c02eb418aaf27897c480452172ee96303.tar.gz gcc-b648814c02eb418aaf27897c480452172ee96303.tar.bz2 |
[PATCH PR96357][GCC][AArch64]: could not split insn UNSPEC_COND_FSUB with AArch64 SVE
Problem is related to that operand 4 (In original pattern
cond_sub<mode>_any_const) is no longer the same as operand 1, and so
the pattern doesn't match the split condition.
Pattern cond_sub<mode>_any_const is being split by this patch into two
separate patterns:
* Pattern cond_sub<mode>_relaxed_const now matches const_int
SVE_RELAXED_GP operand.
* Pattern cond_sub<mode>_strict_const now matches const_int
SVE_STRICT_GP operand.
* Remove aarch64_sve_pred_dominates_p condition from both patterns.
gcc/ChangeLog:
PR target/96357
* config/aarch64/aarch64-sve.md
(cond_sub<mode>_relaxed_const): Updated and renamed from
cond_sub<mode>_any_const pattern.
(cond_sub<mode>_strict_const): New pattern.
gcc/testsuite/ChangeLog:
PR target/96357
* gcc.target/aarch64/sve/pr96357.c: New test.
Diffstat (limited to 'gcc/fortran/trans-array.c')
0 files changed, 0 insertions, 0 deletions