aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2024-07-10 23:00:00 +0200
committerUros Bizjak <ubizjak@gmail.com>2024-07-10 23:01:03 +0200
commitaae535f3a870659d1f002f82bd585de0bcec7905 (patch)
treefd9825365c3d65a17563896d51952f3f1e7ce1e2
parentf0fb6b6acd805cfd3197eaf78d5404fa45759727 (diff)
downloadgcc-aae535f3a870659d1f002f82bd585de0bcec7905.zip
gcc-aae535f3a870659d1f002f82bd585de0bcec7905.tar.gz
gcc-aae535f3a870659d1f002f82bd585de0bcec7905.tar.bz2
i386: Swap compare operands in ustrunc patterns
A last minute change led to a wrong operand order in the compare insn. gcc/ChangeLog: * config/i386/i386.md (ustruncdi<mode>2): Swap compare operands. (ustruncsi<mode>2): Ditto. (ustrunchiqi2): Ditto.
-rw-r--r--gcc/config/i386/i386.md6
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index e2f3069..de9f4ba 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -9990,7 +9990,7 @@
rtx sat = force_reg (DImode, GEN_INT (GET_MODE_MASK (<MODE>mode)));
rtx dst;
- emit_insn (gen_cmpdi_1 (op1, sat));
+ emit_insn (gen_cmpdi_1 (sat, op1));
if (TARGET_CMOVE)
{
@@ -10026,7 +10026,7 @@
rtx sat = force_reg (SImode, GEN_INT (GET_MODE_MASK (<MODE>mode)));
rtx dst;
- emit_insn (gen_cmpsi_1 (op1, sat));
+ emit_insn (gen_cmpsi_1 (sat, op1));
if (TARGET_CMOVE)
{
@@ -10062,7 +10062,7 @@
rtx sat = force_reg (HImode, GEN_INT (GET_MODE_MASK (QImode)));
rtx dst;
- emit_insn (gen_cmphi_1 (op1, sat));
+ emit_insn (gen_cmphi_1 (sat, op1));
if (TARGET_CMOVE)
{