clean up slightly; prepare to make this identical to sparc/frame.h.
This commit is contained in:
parent
3c31d4fccb
commit
23fecf2b24
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: frame.h,v 1.7 2000/07/23 06:15:33 mrg Exp $ */
|
||||
/* $NetBSD: frame.h,v 1.8 2001/03/02 07:40:18 mrg Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1992, 1993
|
||||
|
@ -52,7 +52,22 @@
|
|||
* of the frame, you must first force the kernel to write any such
|
||||
* windows to the stack.
|
||||
*/
|
||||
#if !defined(_LOCORE) && !defined(_LIBC)
|
||||
#ifndef _LOCORE
|
||||
#ifndef __arch64__
|
||||
struct frame {
|
||||
int32_t fr_local[8]; /* space to save locals (%l0..%l7) */
|
||||
int32_t fr_arg[6]; /* space to save arguments (%i0..%i5) */
|
||||
struct frame *fr_fp; /* space to save frame pointer (%i6) */
|
||||
int32_t fr_pc; /* space to save return pc (%i7) */
|
||||
/*
|
||||
* SunOS reserves another 8 words here; this is pointless
|
||||
* but we do it for compatibility.
|
||||
*/
|
||||
int32_t fr_xxx; /* `structure return pointer' (unused) */
|
||||
int32_t fr_argd[6]; /* `arg dump area' (lunacy) */
|
||||
int32_t fr_argx[1]; /* arg extension (args 7..n; variable size) */
|
||||
};
|
||||
#else
|
||||
struct frame32 {
|
||||
int32_t fr_local[8]; /* space to save locals (%l0..%l7) */
|
||||
int32_t fr_arg[6]; /* space to save arguments (%i0..%i5) */
|
||||
|
@ -67,6 +82,8 @@ struct frame32 {
|
|||
int32_t fr_argx[1]; /* arg extension (args 7..n; variable size) */
|
||||
};
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/*
|
||||
* CCFSZ (C Compiler Frame SiZe) is the size of a stack frame required if
|
||||
* a function is to call C code. It should be just 64, but Sun defined
|
||||
|
@ -76,7 +93,6 @@ struct frame32 {
|
|||
*/
|
||||
#define CCFSZ 96
|
||||
|
||||
|
||||
/*
|
||||
* Sparc v9 stack frame format.
|
||||
*
|
||||
|
|
Loading…
Reference in New Issue