2004-04-29 Philip Blundell * loop.c (scan_loop): Don't delete SET of a hard register. Index: loop.c =================================================================== RCS file: /cvs/gcc/gcc/gcc/loop.c,v retrieving revision 1.488.2.3 diff -u -r1.488.2.3 loop.c --- gcc/gcc/loop.c 14 Feb 2004 14:46:03 -0000 1.488.2.3 +++ gcc/gcc/loop.c 28 Apr 2004 22:02:53 -0000 @@ -929,6 +929,7 @@ || (! (GET_CODE (SET_SRC (set)) == REG && (REGNO (SET_SRC (set)) < FIRST_PSEUDO_REGISTER)))) + && regno >= FIRST_PSEUDO_REGISTER /* This test is not redundant; SET_SRC (set) might be a call-clobbered register and the life of REGNO might span a call. */