From patchwork Mon Dec 13 19:43:23 2010
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Subject: ping: Add static size report when using -fstack-usage for ARM targets
Date: Mon, 13 Dec 2010 09:43:23 -0000
From: Thomas Klein
X-Patchwork-Id: 75395
Message-Id: <4D06775B.1080504@web.de>
To: gcc-patches@gcc.gnu.org, ramana.gcc@googlemail.com
Hello Ramana
In assumption you are the reviewer with write permission, please commit
or reject the patch.
Original message .
regards
Thomas
2010-12-13 Thomas Klein
* config/arm/arm.c (arm_expand_prologue): Report the static stack size
if -fstack-usage is used.
* config/arm/arm.c (thumb1_expand_prologue): Report the static
stack size
if -fstack-usage is used.
Index: gcc/config/arm/arm.c
===================================================================
--- gcc/config/arm/arm.c (revision 167759)
+++ gcc/config/arm/arm.c (working copy)
@@ -15816,6 +15816,10 @@ arm_expand_prologue (void)
}
}
+ if (flag_stack_usage)
+ current_function_static_stack_size
+ = offsets->outgoing_args - offsets->saved_args;
+
if (offsets->outgoing_args != offsets->saved_args + saved_regs)
{
/* This add can produce multiple insns for a large constant, so we
@@ -20628,6 +20632,10 @@ thumb1_expand_prologue (void)
emit_move_insn (gen_rtx_REG (Pmode, ARM_HARD_FRAME_POINTER_REGNUM),
stack_pointer_rtx);
+ if (flag_stack_usage)
+ current_function_static_stack_size
+ = offsets->outgoing_args - offsets->saved_args;
+
amount = offsets->outgoing_args - offsets->saved_regs;
amount -= 4 * thumb1_extra_regs_pushed (offsets, true);
if (amount)