loop.c (scan_loop): Do not consider insns setting the frame pointer to be candidates...
authorUlrich Weigand <uweigand@de.ibm.com>
Sun, 19 Jun 2005 13:27:04 +0000 (13:27 +0000)
committerUlrich Weigand <uweigand@gcc.gnu.org>
Sun, 19 Jun 2005 13:27:04 +0000 (13:27 +0000)
* loop.c (scan_loop): Do not consider insns setting the frame
pointer to be candidates for hoisting.

From-SVN: r101182

gcc/ChangeLog
gcc/loop.c

index cedf800..af13fe0 100644 (file)
@@ -1,3 +1,8 @@
+2005-06-19  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * loop.c (scan_loop): Do not consider insns setting the frame
+       pointer to be candidates for hoisting.
+
 2005-06-19  Uros Bizjak  <uros@kss-loka.si>
 
        * config/i386/i386.md (*cmpfp_0_sf, *cmpfp_0_df, cmpfp_0_xf):
index a25c1c0..7da65db 100644 (file)
@@ -1135,6 +1135,7 @@ scan_loop (struct loop *loop, int flags)
          if (! in_libcall
              && (set = single_set (p))
              && REG_P (SET_DEST (set))
+             && SET_DEST (set) != frame_pointer_rtx
 #ifdef PIC_OFFSET_TABLE_REG_CALL_CLOBBERED
              && SET_DEST (set) != pic_offset_table_rtx
 #endif