Path: utzoo!telly!lethe!dptcdc!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!BAYES.ARC.NASA.GOV!self From: self@BAYES.ARC.NASA.GOV (Matthew Self) Newsgroups: gnu.gcc.bug Subject: more patches to loop.c Message-ID: <8904010147.AA01751@bayes.arc.nasa.gov> Date: 1 Apr 89 01:47:05 GMT References: <4561@xyzzy.UUCP> Sender: daemon@tut.cis.ohio-state.edu Distribution: gnu Organization: GNUs Not Usenet Lines: 35 Here are some more patches to loop.c which remove the MINUS vs. COMPARE bugs found by Michael Meissner. This patch combines the patches from my previous posting (revised) and a patch by Jim Wilson. *** loop.c.tar Fri Mar 31 15:33:33 1989 --- loop.c Fri Mar 31 15:34:44 1989 *************** *** 4104,4109 **** if (GET_CODE (SET_SRC (PATTERN (p))) == REG) tested_before_loop = SET_SRC (PATTERN (p)); ! else if (GET_CODE (SET_SRC (PATTERN (p))) == MINUS ! && GET_CODE (XEXP (SET_SRC (PATTERN (p)), 1)) == REG && XEXP (SET_SRC (PATTERN (p)), 1) == const0_rtx) tested_before_loop = XEXP (SET_SRC (PATTERN (p)), 0); --- 4104,4109 ---- if (GET_CODE (SET_SRC (PATTERN (p))) == REG) tested_before_loop = SET_SRC (PATTERN (p)); ! else if (GET_CODE (SET_SRC (PATTERN (p))) == COMPARE ! && GET_CODE (XEXP (SET_SRC (PATTERN (p)), 0)) == REG && XEXP (SET_SRC (PATTERN (p)), 1) == const0_rtx) tested_before_loop = XEXP (SET_SRC (PATTERN (p)), 0); *************** *** 4486,4490 **** { /* Replace biv with the giv's reduced register. */ ! SET_SRC (PATTERN (insn)) = gen_rtx (MINUS, GET_MODE (v->new_reg), v->new_reg, v->add_val); --- 4486,4490 ---- { /* Replace biv with the giv's reduced register. */ ! SET_SRC (PATTERN (insn)) = gen_rtx (COMPARE, GET_MODE (v->new_reg), v->new_reg, v->add_val);