[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[commits] r2249 - in /fsf/trunk/ports: ./ sysdeps/unix/sysv/linux/hppa/ sysdeps/unix/sysv/linux/hppa/nptl/bits/



Author: eglibc
Date: Sat May 19 00:03:00 2007
New Revision: 2249

Log:
Import glibc-ports-mainline for 2007-05-19

Modified:
    fsf/trunk/ports/ChangeLog.hppa
    fsf/trunk/ports/sysdeps/unix/sysv/linux/hppa/nptl/bits/semaphore.h
    fsf/trunk/ports/sysdeps/unix/sysv/linux/hppa/sysdep.c
    fsf/trunk/ports/sysdeps/unix/sysv/linux/hppa/sysdep.h

Modified: fsf/trunk/ports/ChangeLog.hppa
==============================================================================
--- fsf/trunk/ports/ChangeLog.hppa (original)
+++ fsf/trunk/ports/ChangeLog.hppa Sat May 19 00:03:00 2007
@@ -1,3 +1,18 @@
+2007-05-17  Carlos O'Donell  <carlos@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/hppa/nptl/bits/semaphore.h 
+	(SEM_VALUE_MAX): Remove.
+
+2007-05-17  Carlos O'Donell  <carlos@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/hppa/sysdep.h (PIC_REG_DEF): Define.
+	(PIC_REG_USE): Define.
+	(INLINE_SYSCALL): Use PIC_REG_DEF, PIC_REG_USE.
+	(INTERNAL_SYSCALL): Likewise.
+	(INTERNAL_SYSCALL_NCS): Likewise.
+	* sysdeps/unix/sysv/linux/hppa/sysdep.c (syscall): Use 
+	PIC_REG_DEF, PIC_REG_USE.
+
 2007-05-01  Carlos O'Donell  <carlos@xxxxxxxxxxxxxxxx>
 
 	* sysdeps/unix/sysv/linux/hppa/linuxthreads/bits/pthreadtypes.h

Modified: fsf/trunk/ports/sysdeps/unix/sysv/linux/hppa/nptl/bits/semaphore.h
==============================================================================
--- fsf/trunk/ports/sysdeps/unix/sysv/linux/hppa/nptl/bits/semaphore.h (original)
+++ fsf/trunk/ports/sysdeps/unix/sysv/linux/hppa/nptl/bits/semaphore.h Sat May 19 00:03:00 2007
@@ -20,16 +20,10 @@
 # error "Never use <bits/semaphore.h> directly; include <semaphore.h> instead."
 #endif
 
-
 #define __SIZEOF_SEM_T	16
-
 
 /* Value returned if `sem_open' failed.  */
 #define SEM_FAILED      ((sem_t *) 0)
-
-/* Maximum value the semaphore can have.  */
-#define SEM_VALUE_MAX   ((int) ((~0u) >> 1))
-
 
 typedef union
 {

Modified: fsf/trunk/ports/sysdeps/unix/sysv/linux/hppa/sysdep.c
==============================================================================
--- fsf/trunk/ports/sysdeps/unix/sysv/linux/hppa/sysdep.c (original)
+++ fsf/trunk/ports/sysdeps/unix/sysv/linux/hppa/sysdep.c Sat May 19 00:03:00 2007
@@ -1,4 +1,5 @@
-/* Copyright (C) 1997, 1998, 2001, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1998, 2001, 2003, 2007 
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -58,13 +59,14 @@
   
   {
     register unsigned long int __res asm("r28");
+    PIC_REG_DEF
     LOAD_ARGS_6 (arg0, arg1, arg2, arg3, arg4, arg5)
     asm volatile (SAVE_ASM_PIC
 		  "	ble  0x100(%%sr2, %%r0)	\n"
 		  "	copy %1, %%r20		\n"
 		  LOAD_ASM_PIC
 		  : "=r" (__res)
-		  : "r" (__sysno) ASM_ARGS_6
+		  : "r" (__sysno) PIC_REG_USE ASM_ARGS_6
 		  : "memory", CALL_CLOB_REGS CLOB_ARGS_6);
     __sys_res = __res;
   }

Modified: fsf/trunk/ports/sysdeps/unix/sysv/linux/hppa/sysdep.h
==============================================================================
--- fsf/trunk/ports/sysdeps/unix/sysv/linux/hppa/sysdep.h (original)
+++ fsf/trunk/ports/sysdeps/unix/sysv/linux/hppa/sysdep.h Sat May 19 00:03:00 2007
@@ -1,5 +1,6 @@
 /* Assembler macros for PA-RISC.
-   Copyright (C) 1999, 2001, 2002, 2003 Free Software Foundation, Inc.
+   Copyright (C) 1999, 2001, 2002, 2003, 2007 
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper, <drepper@xxxxxxxxxx>, August 1999.
    Linux/PA-RISC changes by Philipp Rumpf, <prumpf@xxxxxxx>, March 2000.
@@ -40,7 +41,9 @@
 # define TREG_ASM "%r4" /* Cant clobber r3, it holds framemarker */
 # define SAVE_ASM_PIC	"       copy %%r19, %" TREG_ASM "\n"
 # define LOAD_ASM_PIC	"       copy %" TREG_ASM ", %%r19\n"
-# define USING_TREG	TREG_ASM,
+# define CLOB_TREG	TREG_ASM ,
+# define PIC_REG_DEF	register unsigned long __r19 asm("r19");
+# define PIC_REG_USE	, "r" (__r19)
 #else
 # define TREG %r3
 # define SAVE_PIC(SREG) nop ASM_LINE_SEP
@@ -49,7 +52,9 @@
 # define TREG_ASM 
 # define SAVE_ASM_PIC	"nop \n"
 # define LOAD_ASM_PIC	"nop \n"
-# define USING_TREG
+# define CLOB_TREG
+# define PIC_REG_DEF
+# define PIC_REG_USE
 #endif
 
 #ifdef __ASSEMBLER__
@@ -344,7 +349,7 @@
    TREG is clobbered and use that register to save/restore r19
    across the syscall. */
 
-#define CALL_CLOB_REGS	"%r1", "%r2", USING_TREG \
+#define CALL_CLOB_REGS	"%r1", "%r2", CLOB_TREG \
 		 	"%r20", "%r29", "%r31"
 
 #undef INLINE_SYSCALL
@@ -353,6 +358,7 @@
 	long __sys_res;							\
 	{								\
 		register unsigned long __res asm("r28");		\
+		PIC_REG_DEF						\
 		LOAD_ARGS_##nr(args)					\
 		/* FIXME: HACK save/load r19 around syscall */		\
 		asm volatile(						\
@@ -361,7 +367,7 @@
 			"	ldi %1, %%r20\n"			\
 			LOAD_ASM_PIC					\
 			: "=r" (__res)					\
-			: "i" (SYS_ify(name)) ASM_ARGS_##nr		\
+			: "i" (SYS_ify(name)) PIC_REG_USE ASM_ARGS_##nr	\
 			: "memory", CALL_CLOB_REGS CLOB_ARGS_##nr	\
 		);							\
 		__sys_res = (long)__res;				\
@@ -398,6 +404,7 @@
 	long __sys_res;							\
 	{								\
 		register unsigned long __res asm("r28");		\
+		PIC_REG_DEF						\
 		LOAD_ARGS_##nr(args)					\
 		/* FIXME: HACK save/load r19 around syscall */		\
 		asm volatile(						\
@@ -406,7 +413,7 @@
 			"	ldi %1, %%r20\n"			\
 			LOAD_ASM_PIC					\
 			: "=r" (__res)					\
-			: "i" (SYS_ify(name)) ASM_ARGS_##nr		\
+			: "i" (SYS_ify(name)) PIC_REG_USE ASM_ARGS_##nr	\
 			: "memory", CALL_CLOB_REGS CLOB_ARGS_##nr	\
 		);							\
 		__sys_res = (long)__res;				\
@@ -422,6 +429,7 @@
 	long __sys_res;							\
 	{								\
 		register unsigned long __res asm("r28");		\
+		PIC_REG_DEF						\
 		LOAD_ARGS_##nr(args)					\
 		/* FIXME: HACK save/load r19 around syscall */		\
 		asm volatile(						\
@@ -430,7 +438,7 @@
 			"	copy %1, %%r20\n"			\
 			LOAD_ASM_PIC					\
 			: "=r" (__res)					\
-			: "r" (name) ASM_ARGS_##nr			\
+			: "r" (name) PIC_REG_USE ASM_ARGS_##nr		\
 			: "memory", CALL_CLOB_REGS CLOB_ARGS_##nr	\
 		);							\
 		__sys_res = (long)__res;				\