aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorMarcus Shawcroft <marcus.shawcroft@arm.com>2014-06-05 11:37:44 +0000
committerMarcus Shawcroft <mshawcroft@gcc.gnu.org>2014-06-05 11:37:44 +0000
commit348344209225bfbed267e2e0b9fd8d88660b8b4e (patch)
tree4f1bc389b20d157fdff3dcba6db61a754449815f /gcc
parent98ba74825766921660fec06bba12cd3f3aabcd2a (diff)
downloadgcc-348344209225bfbed267e2e0b9fd8d88660b8b4e.zip
gcc-348344209225bfbed267e2e0b9fd8d88660b8b4e.tar.gz
gcc-348344209225bfbed267e2e0b9fd8d88660b8b4e.tar.bz2
[AArch64] Clarify stack layout comment.
From-SVN: r211268
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/aarch64/aarch64.c32
2 files changed, 20 insertions, 17 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index be92e0f..e2b8562 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2014-06-05 Marcus Shawcroft <marcus.shawcroft@arm.com>
+
+ * config/aarch64/aarch64.c (aarch64_expand_prologue): Update stack
+ layout comment.
+
2014-06-05 Jaydeep Patil <Jaydeep.Patil@imgtec.com>
Prachi Godbole <Prachi.Godbole@imgtec.com>
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index b26e5f5..7c59e8b 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
@@ -2078,37 +2078,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