diff options
author | Uros Bizjak <ubizjak@gmail.com> | 2021-08-26 17:26:06 +0200 |
---|---|---|
committer | Uros Bizjak <ubizjak@gmail.com> | 2021-08-26 17:27:05 +0200 |
commit | 226eb7ff5d73669184a4a56cd348fa6c46b3ec52 (patch) | |
tree | 1d5c0e82cfa226c2bcd7951988fb4ce03a0febbb /gcc | |
parent | e28ac73af20028f829c4ba1ffd38ea84e7419b0d (diff) | |
download | gcc-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.md | 8 |
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" |