[Bug target/83370] [AARCH64]Tailcall register may be corrupted by epilogue code
renlin at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Feb 1 21:09:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83370
--- Comment #4 from Renlin Li <renlin at gcc dot gnu.org> ---
Author: renlin
Date: Thu Feb 1 21:09:06 2018
New Revision: 257314
URL: https://gcc.gnu.org/viewcvs?rev=257314&root=gcc&view=rev
Log:
[PR83370][AARCH64]Use tighter register constraint for sibcall patterns.
gcc/
backport from mainline
2018-02-01 Renlin Li <renlin.li@arm.com>
PR target/83370
* config/aarch64/aarch64.c (aarch64_class_max_nregs): Handle
TAILCALL_ADDR_REGS.
(aarch64_register_move_cost): Likewise.
* config/aarch64/aarch64.h (reg_class): Rename CALLER_SAVE_REGS to
TAILCALL_ADDR_REGS.
(REG_CLASS_NAMES): Likewise.
(REG_CLASS_CONTENTS): Rename CALLER_SAVE_REGS to
TAILCALL_ADDR_REGS. Remove IP registers.
* config/aarch64/aarch64.md (Ucs): Update register constraint.
gcc/testsuite/
backport from mainline
2018-02-01 Richard Sandiford <richard.sandiford@linaro.org>
PR target/83370
* gcc.target/aarch64/pr83370.c: New.
Added:
branches/gcc-7-branch/gcc/testsuite/gcc.target/aarch64/pr83370.c
Modified:
branches/gcc-7-branch/gcc/ChangeLog
branches/gcc-7-branch/gcc/config/aarch64/aarch64.c
branches/gcc-7-branch/gcc/config/aarch64/aarch64.h
branches/gcc-7-branch/gcc/config/aarch64/constraints.md
branches/gcc-7-branch/gcc/testsuite/ChangeLog
More information about the Gcc-bugs
mailing list