summaryrefslogtreecommitdiff
path: root/gcc/expmed.c
diff options
context:
space:
mode:
authordje <dje@138bc75d-0d04-0410-961f-82ee72b054a4>1994-12-12 18:17:32 +0000
committerdje <dje@138bc75d-0d04-0410-961f-82ee72b054a4>1994-12-12 18:17:32 +0000
commitb65270aa5699f61c229bf900d9576157d7550803 (patch)
treed9215ad3336ede2484f787b557594883b16bcf3c /gcc/expmed.c
parent8ebcf32eb51695a5614d381c1d3f3ade5fa6bed3 (diff)
downloadgcc-b65270aa5699f61c229bf900d9576157d7550803.tar.gz
(emit_store_flag): Set mode after canonicalizing op0/op1 so op1 is constant.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@8646 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/expmed.c')
-rw-r--r--gcc/expmed.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/expmed.c b/gcc/expmed.c
index 92ac24c9ac7..2b9a29bf978 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. */