summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/sparc
diff options
context:
space:
mode:
Diffstat (limited to 'libc/sysdeps/linux/sparc')
-rw-r--r--libc/sysdeps/linux/sparc/Makefile.arch2
-rw-r--r--libc/sysdeps/linux/sparc/__longjmp.S3
-rw-r--r--libc/sysdeps/linux/sparc/_math_inc.h2
-rw-r--r--libc/sysdeps/linux/sparc/bits/setjmp.h2
4 files changed, 6 insertions, 3 deletions
diff --git a/libc/sysdeps/linux/sparc/Makefile.arch b/libc/sysdeps/linux/sparc/Makefile.arch
index 1e401fc84..4562eaba5 100644
--- a/libc/sysdeps/linux/sparc/Makefile.arch
+++ b/libc/sysdeps/linux/sparc/Makefile.arch
@@ -5,7 +5,7 @@
# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
#
-CSRC := brk.c __syscall_error.c
+CSRC := brk.c __syscall_error.c qp_ops.c
SSRC := \
__longjmp.S fork.S vfork.S clone.S setjmp.S bsd-setjmp.S bsd-_setjmp.S \
diff --git a/libc/sysdeps/linux/sparc/__longjmp.S b/libc/sysdeps/linux/sparc/__longjmp.S
index fa60264ef..c7d4f0794 100644
--- a/libc/sysdeps/linux/sparc/__longjmp.S
+++ b/libc/sysdeps/linux/sparc/__longjmp.S
@@ -30,7 +30,8 @@
.type __longjmp,%function
.align 4
__longjmp:
-
+ .register %g2, #scratch
+ .register %g3, #scratch
/* Store our arguments in global registers so we can still
* use them while unwinding frames and their register windows. */
diff --git a/libc/sysdeps/linux/sparc/_math_inc.h b/libc/sysdeps/linux/sparc/_math_inc.h
index f08aa5869..1bf84f04e 100644
--- a/libc/sysdeps/linux/sparc/_math_inc.h
+++ b/libc/sysdeps/linux/sparc/_math_inc.h
@@ -7,7 +7,9 @@
#include <bits/wordsize.h>
#define __ASSEMBLY__
+#ifndef __sparc_v9__
#include <asm/traps.h>
+#endif
/* Is alignment really needed? */
diff --git a/libc/sysdeps/linux/sparc/bits/setjmp.h b/libc/sysdeps/linux/sparc/bits/setjmp.h
index dac9ac5cb..ac5a4b2d6 100644
--- a/libc/sysdeps/linux/sparc/bits/setjmp.h
+++ b/libc/sysdeps/linux/sparc/bits/setjmp.h
@@ -25,7 +25,7 @@
#include <bits/wordsize.h>
-#if __WORDSIZE == 64
+#if 0 /*__WORDSIZE == 64*/
#ifndef _ASM
typedef struct __sparc64_jmp_buf