aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorAndrew Waterman <waterman@cs.berkeley.edu>2014-12-19 23:20:30 -0800
committerAndrew Waterman <waterman@cs.berkeley.edu>2014-12-19 23:20:30 -0800
commite03c7c96b4f9c87034848679dafbc76131966932 (patch)
tree16396f467a45ad28a2ffdaaef3bdadd5de0e6eb4 /gcc
parent9b1c88aa2e47c04f68ac6705c9dfd2530ff04ba6 (diff)
downloadriscv-gnu-toolchain-e03c7c96b4f9c87034848679dafbc76131966932.zip
riscv-gnu-toolchain-e03c7c96b4f9c87034848679dafbc76131966932.tar.gz
riscv-gnu-toolchain-e03c7c96b4f9c87034848679dafbc76131966932.tar.bz2
gcc: correct depiction of stack frame
Diffstat (limited to 'gcc')
-rw-r--r--gcc/gcc/config/riscv/riscv.c16
1 files changed, 2 insertions, 14 deletions
diff --git a/gcc/gcc/config/riscv/riscv.c b/gcc/gcc/config/riscv/riscv.c
index a6e54d0..26e19b9 100644
--- a/gcc/gcc/config/riscv/riscv.c
+++ b/gcc/gcc/config/riscv/riscv.c
@@ -3067,21 +3067,16 @@ riscv_save_reg_p (unsigned int regno)
| |
| incoming stack arguments |
| |
- +-------------------------------+
- | |
- | caller-allocated save area |
- A | for register arguments |
- | |
+-------------------------------+ <-- incoming stack pointer
| |
| callee-allocated save area |
- B | for arguments that are |
+ | for arguments that are |
| split between registers and |
| the stack |
| |
+-------------------------------+ <-- arg_pointer_rtx
| |
- C | callee-allocated save area |
+ | callee-allocated save area |
| for register varargs |
| |
+-------------------------------+ <-- hard_frame_pointer_rtx;
@@ -3100,15 +3095,8 @@ riscv_save_reg_p (unsigned int regno)
| |
| outgoing stack arguments |
| |
- +-------------------------------+
- | |
- | caller-allocated save area |
- | for register arguments |
- | |
+-------------------------------+ <-- stack_pointer_rtx
- At least two of A, B and C will be empty.
-
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. */