https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96357
--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Przemyslaw Wirkus <wir...@gcc.gnu.org>: https://gcc.gnu.org/g:b648814c02eb418aaf27897c480452172ee96303 commit r11-2922-gb648814c02eb418aaf27897c480452172ee96303 Author: Przemyslaw Wirkus <przemyslaw.wir...@arm.com> Date: Fri Aug 28 11:31:04 2020 +0100 [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.