From e9bf6953f63139703b659e1ca8c52e4e4681bcbe Mon Sep 17 00:00:00 2001 From: alehotsky Date: Fri, 14 Jun 2002 01:41:53 +0000 Subject: [PATCH] pass MEM reference to find_reloads_address git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@54604 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 6 ++++++ gcc/reload.c | 10 +++++----- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9f6d9006244..ba76060ae9e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2002-06-13 Alan Lehotsky + + * reload.c (get_secondary_mem,find_reloads_address, + find_reloads_address_1): Pass reference to MEM to find_reloads_address + so that LEGITIMIZE_RELOAD_ADDRESS will be called. + 2002-06-13 Jessica Han * defaults.h (TARGET_VTABLE_ENTRY_ALIGN): New. diff --git a/gcc/reload.c b/gcc/reload.c index 6a18245f941..72e1674008f 100644 --- a/gcc/reload.c +++ b/gcc/reload.c @@ -644,7 +644,7 @@ get_secondary_mem (x, mode, opnum, type) : type == RELOAD_FOR_OUTPUT ? RELOAD_FOR_OUTPUT_ADDRESS : RELOAD_OTHER); - find_reloads_address (mode, (rtx*) 0, XEXP (loc, 0), &XEXP (loc, 0), + find_reloads_address (mode, &loc, XEXP (loc, 0), &XEXP (loc, 0), opnum, type, 0, 0); } @@ -4594,9 +4594,9 @@ find_reloads_address (mode, memrefloc, ad, loc, opnum, type, ind_levels, insn) tem = make_memloc (ad, regno); if (! strict_memory_address_p (GET_MODE (tem), XEXP (tem, 0))) { - find_reloads_address (GET_MODE (tem), (rtx*) 0, XEXP (tem, 0), - &XEXP (tem, 0), opnum, ADDR_TYPE (type), - ind_levels, insn); + find_reloads_address (GET_MODE (tem), &tem, XEXP (tem, 0), + &XEXP (tem, 0), opnum, + ADDR_TYPE (type), ind_levels, insn); } /* We can avoid a reload if the register's equivalent memory expression is valid as an indirect memory address. @@ -5324,7 +5324,7 @@ find_reloads_address_1 (mode, x, context, loc, opnum, type, ind_levels, insn) We can't use ADDR_TYPE (type) here, because we need to write back the value after reading it, hence we actually need two registers. */ - find_reloads_address (GET_MODE (tem), 0, XEXP (tem, 0), + find_reloads_address (GET_MODE (tem), &tem, XEXP (tem, 0), &XEXP (tem, 0), opnum, RELOAD_OTHER, ind_levels, insn); -- 2.11.0