diff options
| -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; | 
