summaryrefslogtreecommitdiff
path: root/gcc/reload.c
diff options
context:
space:
mode:
authoramylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4>2005-08-05 16:06:35 +0000
committeramylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4>2005-08-05 16:06:35 +0000
commitb3425ed6901b82955c24c796981f09beba4d0824 (patch)
treefc6e599c62b1cd2005eaff49316676581f18236f /gcc/reload.c
parent5159125a933d8a842c0044c66ff780238103e086 (diff)
downloadgcc-b3425ed6901b82955c24c796981f09beba4d0824.tar.gz
PR middle-end/23135
* reload.c (find_reloads_subreg_address): Pass down TYPE unchanged. Change all callers except find_reloads_toplev. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@102772 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/reload.c')
-rw-r--r--gcc/reload.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/reload.c b/gcc/reload.c
index 378db66aeac..c8e8c07aebe 100644
--- a/gcc/reload.c
+++ b/gcc/reload.c
@@ -5804,7 +5804,8 @@ find_reloads_address_1 (enum machine_mode mode, rtx x, int context,
if ((unsigned) CLASS_MAX_NREGS (class, GET_MODE (SUBREG_REG (x)))
> reg_class_size[class])
{
- x = find_reloads_subreg_address (x, 0, opnum, type,
+ x = find_reloads_subreg_address (x, 0, opnum,
+ ADDR_TYPE (type),
ind_levels, insn);
push_reload (x, NULL_RTX, loc, (rtx*) 0, class,
GET_MODE (x), VOIDmode, 0, 0, opnum, type);
@@ -5964,7 +5965,7 @@ find_reloads_subreg_address (rtx x, int force_replace, int opnum,
}
find_reloads_address (GET_MODE (tem), &tem, XEXP (tem, 0),
- &XEXP (tem, 0), opnum, ADDR_TYPE (type),
+ &XEXP (tem, 0), opnum, type,
ind_levels, insn);
/* If this is not a toplevel operand, find_reloads doesn't see