[gnu.gcc.bug] MINUS vs. COMPARE in loop.c

self@BAYES.ARC.NASA.GOV (Matthew Self) (03/28/89)

  I looked through loop.c for MINUS's where COMPARE's should be, and I
found one place where it should be fixed.  It couldn't have caused
your problem since this code recognizes comparisons; it doesn't
generate them.  All the same, here is the diff.

  --Matthew

*** loop.c	Thu Mar 23 22:21:03 1989
--- loop.c.cmp	Mon Mar 27 12:37:54 1989
***************
*** 4352,4356 ****
  	  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)
--- 4352,4356 ----
  	  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)), 1)) == REG
  		   && XEXP (SET_SRC (PATTERN (p)), 1) == const0_rtx)

P.S. Oughtn't the second to last line above have a 0 rather than a 1?
const0_rtx doesn't have code REG....