summaryrefslogtreecommitdiff
path: root/gnu/egcs/gcc
diff options
context:
space:
mode:
authorHiroaki Etoh <etoh@cvs.openbsd.org>2003-03-11 04:52:28 +0000
committerHiroaki Etoh <etoh@cvs.openbsd.org>2003-03-11 04:52:28 +0000
commite131866190dcd376841b3a9b27809bf5b35c7181 (patch)
treea27924ece7de63af40e00fc4d378fb18eee33724 /gnu/egcs/gcc
parentb8c08209294dde5d22c91c7dc67d885ed2ddd381 (diff)
The loop optimization using frame pointer is omitted.
Diffstat (limited to 'gnu/egcs/gcc')
-rw-r--r--gnu/egcs/gcc/loop.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gnu/egcs/gcc/loop.c b/gnu/egcs/gcc/loop.c
index 16f4f47481e..4edc9eeee29 100644
--- a/gnu/egcs/gcc/loop.c
+++ b/gnu/egcs/gcc/loop.c
@@ -6204,7 +6204,8 @@ general_induction_var (x, src_reg, add_val, mult_val, is_addr, pbenefit)
#ifndef FRAME_GROWS_DOWNWARD
if (flag_propolice_protection
&& GET_CODE (*add_val) == PLUS
- && XEXP (*add_val, 0) == frame_pointer_rtx)
+ && (XEXP (*add_val, 0) == frame_pointer_rtx
+ || XEXP (*add_val, 1) == frame_pointer_rtx))
return 0;
#endif