Files
Arquivotheca.SunOS-4.1.4/usr.lib/liblwp/sparc/kernel/stackdep.h
seta75D ff309bfe1c Init
2021-10-11 18:37:13 -03:00

25 lines
766 B
C

/* @(#) stackdep.h 1.1 94/10/31 */
/* Copyright (C) 1987. Sun Microsystems, Inc. */
/*
* sparc requires stack be aligned on 8 byte boundary.
* usage:
* stkalign_t foo[SIZE];
* or
* stkalign_t *foo;
* foo = (stkalign_t *)malloc(sizeof(stkalign_t) * SIZE);
*/
typedef double stkalign_t; /* alignment for stack */
/* align adr to legal stack boundary */
#define STACKALIGN(adr) (((int)(adr)) & ~(sizeof (stkalign_t) - 1))
#define MINSIGSTKSZ 8000 /* minimum size of signal stack in stkalign_t's */
/* for finding top of stack of stkalign_t's */
#define STACKTOP(base, size) ((base) + (size))
#define STACKDOWN TRUE /* TRUE if stacks grow down */
#define PUSH(sp, obj, type) *--((type *)(sp)) = (obj);
#define POP(sp, obj, type) (obj) = *((type *)(sp))++;