summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArtur Grabowski <art@cvs.openbsd.org>2002-01-02 19:11:29 +0000
committerArtur Grabowski <art@cvs.openbsd.org>2002-01-02 19:11:29 +0000
commit2fcdfc32c51b87d6f80e16935c34919b1a47e84a (patch)
treebb55da0bfd5aafe342cd669c1123b6e4625a593b
parente066206d4fb7472290ff9de3c545a3700a3890e6 (diff)
fp and pc are 64 bit.
-rw-r--r--lib/libc_r/arch/sparc64/uthread_machdep.h8
-rw-r--r--lib/libc_r/arch/sparc64/uthread_machdep_asm.S14
-rw-r--r--lib/libpthread/arch/sparc64/uthread_machdep.h8
-rw-r--r--lib/libpthread/arch/sparc64/uthread_machdep_asm.S14
4 files changed, 22 insertions, 22 deletions
diff --git a/lib/libc_r/arch/sparc64/uthread_machdep.h b/lib/libc_r/arch/sparc64/uthread_machdep.h
index 6014cf53f03..1343341f34e 100644
--- a/lib/libc_r/arch/sparc64/uthread_machdep.h
+++ b/lib/libc_r/arch/sparc64/uthread_machdep.h
@@ -1,7 +1,7 @@
-/* $OpenBSD: uthread_machdep.h,v 1.1 2001/09/10 20:00:14 jason Exp $ */
-/* David Leonard, <d@csee.uq.edu.au>. Public domain. */
+/* $OpenBSD: uthread_machdep.h,v 1.2 2002/01/02 19:11:13 art Exp $ */
+/* Arutr Grabowski <art@openbsd.org>. Public domain. */
struct _machdep_state {
- int fp; /* frame pointer */
- int pc; /* program counter */
+ long fp; /* frame pointer */
+ long pc; /* program counter */
};
diff --git a/lib/libc_r/arch/sparc64/uthread_machdep_asm.S b/lib/libc_r/arch/sparc64/uthread_machdep_asm.S
index aef33143968..79436b8742f 100644
--- a/lib/libc_r/arch/sparc64/uthread_machdep_asm.S
+++ b/lib/libc_r/arch/sparc64/uthread_machdep_asm.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: uthread_machdep_asm.S,v 1.1 2001/09/10 20:00:14 jason Exp $ */
+/* $OpenBSD: uthread_machdep_asm.S,v 1.2 2002/01/02 19:11:28 art Exp $ */
/* David Leonard <d@csee.uq.edu.au>. Public domain. */
#include <machine/asm.h>
@@ -18,7 +18,7 @@
#define SA(x) (((x)+15)&(~0x1f))
#define MINFRAME ((16+1+6)*8)
-/* void _thread_switch(int newstate[2], int savestate[2], int flags); */
+/* void _thread_switch(long newstate[2], long savestate[2], int flags); */
ENTRY(_thread_machdep_switch)
/* new window */
@@ -28,12 +28,12 @@ ENTRY(_thread_machdep_switch)
flushw
/* switch the stack pointer and return address */
- st %fp, [%i1 + 0]
- st %i7, [%i1 + 4]
- ld [%i0 + 0], %fp
- ld [%i0 + 4], %i7
+ stx %fp, [%i1 + 0]
+ stx %i7, [%i1 + 8]
+ ldx [%i0 + 0], %fp
+ ldx [%i0 + 8], %i7
/* return to saved window at new %fp */
ret
- restore
+ restore
diff --git a/lib/libpthread/arch/sparc64/uthread_machdep.h b/lib/libpthread/arch/sparc64/uthread_machdep.h
index 6014cf53f03..1343341f34e 100644
--- a/lib/libpthread/arch/sparc64/uthread_machdep.h
+++ b/lib/libpthread/arch/sparc64/uthread_machdep.h
@@ -1,7 +1,7 @@
-/* $OpenBSD: uthread_machdep.h,v 1.1 2001/09/10 20:00:14 jason Exp $ */
-/* David Leonard, <d@csee.uq.edu.au>. Public domain. */
+/* $OpenBSD: uthread_machdep.h,v 1.2 2002/01/02 19:11:13 art Exp $ */
+/* Arutr Grabowski <art@openbsd.org>. Public domain. */
struct _machdep_state {
- int fp; /* frame pointer */
- int pc; /* program counter */
+ long fp; /* frame pointer */
+ long pc; /* program counter */
};
diff --git a/lib/libpthread/arch/sparc64/uthread_machdep_asm.S b/lib/libpthread/arch/sparc64/uthread_machdep_asm.S
index aef33143968..79436b8742f 100644
--- a/lib/libpthread/arch/sparc64/uthread_machdep_asm.S
+++ b/lib/libpthread/arch/sparc64/uthread_machdep_asm.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: uthread_machdep_asm.S,v 1.1 2001/09/10 20:00:14 jason Exp $ */
+/* $OpenBSD: uthread_machdep_asm.S,v 1.2 2002/01/02 19:11:28 art Exp $ */
/* David Leonard <d@csee.uq.edu.au>. Public domain. */
#include <machine/asm.h>
@@ -18,7 +18,7 @@
#define SA(x) (((x)+15)&(~0x1f))
#define MINFRAME ((16+1+6)*8)
-/* void _thread_switch(int newstate[2], int savestate[2], int flags); */
+/* void _thread_switch(long newstate[2], long savestate[2], int flags); */
ENTRY(_thread_machdep_switch)
/* new window */
@@ -28,12 +28,12 @@ ENTRY(_thread_machdep_switch)
flushw
/* switch the stack pointer and return address */
- st %fp, [%i1 + 0]
- st %i7, [%i1 + 4]
- ld [%i0 + 0], %fp
- ld [%i0 + 4], %i7
+ stx %fp, [%i1 + 0]
+ stx %i7, [%i1 + 8]
+ ldx [%i0 + 0], %fp
+ ldx [%i0 + 8], %i7
/* return to saved window at new %fp */
ret
- restore
+ restore