* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep-cancel.h (PSEUDO):

Don't use CGOTSETUP and CGOTRESTORE macros. 
(CGOTSETUP, CGOTRESTORE): Remove. 
<IS_IN_rtld> (CENABLE, CDISABLE): Don't use JUMPTARGET, branch to 
@local symbol.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket):
	Don't use CGOTSETUP and CGOTRESTORE macros.
2007-08-05  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket):
	Don't use CGOTSETUP and CGOTRESTORE macros.
This commit is contained in:
Jakub Jelinek 2007-08-05 13:43:20 +00:00
parent b5075bdc05
commit 0470fa4610
4 changed files with 18 additions and 23 deletions

View File

@ -1,3 +1,8 @@
2007-08-05 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket):
Don't use CGOTSETUP and CGOTRESTORE macros.
2007-08-04 Roland McGrath <roland@redhat.com>
* posix/Makefile ($(objpfx)getconf.speclist): Fix typo.

View File

@ -1,3 +1,11 @@
2007-08-05 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep-cancel.h (PSEUDO):
Don't use CGOTSETUP and CGOTRESTORE macros.
(CGOTSETUP, CGOTRESTORE): Remove.
<IS_IN_rtld> (CENABLE, CDISABLE): Don't use JUMPTARGET, branch to
@local symbol.
2007-08-01 Kaz Kojima <kkojima@rr.iij4u.or.jp>
* sysdeps/unix/sysv/linux/sh/libc-lowlevellock.S: Remove

View File

@ -1,5 +1,5 @@
/* Cancellable system call stubs. Linux/PowerPC version.
Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Franz Sirl <Franz.Sirl-kernel@lauterbach.com>, 2003.
@ -44,7 +44,6 @@
mflr 9; \
stw 9,52(1); \
cfi_offset (lr, 4); \
CGOTSETUP; \
DOCARGS_##args; /* save syscall args around CENABLE. */ \
CENABLE; \
stw 3,16(1); /* store CENABLE return value (MASK). */ \
@ -58,7 +57,6 @@
lwz 4,52(1); \
lwz 0,12(1); /* restore CR/R3. */ \
lwz 3,8(1); \
CGOTRESTORE; \
mtlr 4; \
mtcr 0; \
addi 1,1,48;
@ -84,9 +82,6 @@
# define DOCARGS_6 stw 8,40(1); DOCARGS_5
# define UNDOCARGS_6 lwz 8,40(1); UNDOCARGS_5
# define CGOTSETUP
# define CGOTRESTORE
# ifdef IS_IN_libpthread
# define CENABLE bl __pthread_enable_asynccancel@local
# define CDISABLE bl __pthread_disable_asynccancel@local
@ -94,20 +89,8 @@
# define CENABLE bl __libc_enable_asynccancel@local
# define CDISABLE bl __libc_disable_asynccancel@local
# elif defined IS_IN_librt
# define CENABLE bl JUMPTARGET(__librt_enable_asynccancel)
# define CDISABLE bl JUMPTARGET(__librt_disable_asynccancel)
# if defined HAVE_AS_REL16 && defined PIC
# undef CGOTSETUP
# define CGOTSETUP \
bcl 20,31,1f; \
1: stw 30,44(1); \
mflr 30; \
addis 30,30,_GLOBAL_OFFSET_TABLE-1b@ha; \
addi 30,30,_GLOBAL_OFFSET_TABLE-1b@l
# undef CGOTRESTORE
# define CGOTRESTORE \
lwz 30,44(1)
# endif
# define CENABLE bl __librt_enable_asynccancel@local
# define CDISABLE bl __librt_disable_asynccancel@local
# else
# error Unsupported library
# endif

View File

@ -1,4 +1,5 @@
/* Copyright (C) 1995,96,97,99, 2003, 2006 Free Software Foundation, Inc.
/* Copyright (C) 1995-1997, 1999, 2003, 2006, 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
@ -93,7 +94,6 @@ ENTRY(__socket)
mflr r9
stw r9,52(r1)
cfi_offset (lr, 4)
CGOTSETUP
CENABLE
stw r3,16(r1)
li r3,P(SOCKOP_,socket)
@ -107,7 +107,6 @@ ENTRY(__socket)
lwz r4,52(r1)
lwz r0,12(r1)
lwz r3,8(r1)
CGOTRESTORE
mtlr r4
mtcr r0
addi r1,r1,48