aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2021-08-26 17:26:06 +0200
committerUros Bizjak <ubizjak@gmail.com>2021-08-26 17:27:05 +0200
commit226eb7ff5d73669184a4a56cd348fa6c46b3ec52 (patch)
tree1d5c0e82cfa226c2bcd7951988fb4ce03a0febbb /gcc
parente28ac73af20028f829c4ba1ffd38ea84e7419b0d (diff)
downloadgcc-226eb7ff5d73669184a4a56cd348fa6c46b3ec52.zip
gcc-226eb7ff5d73669184a4a56cd348fa6c46b3ec52.tar.gz
gcc-226eb7ff5d73669184a4a56cd348fa6c46b3ec52.tar.bz2
[i386] Set all_regs to true in the call to replace_rtx [PR102057]
We want to replace all REGs equal to FROM. 2021-08-26 Uroš Bizjak <ubizjak@gmail.com> gcc/ PR target/102057 * config/i386/i386.md (cmove reg-reg move elimination peephole2s): Set all_regs to true in the call to replace_rtx.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/i386/i386.md8
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index 41d8562..c80dcb5 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -19475,8 +19475,8 @@
(match_dup 0)))]
{
operands[7] = SET_DEST (XVECEXP (PATTERN (peep2_next_insn (1)), 0, 0));
- operands[8] = replace_rtx (operands[5], operands[0], operands[1]);
- operands[9] = replace_rtx (operands[6], operands[0], operands[1]);
+ operands[8] = replace_rtx (operands[5], operands[0], operands[1], true);
+ operands[9] = replace_rtx (operands[6], operands[0], operands[1], true);
})
;; Eliminate a reg-reg mov by inverting the condition of a cmov (#2).
@@ -19507,8 +19507,8 @@
(match_dup 0)))]
{
operands[7] = SET_DEST (XVECEXP (PATTERN (peep2_next_insn (2)), 0, 0));
- operands[8] = replace_rtx (operands[5], operands[0], operands[1]);
- operands[9] = replace_rtx (operands[6], operands[0], operands[1]);
+ operands[8] = replace_rtx (operands[5], operands[0], operands[1], true);
+ operands[9] = replace_rtx (operands[6], operands[0], operands[1], true);
})
(define_expand "mov<mode>cc"