diff options
author | Marek Michalkiewicz <marekm@amelek.gda.pl> | 2002-05-19 22:08:12 +0200 |
---|---|---|
committer | Marek Michalkiewicz <marekm@gcc.gnu.org> | 2002-05-19 20:08:12 +0000 |
commit | 651c5ed94aa771ad26036f0cadecb1fa16b4232b (patch) | |
tree | bec386d6db41fc4c9af6eccb43953ff04523922c | |
parent | 61039cd09eed677f690943bca7dc0d122e19ddcb (diff) | |
download | gcc-651c5ed94aa771ad26036f0cadecb1fa16b4232b.zip gcc-651c5ed94aa771ad26036f0cadecb1fa16b4232b.tar.gz gcc-651c5ed94aa771ad26036f0cadecb1fa16b4232b.tar.bz2 |
avr.c (machine_dependent_reorg): Sign extend the CONST_INT operand to the correct mode after adding 1 to it.
* config/avr/avr.c (machine_dependent_reorg): Sign extend the
CONST_INT operand to the correct mode after adding 1 to it.
From-SVN: r53638
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/avr/avr.c | 6 |
2 files changed, 8 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ab60966..75fdf27 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2002-05-19 Marek Michalkiewicz <marekm@amelek.gda.pl> + + * config/avr/avr.c (machine_dependent_reorg): Sign extend the + CONST_INT operand to the correct mode after adding 1 to it. + 2002-05-19 Mark Mitchell <mark@codesourcery.com> * config.gcc (powerpc-wrs-windiss*): New target. diff --git a/gcc/config/avr/avr.c b/gcc/config/avr/avr.c index ea2a193..f75de5e 100644 --- a/gcc/config/avr/avr.c +++ b/gcc/config/avr/avr.c @@ -5067,11 +5067,11 @@ machine_dependent_reorg (first_insn) rtx pat = PATTERN (next); rtx src = SET_SRC (pat); rtx t = XEXP (src,0); + enum machine_mode mode = GET_MODE (XEXP (pattern, 0)); - if (avr_simplify_comparision_p (GET_MODE (XEXP (pattern,0)), - GET_CODE (t), x)) + if (avr_simplify_comparision_p (mode, GET_CODE (t), x)) { - XEXP (pattern,1) = GEN_INT (INTVAL (x)+1); + XEXP (pattern, 1) = gen_int_mode (INTVAL (x) + 1, mode); PUT_CODE (t, avr_normalize_condition (GET_CODE (t))); INSN_CODE (next) = -1; INSN_CODE (insn) = -1; |