diff options
author | Jakub Jelinek <jakub@redhat.com> | 2020-12-05 01:31:08 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2020-12-05 01:31:08 +0100 |
commit | 625e002396f7d0108f845bfba6a6f4f4fcadad05 (patch) | |
tree | e95636e6cc0061cde0d1f9b22684c171dae92a24 /gcc | |
parent | 43e84ce7d62be121445e17cc0ee009a81fb285d7 (diff) | |
download | gcc-625e002396f7d0108f845bfba6a6f4f4fcadad05.zip gcc-625e002396f7d0108f845bfba6a6f4f4fcadad05.tar.gz gcc-625e002396f7d0108f845bfba6a6f4f4fcadad05.tar.bz2 |
i386: Combine splitters followup [PR96226]
Here is the patch to simplify the newly added combine splitters,
when we split into 2 insns anyway, no reason to split into the masking
define_insn_and_split we'd be splitting shortly after.
2020-12-05 Jakub Jelinek <jakub@redhat.com>
PR target/96226
* config/i386/i386.md (splitter after *<rotate_insn><mode>3_mask,
splitter after *<rotate_insn><mode>3_mask_1): Drop the masking from
the patterns to split into.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/config/i386/i386.md | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index 129d47b..0b28895 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -11988,8 +11988,7 @@ [(set (match_dup 4) (match_dup 1)) (set (match_dup 0) (any_rotate:SWI48 (match_dup 4) - (subreg:QI - (and:SI (match_dup 2) (match_dup 3)) 0)))] + (subreg:QI (match_dup 2) 0)))] "operands[4] = gen_reg_rtx (<MODE>mode);") (define_insn_and_split "*<rotate_insn><mode>3_mask_1" @@ -12023,8 +12022,7 @@ == GET_MODE_BITSIZE (<MODE>mode) - 1" [(set (match_dup 4) (match_dup 1)) (set (match_dup 0) - (any_rotate:SWI48 (match_dup 4) - (and:QI (match_dup 2) (match_dup 3))))] + (any_rotate:SWI48 (match_dup 4) (match_dup 2)))] "operands[4] = gen_reg_rtx (<MODE>mode);") ;; Implement rotation using two double-precision |