From bded9b6d7f05abd89bf2ff96fea61b91f895dfbe Mon Sep 17 00:00:00 2001 From: yroux Date: Wed, 16 Jul 2014 16:46:48 +0000 Subject: [PATCH] 2014-07-16 Yvan Roux Backport from trunk r211268. 2014-06-05 Marcus Shawcroft * config/aarch64/aarch64.c (aarch64_expand_prologue): Update stack layout comment. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/linaro@212686 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc-4_9-branch/gcc/ChangeLog.linaro | 8 ++++++++ gcc-4_9-branch/gcc/config/aarch64/aarch64.c | 32 ++++++++++++++--------------- 2 files changed, 23 insertions(+), 17 deletions(-) diff --git a/gcc-4_9-branch/gcc/ChangeLog.linaro b/gcc-4_9-branch/gcc/ChangeLog.linaro index 6ffbb677212..2e951481af1 100644 --- a/gcc-4_9-branch/gcc/ChangeLog.linaro +++ b/gcc-4_9-branch/gcc/ChangeLog.linaro @@ -1,5 +1,13 @@ 2014-07-16 Yvan Roux + Backport from trunk r211268. + 2014-06-05 Marcus Shawcroft + + * config/aarch64/aarch64.c (aarch64_expand_prologue): Update stack + layout comment. + +2014-07-16 Yvan Roux + Backport from trunk r211129. 2014-06-02 Ramana Radhakrishnan diff --git a/gcc-4_9-branch/gcc/config/aarch64/aarch64.c b/gcc-4_9-branch/gcc/config/aarch64/aarch64.c index 6168e01baab..fd9fb6f8b13 100644 --- a/gcc-4_9-branch/gcc/config/aarch64/aarch64.c +++ b/gcc-4_9-branch/gcc/config/aarch64/aarch64.c @@ -2088,37 +2088,35 @@ aarch64_save_or_restore_callee_save_registers (HOST_WIDE_INT offset, | | | incoming stack arguments | | | - +-------------------------------+ <-- arg_pointer_rtx - | | + +-------------------------------+ + | | <-- incoming stack pointer (aligned) | callee-allocated save area | | for register varargs | | | - +-------------------------------+ <-- frame_pointer_rtx - | | - | local variables | + +-------------------------------+ + | local variables | <-- frame_pointer_rtx | | +-------------------------------+ | padding0 | \ +-------------------------------+ | - | | | - | | | | callee-saved registers | | frame.saved_regs_size - | | | +-------------------------------+ | | LR' | | +-------------------------------+ | - | FP' | / - P +-------------------------------+ <-- hard_frame_pointer_rtx + | FP' | / <- hard_frame_pointer_rtx (aligned) + +-------------------------------+ | dynamic allocation | +-------------------------------+ - | | - | outgoing stack arguments | - | | - +-------------------------------+ <-- stack_pointer_rtx + | padding | + +-------------------------------+ + | outgoing stack arguments | <-- arg_pointer + | | + +-------------------------------+ + | | <-- stack_pointer_rtx (aligned) - Dynamic stack allocations such as alloca insert data at point P. - They decrease stack_pointer_rtx but leave frame_pointer_rtx and - hard_frame_pointer_rtx unchanged. */ + Dynamic stack allocations via alloca() decrease stack_pointer_rtx + but leave frame_pointer_rtx and hard_frame_pointer_rtx + unchanged. */ /* Generate the prologue instructions for entry into a function. Establish the stack frame by decreasing the stack pointer with a -- 2.11.4.GIT