aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2020-12-05 01:31:08 +0100
committerJakub Jelinek <jakub@redhat.com>2020-12-05 01:31:08 +0100
commit625e002396f7d0108f845bfba6a6f4f4fcadad05 (patch)
treee95636e6cc0061cde0d1f9b22684c171dae92a24
parent43e84ce7d62be121445e17cc0ee009a81fb285d7 (diff)
downloadgcc-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.
-rw-r--r--gcc/config/i386/i386.md6
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