From: rth Date: Sun, 30 Jan 2000 21:27:22 +0000 (+0000) Subject: * i386.c (ix86_compute_frame_size): Omit padding1 if the X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=commitdiff_plain;h=3dcd0d8630293b6a88ed49ec773b718939a4cd6d * i386.c (ix86_compute_frame_size): Omit padding1 if the local frame size is zero. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@31703 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 07875c83f02..f8de2e29665 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2000-01-30 Richard Henderson + * i386.c (ix86_compute_frame_size): Omit padding1 if the + local frame size is zero. + +2000-01-30 Richard Henderson + * alpha.c (alpha_expand_epilogue): Don't emit the return insn. * alpha.h (EPILOGUE_USES): New. Mark $26 live. * alpha.md (return): Turn into an expander. diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index a5f2524bce6..69d71ce5f97 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -1734,7 +1734,6 @@ ix86_compute_frame_size (size, nregs_on_stack, rpadding1, rpadding2) int stack_alignment_needed = cfun->stack_alignment_needed / BITS_PER_UNIT; nregs = ix86_nsaved_regs (); - total_size = size; #ifdef PREFERRED_STACK_BOUNDARY @@ -1762,9 +1761,12 @@ ix86_compute_frame_size (size, nregs_on_stack, rpadding1, rpadding2) total_size += offset; /* Align start of frame for local function. */ - padding1 = ((offset + stack_alignment_needed - 1) - & -stack_alignment_needed) - offset; - total_size += padding1; + if (size > 0) + { + padding1 = ((offset + stack_alignment_needed - 1) + & -stack_alignment_needed) - offset; + total_size += padding1; + } /* Align stack boundary. */ if (!current_function_is_leaf) @@ -1775,10 +1777,8 @@ ix86_compute_frame_size (size, nregs_on_stack, rpadding1, rpadding2) if (nregs_on_stack) *nregs_on_stack = nregs; - if (rpadding1) *rpadding1 = padding1; - if (rpadding2) *rpadding2 = padding2;