Commit Diff


commit - 880ab2f10a2d4922d314ff8d016ea078f3c7f019
commit + 07b075d589991739c493b8dc71c5c7b7224bfcc0
blob - c684eb5d807793bbb7936a3ec9f3be83d34048b5
blob + 16d9669ea9576b96d692dd637eb99fa7ea149ec4
--- src/libthread/Linux-sparc64-context.S
+++ src/libthread/Linux-sparc64-context.S
@@ -20,6 +20,7 @@
 /* Constants shared between setcontext() and getcontext().  Don't
    install this header file.  */
 
+
 #define UC_LINK		0
 #define __UC_SIGMASK	16
 #define UC_M_PC		40
@@ -46,13 +47,18 @@
    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
    02111-1307 USA.  */
 
+#define __ASSEMBLER__
 #include <linux/linkage.h>
 
+#ifndef END
+#define END(x)
+#endif
+
 /*#include "ucontext_i.h" (up above) */
 
 /* int getcontext(ucontext_t *); */
 
-ENTRY(__getcontext)
+ENTRY(getcontext)
 
 	ldx	[%o0 + UC_LINK], %o1	/* Preserve uc_link field, the
 					   trap clears it.  */
@@ -84,16 +90,14 @@ ENTRY(__getcontext)
 	stx	%g0, [%o0 + UC_SIGMASK + 112]
 	stx	%g0, [%o0 + UC_SIGMASK + 120]
 #else
-# error Adjust __getcontext
+# error Adjust getcontext
 #endif
 2:
 	retl
 	 clr	%o0
 
-END(__getcontext)
+END(getcontext)
 
-weak_alias(__getcontext, getcontext)
-
 /* Copyright (C) 1997, 2001 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Richard Henderson (rth@tamu.edu).
@@ -131,9 +135,5 @@ ENTRY(__setcontext)
 	stx	%o2, [%o0 + __UC_SIGMASK]
 	ta	0x6f
 
-#ifdef END
-#define END(x)
-#endif
-
 END(__setcontext)
 
blob - 07569a6a341a7012fb1213fbe7d8d395fb485f7f
blob + 825062a94a79b80b9d7dbe85352a68bb31658fb5
--- src/libthread/mkfile
+++ src/libthread/mkfile
@@ -37,7 +37,7 @@ OpenBSD-%-asm.$O:	OpenBSD-%-asm.S
 	$CC $CFLAGS OpenBSD-$stem-asm.S
 
 Linux-sparc64-context.$O: Linux-sparc64-context.S
-	$CC $CFLAGS Linux-sparc64-context.S
+	$CC -m64 -mcpu=v9 $CFLAGS Linux-sparc64-context.S
 
 test:V: tprimes tspawn
 	primes 1 10007 >p1.txt