STACK_OFFSET was to support it varying when compiling some code for
authorguenther <guenther@openbsd.org>
Tue, 25 Oct 2022 06:05:57 +0000 (06:05 +0000)
committerguenther <guenther@openbsd.org>
Tue, 25 Oct 2022 06:05:57 +0000 (06:05 +0000)
either 32bit or 64bit.  With the elimination of 32bit sparc bits
it was just a superfluous indirection of BIAS.  Also, CCFSZ is gone.

ok miod@

sys/arch/sparc64/include/asm.h
sys/arch/sparc64/sparc64/machdep.c
sys/arch/sparc64/sparc64/vm_machdep.c

index 2d8ffff..a9d327e 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: asm.h,v 1.15 2022/08/30 16:26:29 miod Exp $   */
+/*     $OpenBSD: asm.h,v 1.16 2022/10/25 06:05:57 guenther Exp $       */
 /*     $NetBSD: asm.h,v 1.15 2000/08/02 22:24:39 eeh Exp $ */
 
 /*
@@ -41,7 +41,7 @@
 #ifndef _MACHINE_ASM_H_
 #define _MACHINE_ASM_H_
 
-/* Pull in CCFSZ, CC64FSZ, and BIAS from frame.h */
+/* Pull in CC64FSZ and BIAS from frame.h */
 #ifndef _LOCORE
 #define _LOCORE
 #endif
index 86dd016..d9e8311 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: machdep.c,v 1.203 2022/10/23 23:39:41 guenther Exp $  */
+/*     $OpenBSD: machdep.c,v 1.204 2022/10/25 06:05:57 guenther Exp $  */
 /*     $NetBSD: machdep.c,v 1.108 2001/07/24 19:30:14 eeh Exp $ */
 
 /*-
@@ -255,10 +255,7 @@ cpu_startup(void)
  * Set up registers on exec.
  */
 
-#define STACK_OFFSET   BIAS
 #define CPOUTREG(l,v)  copyout(&(v), (l), sizeof(v))
-#undef CCFSZ
-#define CCFSZ  CC64FSZ
 
 /* ARGSUSED */
 void
@@ -333,7 +330,7 @@ setregs(struct proc *p, struct exec_package *pack, vaddr_t stack,
        tf->tf_npc = tf->tf_pc + 4;
        tf->tf_global[2] = tf->tf_pc;
        stack -= sizeof(struct rwindow);
-       tf->tf_out[6] = stack - STACK_OFFSET;
+       tf->tf_out[6] = stack - BIAS;
 #ifdef NOTDEF_DEBUG
        printf("setregs: setting tf %p sp %p pc %p\n", (long)tf, 
               (long)tf->tf_out[6], (long)tf->tf_pc);
@@ -410,7 +407,7 @@ sendsig(sig_t catcher, int sig, sigset_t mask, const siginfo_t *ksip,
        struct sigframe sf;
 
        tf = p->p_md.md_tf;
-       oldsp = tf->tf_out[6] + STACK_OFFSET;
+       oldsp = tf->tf_out[6] + BIAS;
 
        /*
         * Compute new user stack addresses, subtract off
@@ -485,7 +482,7 @@ sendsig(sig_t catcher, int sig, sigset_t mask, const siginfo_t *ksip,
        tf->tf_global[1] = (vaddr_t)catcher;
        tf->tf_pc = addr;
        tf->tf_npc = addr + 4;
-       tf->tf_out[6] = newsp - STACK_OFFSET;
+       tf->tf_out[6] = newsp - BIAS;
 
        return 0;
 }
index e6e653d..4a7ecb9 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: vm_machdep.c,v 1.41 2022/10/21 18:55:42 miod Exp $    */
+/*     $OpenBSD: vm_machdep.c,v 1.42 2022/10/25 06:05:57 guenther Exp $        */
 /*     $NetBSD: vm_machdep.c,v 1.38 2001/06/30 00:02:20 eeh Exp $ */
 
 /*
@@ -72,7 +72,6 @@
  * The offset of the topmost frame in the kernel stack.
  */
 #define        TOPFRAMEOFF (USPACE-sizeof(struct trapframe)-CC64FSZ)
-#define        STACK_OFFSET    BIAS
 
 #ifdef DEBUG
 char cpu_forkname[] = "cpu_fork()";
@@ -176,7 +175,7 @@ cpu_fork(struct proc *p1, struct proc *p2, void *stack, void *tcb,
        rp->rw_local[1] = (long)arg;            /* and its argument */
 
        npcb->pcb_pc = (long)proc_trampoline - 8;
-       npcb->pcb_sp = (long)rp - STACK_OFFSET;
+       npcb->pcb_sp = (long)rp - BIAS;
 
        /* Need to create a %tstate if we're forking from proc0. */
        if (p1 == &proc0)