From a02e606c364cae0808950075444da23158d8132c Mon Sep 17 00:00:00 2001 From: Hiroaki Etoh Date: Wed, 26 Feb 2003 09:32:34 +0000 Subject: preserve the addressing using frame pointer at the cse2 phase. --- gnu/egcs/gcc/cse.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'gnu/egcs') diff --git a/gnu/egcs/gcc/cse.c b/gnu/egcs/gcc/cse.c index bca7623fed6..f4c98de36b8 100644 --- a/gnu/egcs/gcc/cse.c +++ b/gnu/egcs/gcc/cse.c @@ -6044,7 +6044,13 @@ fold_rtx (x, insn) if (new_const == 0) break; - +#ifndef FRAME_GROWS_DOWNWARD + if (flag_propolice_protection + && GET_CODE (y) == PLUS + && XEXP (y, 0) == frame_pointer_rtx + && INTVAL (new_const) <= 0) + break; +#endif /* If we are associating shift operations, don't let this produce a shift of the size of the object or larger. This could occur when we follow a sign-extend by a right -- cgit v1.2.3