[Bug target/11535] __builtin_return_address may not work on ia64
cvs-commit at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Fri Aug 8 23:50:00 GMT 2003
PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=11535
------- Additional Comments From cvs-commit at gcc dot gnu dot org 2003-08-08 23:50 -------
Subject: Bug 11535
CVSROOT: /cvs/gcc
Module name: gcc
Changes by: rth@gcc.gnu.org 2003-08-08 23:49:57
Modified files:
gcc/config/ia64: ia64-protos.h ia64.c ia64.h ia64.md
Log message:
PR target/11535
* config/ia64/ia64.c (ia64_initial_elimination_offset): Remove
RETURN_ADDRESS_POINTER_REGNUM.
(ia64_expand_prologue): Don't frob it.
(ia64_output_function_epilogue): Likewise.
(ia64_return_addr_rtx): New.
(ia64_split_return_addr_rtx): New.
* config/ia64/ia64-protos.h: Update.
* config/ia64/ia64.h (FIRST_PSEUDO_REGISTER): Decrement.
(RETURN_ADDRESS_POINTER_REGNUM): Remove.
(GENERAL_REGNO_P): Don't check it.
(AR_*_REGNUM): Renumber.
(FIXED_REGISTERS): Remove RETURN_ADDRESS_POINTER_REGNUM.
(CALL_USED_REGISTERS, CALL_REALLY_USED_REGISTERS): Likewise.
(REG_ALLOC_ORDER, REG_CLASS_CONTENTS): Likewise.
(ELIMINABLE_REGS, REGISTER_NAMES): Likewise.
(RETURN_ADDR_RTX): Use ia64_return_addr_rtx.
* config/ia64/ia64.md (UNSPEC_RET_ADDR): New.
(movdi_ret_addr): New.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/ia64/ia64-protos.h.diff?cvsroot=gcc&r1=1.59&r2=1.60
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/ia64/ia64.c.diff?cvsroot=gcc&r1=1.238&r2=1.239
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/ia64/ia64.h.diff?cvsroot=gcc&r1=1.155&r2=1.156
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/ia64/ia64.md.diff?cvsroot=gcc&r1=1.110&r2=1.111
More information about the Gcc-bugs
mailing list