This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
regmove broken
- To: egcs at cygnus dot com
- Subject: regmove broken
- From: Andreas Schwab <schwab at issan dot informatik dot uni-dortmund dot de>
- Date: 02 Feb 1998 11:06:44 +0100
This change to regmove.c is broken:
(fixup_match_1): Remove statement with no effect: "if (0) ;".
This if is really needed, which becomes obvious when looking at the lines
that follow.
1998-01-30 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* regmove.c (fixup_match_1): Undo last change, and add a comment
explaining this.
*** egcs-980129/gcc/regmove.c.~1~ Fri Jan 30 19:10:00 1998
--- egcs-980129/gcc/regmove.c Fri Jan 30 19:49:44 1998
*************** fixup_match_1 (insn, set, src, src_subre
*** 1216,1222 ****
}
}
}
!
#if defined (HAVE_PRE_INCREMENT) || defined (HAVE_PRE_DECREMENT)
else if ((code == PLUS || code == MINUS) && insn_const
&& try_auto_increment (p, insn, 0, src, insn_const, 1))
--- 1216,1226 ----
}
}
}
!
! /* Don't remove this seemingly useless if, it is needed to pair with the
! else in the next two conditionally included code blocks. */
! if (0)
! {;}
#if defined (HAVE_PRE_INCREMENT) || defined (HAVE_PRE_DECREMENT)
else if ((code == PLUS || code == MINUS) && insn_const
&& try_auto_increment (p, insn, 0, src, insn_const, 1))