From patchwork Fri Nov 26 19:19:08 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: Add static size report when using -fstack-usage for ARM targets Date: Fri, 26 Nov 2010 09:19:08 -0000 From: Thomas Klein X-Patchwork-Id: 73218 Message-Id: <4CF0082C.9030500@web.de> To: Richard Earnshaw Cc: gcc-patches@gcc.gnu.org Hello Hope this is more matching the way it should. Please let me know if I'm wrong here. regards Thomas 2010-11-26 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 167184) +++ gcc/config/arm/arm.c (working copy) @@ -15765,6 +15765,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 @@ -20577,6 +20581,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)