summaryrefslogtreecommitdiff
path: root/gcc/function.c
diff options
context:
space:
mode:
authoraoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4>2003-02-26 23:06:34 +0000
committeraoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4>2003-02-26 23:06:34 +0000
commiteb21abb2f0013930f4544527bb1a916efda07b5a (patch)
treeed38841f7514854379451c01d0ec8584c3a8302c /gcc/function.c
parent40256ecd30b271450f21b9991ee211cc3461d0b3 (diff)
downloadgcc-eb21abb2f0013930f4544527bb1a916efda07b5a.tar.gz
* function.c (assign_stack_local_1): Truncate constant added to
frame_pointer_rtx or virtual_stack_vars_rtx for Pmode. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@63488 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/function.c')
-rw-r--r--gcc/function.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/gcc/function.c b/gcc/function.c
index 86a20178dcc..a47ab3eac0d 100644
--- a/gcc/function.c
+++ b/gcc/function.c
@@ -1,6 +1,6 @@
/* Expands front end tree to back end RTL for GNU C-Compiler
Copyright (C) 1987, 1988, 1989, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
- 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+ 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
This file is part of GCC.
@@ -586,11 +586,14 @@ assign_stack_local_1 (mode, size, align, function)
address relative to the frame pointer. */
if (function == cfun && virtuals_instantiated)
addr = plus_constant (frame_pointer_rtx,
+ trunc_int_for_mode
(frame_offset + bigend_correction
- + STARTING_FRAME_OFFSET));
+ + STARTING_FRAME_OFFSET, Pmode));
else
addr = plus_constant (virtual_stack_vars_rtx,
- function->x_frame_offset + bigend_correction);
+ trunc_int_for_mode
+ (function->x_frame_offset + bigend_correction,
+ Pmode));
#ifndef FRAME_GROWS_DOWNWARD
function->x_frame_offset += size;