diff options
author | sje <sje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-07-12 22:45:14 +0000 |
---|---|---|
committer | sje <sje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-07-12 22:45:14 +0000 |
commit | 3dce56cc760c7e80f8f12bc0181a5e46b65fd2da (patch) | |
tree | 87705223af3ed1f7b2d93aaaa0ed8fa416ed4b73 /gcc/config | |
parent | 23b84540191011191c08a84f154c64997b150325 (diff) | |
download | gcc-3dce56cc760c7e80f8f12bc0181a5e46b65fd2da.tar.gz |
* function.c (expand_function_start): Ensure r_save is in Pmode.
* calls.c (prepare_call_address): Ensure static_chain_value is
in Pmode.
* builtins.c (expand_builtin_nonlocal_goto): Ensure r_label and
r_save_area are in Pmode.
* config/ia64/ia64.c (ia64_initialize_trampoline): Ensure addr,
fnaddr, and static_chain are in Pmode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@84584 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config')
-rw-r--r-- | gcc/config/ia64/ia64.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c index 88c50874b2d..3f03cab9697 100644 --- a/gcc/config/ia64/ia64.c +++ b/gcc/config/ia64/ia64.c @@ -3474,6 +3474,11 @@ ia64_initialize_trampoline (rtx addr, rtx fnaddr, rtx static_chain) } } + /* Make sure addresses are Pmode even if we are in ILP32 mode. */ + addr = convert_memory_address (Pmode, addr); + fnaddr = convert_memory_address (Pmode, fnaddr); + static_chain = convert_memory_address (Pmode, static_chain); + /* Load up our iterator. */ addr_reg = gen_reg_rtx (Pmode); emit_move_insn (addr_reg, addr); |