STACK_ALIGNBYTES
~STACK_ALIGNBYTES;
sp = (unsigned long *)((uintptr_t)sp & ~STACK_ALIGNBYTES);
sp = (caddr_t)(((uintptr_t)sp + STACK_ALIGNBYTES) & ~STACK_ALIGNBYTES);
(((uintptr_t)sp + STACK_ALIGNBYTES) & ~STACK_ALIGNBYTES);
gr[_REG_SP] = (uintptr_t) sp & ~STACK_ALIGNBYTES;
sp = (__greg_t *)((uintptr_t)sp & ~STACK_ALIGNBYTES);
sp -= STACK_ALIGNBYTES + 1;
sp &= ~STACK_ALIGNBYTES;
sp -= STACK_ALIGNBYTES + 1;
sp &= ~STACK_ALIGNBYTES;
sp -= STACK_ALIGNBYTES + 1;
sp &= ~STACK_ALIGNBYTES;
sp = (ulong *)((ulong)sp & ~STACK_ALIGNBYTES);
sp = (unsigned long *)((unsigned long)sp & ~STACK_ALIGNBYTES);
frame &= ~(STACK_ALIGNBYTES | (align - 1));
((u_long)stack + stacksize) & ~((u_long)STACK_ALIGNBYTES);
__CTASSERT(8 + STACK_ALIGNBYTES + sizeof(struct sigframe_siginfo) +
8 + STACK_ALIGNBYTES + sizeof(struct sigframe_siginfo));
~STACK_ALIGNBYTES) - 8);
KASSERT(((uintptr_t)fp & STACK_ALIGNBYTES) == 8);
fp = (void *)STACK_ALIGN(fp, STACK_ALIGNBYTES);
fp = (struct sigframe_siginfo *)STACK_ALIGN(fp, STACK_ALIGNBYTES);
__CTASSERT(STACK_ALIGNBYTES + sizeof(struct sigframe_siginfo) +
STACK_ALIGNBYTES + sizeof(struct sigframe_siginfo));
fp = (struct sigframe_siginfo *)((uintptr_t)fp & ~STACK_ALIGNBYTES);
KASSERTMSG((stack & STACK_ALIGNBYTES) == 0, "stack=%"PRIxVADDR, stack);
tf->tf_regs[_R_SP] = (intptr_t)stack & ~STACK_ALIGNBYTES;
sp &= ~(STACK_ALIGNBYTES | (align - 1));
((register_t)stack + stacksize - STACK_ALIGNBYTES)
& ~STACK_ALIGNBYTES;
return sp & ~STACK_ALIGNBYTES;
fp = (struct sigframe_sigcontext *)((int)(fp - 1) & ~STACK_ALIGNBYTES);
fp = (struct sigframe *)((int)(fp - 1) & ~STACK_ALIGNBYTES);
fp = (struct sunos_sigframe *)((int)(fp - 1) & ~STACK_ALIGNBYTES);
(MINSIGSTKSZ - (8 + STACK_ALIGNBYTES + \
(MINSIGSTKSZ - (STACK_ALIGNBYTES + \
ucp = (void *)STACK_ALIGN(ucp, STACK_ALIGNBYTES);
return STACK_LEN_ALIGN(stacklen, STACK_ALIGNBYTES);
#ifndef STACK_ALIGNBYTES
ATF_CHECK_MSG(((uintptr_t)execsp.startsp & STACK_ALIGNBYTES) == 0,
ATF_CHECK_MSG(((uintptr_t)execsp.ctorsp & STACK_ALIGNBYTES) == 0,
ATF_CHECK_MSG(((uintptr_t)execsp.mainsp & STACK_ALIGNBYTES) == 0,
ATF_CHECK_MSG(((uintptr_t)execsp.dtorsp & STACK_ALIGNBYTES) == 0,
#if defined STACK_ALIGNBYTES && defined HAVE_CONTEXTSPFUNC
#if defined STACK_ALIGNBYTES && defined HAVE_CONTEXTSPFUNC
REQUIRE_LIBC(stack = malloc(SIGSTKSZ + STACK_ALIGNBYTES), NULL);
stack + SIGSTKSZ + STACK_ALIGNBYTES);
for (i = 0; i <= STACK_ALIGNBYTES; i++) {
ATF_CHECK_MSG(((uintptr_t)contextsp & STACK_ALIGNBYTES) == 0,
for (i = 0; i <= STACK_ALIGNBYTES; i++) {
ATF_CHECK_MSG(((uintptr_t)contextsp & STACK_ALIGNBYTES) == 0,
#if defined STACK_ALIGNBYTES && defined HAVE_CONTEXTSPFUNC
REQUIRE_LIBC(stack2 = malloc(SIGSTKSZ + STACK_ALIGNBYTES), NULL);
stack2, stack2 + SIGSTKSZ + STACK_ALIGNBYTES);
for (i = 0; i <= STACK_ALIGNBYTES; i++) {
ATF_CHECK_MSG(((uintptr_t)contextsp & STACK_ALIGNBYTES) == 0,
for (i = 0; i <= STACK_ALIGNBYTES; i++) {
ATF_CHECK_MSG(((uintptr_t)contextsp & STACK_ALIGNBYTES) == 0,
#if defined STACK_ALIGNBYTES && defined HAVE_SIGNALSPHANDLER
ATF_CHECK_MSG(((uintptr_t)signalsp & STACK_ALIGNBYTES) == 0,
#if defined STACK_ALIGNBYTES && HAVE_SIGNALSPHANDLER
REQUIRE_LIBC(stack = malloc(SIGSTKSZ + STACK_ALIGNBYTES), NULL);
stack, stack + SIGSTKSZ + STACK_ALIGNBYTES);
for (i = 0; i <= STACK_ALIGNBYTES; i++) {
ATF_CHECK_MSG(((uintptr_t)signalsp & STACK_ALIGNBYTES) == 0,
for (i = 0; i <= STACK_ALIGNBYTES; i++) {
ATF_CHECK_MSG(((uintptr_t)signalsp & STACK_ALIGNBYTES) == 0,
#if defined STACK_ALIGNBYTES && defined HAVE_THREADSPFUNC
#if defined STACK_ALIGNBYTES && defined HAVE_THREADSPFUNC
REQUIRE_LIBC(stack = malloc(SIGSTKSZ + STACK_ALIGNBYTES), NULL);
stack + SIGSTKSZ + STACK_ALIGNBYTES);
ATF_CHECK_MSG(((uintptr_t)sp & STACK_ALIGNBYTES) == 0,
for (i = 0; i <= STACK_ALIGNBYTES; i++) {
ATF_CHECK_MSG(((uintptr_t)sp & STACK_ALIGNBYTES) == 0,
for (i = 0; i <= STACK_ALIGNBYTES; i++) {
ATF_CHECK_MSG(((uintptr_t)sp & STACK_ALIGNBYTES) == 0,
#if defined STACK_ALIGNBYTES && defined HAVE_STACK_POINTER_H
ATF_CHECK_MSG(((uintptr_t)signalsp & STACK_ALIGNBYTES) == 0,
#ifdef STACK_ALIGNBYTES