aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDoug Evans <dje@gnu.org>1994-12-12 18:17:32 +0000
committerDoug Evans <dje@gnu.org>1994-12-12 18:17:32 +0000
commit6405e07b8d9f79bdec810fc792ad5f4fc47f85e6 (patch)
treed9215ad3336ede2484f787b557594883b16bcf3c /gcc
parentea5917da8d3794e8eb162ed1c6d6bb5a76ba2607 (diff)
downloadgcc-6405e07b8d9f79bdec810fc792ad5f4fc47f85e6.zip
gcc-6405e07b8d9f79bdec810fc792ad5f4fc47f85e6.tar.gz
gcc-6405e07b8d9f79bdec810fc792ad5f4fc47f85e6.tar.bz2
(emit_store_flag): Set mode after canonicalizing op0/op1 so op1 is constant.
From-SVN: r8646
Diffstat (limited to 'gcc')
-rw-r--r--gcc/expmed.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/expmed.c b/gcc/expmed.c
index 92ac24c..2b9a29b 100644
--- a/gcc/expmed.c
+++ b/gcc/expmed.c
@@ -3727,9 +3727,6 @@ emit_store_flag (target, code, op0, op1, mode, unsignedp, normalizep)
rtx last = 0;
rtx pattern, comparison;
- if (mode == VOIDmode)
- mode = GET_MODE (op0);
-
/* If one operand is constant, make it the second one. Only do this
if the other operand is not constant as well. */
@@ -3742,6 +3739,9 @@ emit_store_flag (target, code, op0, op1, mode, unsignedp, normalizep)
code = swap_condition (code);
}
+ if (mode == VOIDmode)
+ mode = GET_MODE (op0);
+
/* For some comparisons with 1 and -1, we can convert this to
comparisons with zero. This will often produce more opportunities for
store-flag insns. */