Build failure with 3.1 CVS on sparc-sun-solaris2.8
Jeff Sturm
jsturm@one-point.com
Wed Feb 6 21:54:00 GMT 2002
On Wed, 6 Feb 2002, Brad Lucier wrote:
> 0x1002aff90 in ggc_set_mark ()
> (gdb) disassem
> Dump of assembler code for function ggc_set_mark:
> 0x1002aff90 <ggc_set_mark>: save %sp, -2240, %sp
That's not a reasonable stack frame. Well, not for ggc_set_mark anyway.
Richard, taking the stack bias out of STARTING_FRAME_OFFSET causes
compute_frame_size to get the wrong answer.
Perhaps this'd work? (Untested; I've really got to get my sparc back
online.)
2002-02-06 Jeff Sturm <jsturm@one-point.com>
* config/sparc/sparc.c (compute_frame_size): Don't correct frame
offset for stack bias.
Index: sparc.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/sparc.c,v
retrieving revision 1.181
diff -u -p -r1.181 sparc.c
--- sparc.c 2002/02/04 18:16:06 1.181
+++ sparc.c 2002/02/07 05:29:06
@@ -3383,9 +3383,8 @@ compute_frame_size (size, leaf_function)
}
else
{
- /* We subtract STARTING_FRAME_OFFSET, remember it's negative.
- The stack bias (if any) is taken out to undo its effects. */
- apparent_fsize = (size - STARTING_FRAME_OFFSET + SPARC_STACK_BIAS +
7) & -8;
+ /* We subtract STARTING_FRAME_OFFSET, remember it's negative. */
+ apparent_fsize = (size - STARTING_FRAME_OFFSET + 7) & -8;
apparent_fsize += n_regs * 4;
actual_fsize = apparent_fsize + ((outgoing_args_size + 7) & -8);
}
More information about the Gcc
mailing list