diff options
author | Doug Evans <dje@gnu.org> | 1994-12-12 18:17:32 +0000 |
---|---|---|
committer | Doug Evans <dje@gnu.org> | 1994-12-12 18:17:32 +0000 |
commit | 6405e07b8d9f79bdec810fc792ad5f4fc47f85e6 (patch) | |
tree | d9215ad3336ede2484f787b557594883b16bcf3c /gcc | |
parent | ea5917da8d3794e8eb162ed1c6d6bb5a76ba2607 (diff) | |
download | gcc-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.c | 6 |
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. */ |