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

[Commits] r22532 - in /fsf/trunk/libc: ./ ports/ ports/sysdeps/am33/elf/ ports/sysdeps/arm/ ports/sysdeps/powerpc/powerpc32/405/ ports...



Author: eglibc
Date: Fri Mar  1 00:02:06 2013
New Revision: 22532

Log:
Import glibc-mainline for 2013-03-01

Removed:
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/bp-asm.h
Modified:
    fsf/trunk/libc/ChangeLog
    fsf/trunk/libc/ports/ChangeLog.am33
    fsf/trunk/libc/ports/ChangeLog.arm
    fsf/trunk/libc/ports/ChangeLog.powerpc
    fsf/trunk/libc/ports/ChangeLog.tile
    fsf/trunk/libc/ports/sysdeps/am33/elf/start.S
    fsf/trunk/libc/ports/sysdeps/arm/__longjmp.S
    fsf/trunk/libc/ports/sysdeps/arm/arm-mcount.S
    fsf/trunk/libc/ports/sysdeps/arm/crti.S
    fsf/trunk/libc/ports/sysdeps/arm/crtn.S
    fsf/trunk/libc/ports/sysdeps/arm/dl-tlsdesc.S
    fsf/trunk/libc/ports/sysdeps/arm/dl-trampoline.S
    fsf/trunk/libc/ports/sysdeps/arm/memcpy.S
    fsf/trunk/libc/ports/sysdeps/arm/memmove.S
    fsf/trunk/libc/ports/sysdeps/arm/memset.S
    fsf/trunk/libc/ports/sysdeps/arm/preconfigure
    fsf/trunk/libc/ports/sysdeps/arm/setjmp.S
    fsf/trunk/libc/ports/sysdeps/arm/strlen.S
    fsf/trunk/libc/ports/sysdeps/arm/sysdep.h
    fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/memcmp.S
    fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/memcpy.S
    fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/memset.S
    fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/strcmp.S
    fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/strcpy.S
    fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/strlen.S
    fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/strncmp.S
    fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/476/memset.S
    fsf/trunk/libc/ports/sysdeps/unix/arm/sysdep.S
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/am33/clone.S
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/Makefile
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/____longjmp_chk.S
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/clone.S
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/getcontext.S
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/mmap.S
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/mmap64.S
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/nptl/unwind-forcedunwind.c
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/nptl/unwind-resume.c
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/setcontext.S
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/syscall.S
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/sysdep.h
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/vfork.S
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/nptl/lowlevellock.h
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/__longjmp-common.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/a2/memcpy.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/add_n.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/addmul_1.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/bsd-_setjmp.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/bsd-setjmp.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/bzero.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/cell/memcpy.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/lshift.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/memset.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/mul_1.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/fpu/mpa.c
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/memcmp.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/memcpy.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/memset.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/strncmp.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power6/memcpy.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power6/memset.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memchr.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memcmp.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memcpy.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/mempcpy.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memrchr.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memset.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/rawmemchr.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strcasecmp.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strchr.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strchrnul.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strlen.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strncmp.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strnlen.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/rshift.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/setjmp-common.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/start.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/stpcpy.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/strchr.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/strcmp.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/strcpy.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/strlen.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/strncmp.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/sub_n.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc32/submul_1.S
    fsf/trunk/libc/sysdeps/powerpc/powerpc64/power4/fpu/mpa.c
    fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S
    fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S

Modified: fsf/trunk/libc/ChangeLog
==============================================================================
--- fsf/trunk/libc/ChangeLog (original)
+++ fsf/trunk/libc/ChangeLog Fri Mar  1 00:02:06 2013
@@ -1,3 +1,175 @@
+2013-02-28  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	[BZ #13550]
+	* sysdeps/powerpc/powerpc32/bp-asm.h: Remove file.
+	* sysdeps/powerpc/powerpc32/__longjmp-common.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__longjmp): Don't use BP_SYM and CHECK_BOUNDS_BOTH_WIDE_LIT.
+	* sysdeps/powerpc/powerpc32/a2/memcpy.S: Don't include <bp-sym.h>
+	and <bp-asm.h>.
+	(memcpy): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/add_n.S: Don't include <bp-sym.h> and
+	<bp-asm.h>.
+	(__mpn_add_n): Don't use BP_SYM.
+	(__mpn_add_n) [__BOUNDED_POINTERS_]: Remove conditional code.
+	* sysdeps/powerpc/powerpc32/addmul_1.S: Don't include <bp-sym.h>
+	and <bp-asm.h>.
+	(__mpn_addmul_1): Don't use BP_SYM.
+	(__mpn_addmul_1) [__BOUNDED_POINTERS__]: Remove conditional code.
+	* sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Don't include
+	<bp-sym.h>.
+	(_setjmp): Don't use BP_SYM.
+	(__novmx_setjmp): Likewise.
+	(__GI__setjmp): Likewise.
+	(__vmx_setjmp): Likewise.
+	* sysdeps/powerpc/powerpc32/bsd-setjmp.S: Don't include
+	<bp-sym.h>.
+	* sysdeps/powerpc/powerpc32/bzero.S: Don't include <bp-sym.h>.
+	(__bzero): Don't use BP_SYM.
+	(__bzero) [__BOUNDED_POINTERS__]: Remove conditional code.
+	(__bzero) [!__BOUNDED_POINTERS__]: Make code unconditional.
+	* sysdeps/powerpc/powerpc32/cell/memcpy.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(memcpy): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__longjmp): Don't use BP_SYM and CHECK_BOUNDS_BOTH_WIDE_LIT.
+	* sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__sigsetjmp): Don't use BP_SYM and CHECK_BOUNDS_BOTH_WIDE_LIT.
+	* sysdeps/powerpc/powerpc32/lshift.S: Don't include <bp-sym.h> and
+	<bp-asm.h>.
+	(__mpn_lshift): Don't use BP_SYM.
+	(__mpn_lshift) [__BOUNDED_POINTERS__]: Remove conditional code.
+	* sysdeps/powerpc/powerpc32/memset.S: Don't include <bp-sym.h> and
+	<bp-asm.h>.
+	(memset): Don't use BP_SYM.
+	(memset) [__BOUNDED_POINTERS__]: Remove conditional code.
+	(memset) [!__BOUNDED_POINTERS__]: Make code unconditional.
+	* sysdeps/powerpc/powerpc32/mul_1.S: Don't include <bp-sym.h> and
+	<bp-asm.h>.
+	(__mpn_mul_1): Don't use BP_SYM.
+	(__mpn_mul_1) [__BOUNDED_POINTERS__]: Remove conditional code.
+	* sysdeps/powerpc/powerpc32/power4/memcmp.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(memcmp): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/power4/memcpy.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(memcpy): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/power4/memset.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(memset): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/power4/strncmp.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(strncmp): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/power6/memcpy.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(memcpy): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/power6/memset.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(memset): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/power7/memchr.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__memchr): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/power7/memcmp.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(memcmp): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/power7/memcpy.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(memcpy): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/power7/mempcpy.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__mempcpy): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/power7/memrchr.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__memrchr): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/power7/memset.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(memset): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/power7/rawmemchr.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__rawmemchr): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/power7/strcasecmp.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__STRCMP): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/power7/strchr.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(strchr): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/power7/strchrnul.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__strchrnul): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/power7/strlen.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(strlen): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/power7/strncmp.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(strncmp): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/power7/strnlen.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__strnlen): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/rshift.S: Don't include <bp-sym.h> and
+	<bp-asm.h>.
+	(__mpn_rshift): Don't use BP_SYM.
+	(__mpn_rshift) [__BOUNDED_POINTERS__]: Remove conditional code.
+	* sysdeps/powerpc/powerpc32/setjmp-common.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__sigsetjmp): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/start.S: Don't include "bp-sym.h".
+	(L(start_addresses)): Don't use BP_SYM.
+	(_start): Likewise.
+	* sysdeps/powerpc/powerpc32/stpcpy.S: Don't include <bp-sym.h> and
+	<bp-asm.h>.
+	(__stpcpy): Don't use BP_SYM and macros from bp-asm.h.
+	(__stpcpy) [__BOUNDED_POINTERS__]: Remove conditional code.
+	(__stpcpy) [!__BOUNDED_POINTERS__]: Make code unconditional.
+	* sysdeps/powerpc/powerpc32/strchr.S: Don't include <bp-sym.h> and
+	<bp-asm.h>.
+	(strchr): Don't use BP_SYM.h and macros from bp-asm.h.
+	(strchr) [__BOUNDED_POINTERS__]: Remove conditional code.
+	(strchr) [!__BOUNDED_POINTERS__]: Make code unconditional.
+	* sysdeps/powerpc/powerpc32/strcmp.S: Don't include <bp-sym.h> and
+	<bp-asm.h>.
+	(strcmp): Don't use BP_SYM and CHECK_BOUNDS_LOW.  Remove GKM FIXME
+	comments.
+	(strcmp) [__BOUNDED_POINTERS__]: Remove conditional code.
+	* sysdeps/powerpc/powerpc32/strcpy.S: Don't include <bp-sym.h> and
+	<bp-asm.h>.
+	(strcpy): Don't use BP_SYM and macros from bp-asm.h.  Remove GKM
+	FIXME comments.
+	(strcpy) [__BOUNDED_POINTERS__]: Remove conditional code.
+	(strcpy) [!__BOUNDED_POINTERS__]: Make code unconditional.
+	* sysdeps/powerpc/powerpc32/strlen.S: Don't include <bp-sym.h> and
+	<bp-asm.h>.
+	(strlen): Don't use BP_SYM and CHECK_BOUNDS_LOW.  Remove GKM FIXME
+	comment.
+	* sysdeps/powerpc/powerpc32/strncmp.S: Don't include <bp-sym.h>
+	and <bp-asm.h>.
+	(strncmp): Don't use BP_SYM,
+	* sysdeps/powerpc/powerpc32/sub_n.S: Don't include <bp-sym.h> and
+	<bp-asm.h>.
+	(__mpn_sub_n): Don't use BP_SYM.
+	(__mpn_sub_n) [__BOUNDED_POINTERS__]: Remove conditional code.
+	* sysdeps/powerpc/powerpc32/submul_1.S: Don't include <bp-sym.h>
+	and <bp-asm.h>.
+	(__mpn_submul_1): Don't use BP_SYM.
+	(__mpn_submul_1) [__BOUNDED_POINTERS__]: Remove conditional code.
+	* sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__brk): Don't use BP_SYM and DISCARD_BOUNDS.
+	* sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(__clone): Don't use BP_SYM and DISCARD_BOUNDS.  Remove GKM FIXME
+	comment.
+
+2013-02-28  Siddhesh Poyarekar  <siddhesh@xxxxxxxxxx>
+
+	* sysdeps/powerpc/powerpc32/power4/fpu/mpa.c (add_magnitudes):
+	Use ZK to minimize writes to Z.
+	(sub_magnitudes): Simplify code a bit.
+	* sysdeps/powerpc/powerpc64/power4/fpu/mpa.c (add_magnitudes):
+	Use ZK to minimize writes to Z.
+	(sub_magnitudes): Simplify code a bit.
+
 2013-02-27  Roland McGrath  <roland@xxxxxxxxxxxxx>
 
 	* csu/gmon-start.c: Add special exception to license text.

Modified: fsf/trunk/libc/ports/ChangeLog.am33
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.am33 (original)
+++ fsf/trunk/libc/ports/ChangeLog.am33 Fri Mar  1 00:02:06 2013
@@ -1,3 +1,10 @@
+2013-02-28  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/am33/elf/start.S: Don't include "bp-sym.h".
+	(_start): Don't use BP_SYM.
+	* sysdeps/unix/sysv/linux/am33/clone.S: Don't include <bp-sym.h>.
+	(__clone): Don't use BP_SYM.
+
 2013-02-14  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
 
 	[BZ #13550]

Modified: fsf/trunk/libc/ports/ChangeLog.arm
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.arm (original)
+++ fsf/trunk/libc/ports/ChangeLog.arm Fri Mar  1 00:02:06 2013
@@ -1,3 +1,61 @@
+2013-02-28  Richard Henderson <rth@xxxxxxxxxx>
+
+	* sysdeps/arm/preconfigure: Adjust scan for __ARM_ARCH_* defines.
+
+	* sysdeps/arm/preconfigure: Handle __ARM_ARCH_6*__.
+
+	* sysdeps/unix/sysv/linux/arm/Makefile [elf] (sysdep-rtld-routines):
+	Include libc-do-syscall.
+
+	* sysdeps/arm/sysdep.h: Fix assembly whitespace.
+	* ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h: Likewise.
+	* sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise.
+
+	* sysdeps/arm/sysdep.h (PC_OFS): New macros.
+	* sysdeps/arm/__longjmp.S (__longjmp): Use PC_OFS.
+	* sysdeps/arm/setjmp.S (__sigsetjmp): Likewise.
+	* sysdeps/unix/arm/sysdep.S (__syscall_error): Likewise.
+	* sysdeps/unix/sysv/linux/arm/getcontext.S (__getcontext): Likewise.
+	* sysdeps/unix/sysv/linux/arm/setcontext.S (__startcontext): Likewise.
+	* sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h
+	(SINGLE_THREAD_P): Likewise.
+	* sysdeps/unix/sysv/linux/arm/sysdep.h
+	(SYSCALL_ERROR_HANDLER): Likewise.
+	* sysdeps/unix/sysv/linux/arm/nptl/unwind-forcedunwind.c
+	(_Unwind_Resume): Use stringified PC_OFS.
+	* sysdeps/unix/sysv/linux/arm/nptl/unwind-resume.c
+	(_Unwind_Resume): Likewise.
+
+	* ports/sysdeps/arm/arm-mcount.S: Always use unified syntax and
+	always add IT markup.
+	* sysdeps/unix/sysv/linux/arm/mmap64.S (__mmap64): Likewise.
+	* sysdeps/arm/dl-tlsdesc.S (_dl_tlsdesc_dynamic): Add IT markup.
+	* sysdeps/unix/arm/sysdep.S (__syscall_error): Likewise.
+	* sysdeps/unix/sysv/linux/arm/clone.S (__clone): Likewise.
+	* sysdeps/unix/sysv/linux/arm/mmap.S (__mmap): Likewise.
+	* sysdeps/unix/sysv/linux/arm/syscall.S (syscall): Likewise.
+	* sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_RET): Likewise.
+	* sysdeps/unix/sysv/linux/arm/vfork.S (__vfork): Likewise.
+
+	* ports/sysdeps/arm/__longjmp.S: Define NO_THUMB before <sysdep.h>
+	* sysdeps/arm/crti.S, sysdeps/arm/crtn.S: Likewise.
+	* sysdeps/arm/dl-trampoline.S: Likewise.
+	* sysdeps/arm/memcpy.S: Likewise.
+	* sysdeps/arm/memmove.S: Likewise.
+	* sysdeps/arm/memset.S: Likewise.
+	* sysdeps/arm/setjmp.S: Likewise.
+	* sysdeps/arm/strlen.S: Likewise.
+	* sysdeps/unix/sysv/linux/arm/____longjmp_chk.S: Likewise.
+	* sysdeps/unix/sysv/linux/arm/setcontext.S: Likewise.
+
+2013-02-27  Roland McGrath  <roland@xxxxxxxxxxxxx>
+
+	* sysdeps/arm/sysdep.h (CFI_SECTIONS): New macro.
+	(ENTRY): Use it.
+	* sysdeps/arm/dl-tlsdesc.S: Likewise.
+	* sysdeps/arm/dl-trampoline.S: Likewise.
+	* sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h (PSEUDO): Likewise.
+
 2013-02-18  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
 
 	[BZ #14920]

Modified: fsf/trunk/libc/ports/ChangeLog.powerpc
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.powerpc (original)
+++ fsf/trunk/libc/ports/ChangeLog.powerpc Fri Mar  1 00:02:06 2013
@@ -1,3 +1,31 @@
+2013-02-28  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	[BZ #13550]
+	* sysdeps/powerpc/powerpc32/405/memcmp.S: Don't include <bp-sym.h>
+	and <bp-asm.h>.
+	(memcmp): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/405/memcpy.S: Don't include <bp-sym.h>
+	and <bp-asm.h>.
+	(memcpy): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/405/memset.S: Don't include <bp-sym.h>
+	and <bp-asm.h>.
+	(memset): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/405/strcmp.S: Don't include <bp-sym.h>
+	and <bp-asm.h>.
+	(strcmp): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/405/strcpy.S: Don't include <bp-sym.h>
+	and <bp-asm.h>.
+	(strcpy): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/405/strlen.S: Don't include <bp-sym.h>
+	and <bp-asm.h>.
+	(strlen): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/405/strncmp.S: Don't include
+	<bp-sym.h> and <bp-asm.h>.
+	(strncmp): Don't use BP_SYM.
+	* sysdeps/powerpc/powerpc32/476/memset.S: Don't include <bp-sym.h>
+	and <bp-asm.h>.
+	(memset): Don't use BP_SYM.
+
 2013-02-18  Siddhesh Poyarekar  <siddhesh@xxxxxxxxxx>
 
 	* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist:

Modified: fsf/trunk/libc/ports/ChangeLog.tile
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.tile (original)
+++ fsf/trunk/libc/ports/ChangeLog.tile Fri Mar  1 00:02:06 2013
@@ -1,3 +1,12 @@
+2013-02-28  Chris Metcalf  <cmetcalf@xxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/tile/nptl/lowlevellock.h
+	(FUTEX_WAIT_REQUEUE_PI): Define.
+	(FUTEX_CMP_REQUEUE_PI): Likewise.
+	(lll_futex_wait_requeue_pi): Likewise.
+	(lll_futex_timed_wait_requeue_pi): Likewise.
+	(lll_futex_cmp_requeue_pi): Likewise.
+
 2013-02-18  Siddhesh Poyarekar  <siddhesh@xxxxxxxxxx>
 
 	* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libc.abilist:

Modified: fsf/trunk/libc/ports/sysdeps/am33/elf/start.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/am33/elf/start.S (original)
+++ fsf/trunk/libc/ports/sysdeps/am33/elf/start.S Fri Mar  1 00:02:06 2013
@@ -37,8 +37,6 @@
 					NULL
 */
 
-#include "bp-sym.h"
-
 	.text
 	.globl _start
 	.type _start,@function
@@ -63,13 +61,13 @@
 	mov 0,a3
 
 	mov (32,sp), d1		/* argc.  */
-	mov BP_SYM (main), d0	/* main.  */
+	mov main, d0		/* main.  */
 
 	/* Call the user's main function, and exit with its value.
 	   But let the libc call main.    */
-	call BP_SYM (__libc_start_main),[],0
+	call __libc_start_main,[],0
 
-	call BP_SYM (abort),[],0 /* Crash if somehow `exit' does return.  */
+	call abort,[],0 /* Crash if somehow `exit' does return.  */
 
 /* Define a symbol for the first piece of initialized data.  */
 	.data

Modified: fsf/trunk/libc/ports/sysdeps/arm/__longjmp.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/arm/__longjmp.S (original)
+++ fsf/trunk/libc/ports/sysdeps/arm/__longjmp.S Fri Mar  1 00:02:06 2013
@@ -16,6 +16,8 @@
    License along with the GNU C Library.  If not, see
    <http://www.gnu.org/licenses/>.  */
 
+/* ??? Needs more rearrangement for the LDM to handle thumb mode.  */
+#define NO_THUMB
 #include <sysdep.h>
 #define _SETJMP_H
 #define _ASM
@@ -105,12 +107,12 @@
 
 #ifdef NEED_HWCAP
 # ifdef IS_IN_rtld
-1:	.long	_GLOBAL_OFFSET_TABLE_ - 0b - 8
+1:	.long	_GLOBAL_OFFSET_TABLE_ - 0b - PC_OFS
 .Lrtld_local_ro:
 	.long	C_SYMBOL_NAME(_rtld_local_ro)(GOTOFF)
 # else
 #  ifdef PIC
-1:	.long	_GLOBAL_OFFSET_TABLE_ - 0b - 8
+1:	.long	_GLOBAL_OFFSET_TABLE_ - 0b - PC_OFS
 .Lrtld_global_ro:
 	.long	C_SYMBOL_NAME(_rtld_global_ro)(GOT)
 #  else

Modified: fsf/trunk/libc/ports/sysdeps/arm/arm-mcount.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/arm/arm-mcount.S (original)
+++ fsf/trunk/libc/ports/sysdeps/arm/arm-mcount.S Fri Mar  1 00:02:06 2013
@@ -24,8 +24,8 @@
 
 #ifdef __thumb2__
 	.thumb
+#endif
 	.syntax unified
-#endif
 
 
 /* Use an assembly stub with a special ABI.  The calling lr has been
@@ -77,15 +77,10 @@
 	cfi_rel_offset (r3, 12)
 	cfi_rel_offset (fp, 16)
 	cfi_rel_offset (lr, 20)
-#ifdef __thumb2__
 	movs r0, fp
 	ittt ne
 	ldrne r0, [r0, #-4]
-#else
-	movs fp, fp
-	ldrne r0, [fp, #-4]
-#endif
-	movnes r1, lr
+	movsne r1, lr
 	blne __mcount_internal
 #ifdef __thumb2__
 	ldmia sp!, {r0, r1, r2, r3, fp, pc}

Modified: fsf/trunk/libc/ports/sysdeps/arm/crti.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/arm/crti.S (original)
+++ fsf/trunk/libc/ports/sysdeps/arm/crti.S Fri Mar  1 00:02:06 2013
@@ -38,6 +38,8 @@
    they can be called as functions.  The symbols _init and _fini are
    magic and cause the linker to emit DT_INIT and DT_FINI.  */
 
+/* Always build .init and .fini sections in ARM mode.  */
+#define NO_THUMB
 #include <libc-symbols.h>
 #include <sysdep.h>
 

Modified: fsf/trunk/libc/ports/sysdeps/arm/crtn.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/arm/crtn.S (original)
+++ fsf/trunk/libc/ports/sysdeps/arm/crtn.S Fri Mar  1 00:02:06 2013
@@ -33,6 +33,8 @@
    License along with the GNU C Library.  If not, see
    <http://www.gnu.org/licenses/>.  */
 
+/* Always build .init and .fini sections in ARM mode.  */
+#define NO_THUMB
 #include <sysdep.h>
 
 /* crtn.S puts function epilogues in the .init and .fini sections

Modified: fsf/trunk/libc/ports/sysdeps/arm/dl-tlsdesc.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/arm/dl-tlsdesc.S (original)
+++ fsf/trunk/libc/ports/sysdeps/arm/dl-tlsdesc.S Fri Mar  1 00:02:06 2013
@@ -29,7 +29,7 @@
 	.text
 	@ emit debug information with cfi
 	@ use arm-specific pseudos for unwinding itself
-	.cfi_sections .debug_frame
+	CFI_SECTIONS
 	.hidden _dl_tlsdesc_return
 	.global	_dl_tlsdesc_return
 	.type	_dl_tlsdesc_return,#function
@@ -116,6 +116,7 @@
 	ldr	r3, [r1]
 	ldr	r2, [r0, r3, lsl #3]
 	cmn	r2, #1
+	ittt	ne
 	ldrne	r3, [r1, #4]
 	addne	r3, r2, r3
 	rsbne	r0, r4, r3

Modified: fsf/trunk/libc/ports/sysdeps/arm/dl-trampoline.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/arm/dl-trampoline.S (original)
+++ fsf/trunk/libc/ports/sysdeps/arm/dl-trampoline.S Fri Mar  1 00:02:06 2013
@@ -16,6 +16,8 @@
    License along with the GNU C Library.  If not, see
    <http://www.gnu.org/licenses/>.  */
 
+/* ??? Needs more rearrangement for the LDM to handle thumb mode.  */
+#define NO_THUMB
 #include <sysdep.h>
 #include <libc-symbols.h>
 
@@ -28,7 +30,7 @@
 	.text
 	.globl _dl_runtime_resolve
 	.type _dl_runtime_resolve, #function
-	.cfi_sections .debug_frame
+	CFI_SECTIONS
 	cfi_startproc
 	.align 2
 _dl_runtime_resolve:
@@ -77,7 +79,7 @@
 #ifndef PROF
 	.globl _dl_runtime_profile
 	.type _dl_runtime_profile, #function
-	.cfi_sections .debug_frame
+	CFI_SECTIONS
 	cfi_startproc
 	.align 2
 _dl_runtime_profile:

Modified: fsf/trunk/libc/ports/sysdeps/arm/memcpy.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/arm/memcpy.S (original)
+++ fsf/trunk/libc/ports/sysdeps/arm/memcpy.S Fri Mar  1 00:02:06 2013
@@ -17,6 +17,8 @@
    License along with the GNU C Library.  If not, see
    <http://www.gnu.org/licenses/>.  */
 
+/* Thumb requires excessive IT insns here.  */
+#define NO_THUMB
 #include <sysdep.h>
 
 /*

Modified: fsf/trunk/libc/ports/sysdeps/arm/memmove.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/arm/memmove.S (original)
+++ fsf/trunk/libc/ports/sysdeps/arm/memmove.S Fri Mar  1 00:02:06 2013
@@ -17,6 +17,8 @@
    License along with the GNU C Library.  If not, see
    <http://www.gnu.org/licenses/>.  */
 
+/* Thumb requires excessive IT insns here.  */
+#define NO_THUMB
 #include <sysdep.h>
 
 /*

Modified: fsf/trunk/libc/ports/sysdeps/arm/memset.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/arm/memset.S (original)
+++ fsf/trunk/libc/ports/sysdeps/arm/memset.S Fri Mar  1 00:02:06 2013
@@ -16,6 +16,8 @@
    License along with the GNU C Library.  If not, see
    <http://www.gnu.org/licenses/>.  */
 
+/* Thumb requires excessive IT insns here.  */
+#define NO_THUMB
 #include <sysdep.h>
 
 /* void *memset (dstpp, c, len) */

Modified: fsf/trunk/libc/ports/sysdeps/arm/preconfigure
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/arm/preconfigure (original)
+++ fsf/trunk/libc/ports/sysdeps/arm/preconfigure Fri Mar  1 00:02:06 2013
@@ -10,7 +10,7 @@
 		# an appropriate directory exists in sysdeps/arm
 		archcppflag=`echo "" |
 		$CC $CFLAGS $CPPFLAGS -E -dM - |
-		  grep __ARM_ARCH |
+		  grep '__ARM_ARCH_[0-9].*__' |
 		  sed -e 's/^#define //' -e 's/ .*//'`
 
 		case x$archcppflag in
@@ -28,7 +28,10 @@
 		  machine=armv6t2
 		  echo "Found compiler is configured for $machine"
 		  ;;
-
+		x__ARM_ARCH_6*__)
+		  machine=armv6
+		  echo "Found compiler is configured for $machine"
+		  ;;
 		*)
 		  machine=arm
 		  echo 2>&1 "arm/preconfigure: Did not find ARM architecture type; using default"

Modified: fsf/trunk/libc/ports/sysdeps/arm/setjmp.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/arm/setjmp.S (original)
+++ fsf/trunk/libc/ports/sysdeps/arm/setjmp.S Fri Mar  1 00:02:06 2013
@@ -16,6 +16,8 @@
    License along with the GNU C Library.  If not, see
    <http://www.gnu.org/licenses/>.  */
 
+/* ??? Needs more rearrangement for the STM to handle thumb mode.  */
+#define NO_THUMB
 #include <sysdep.h>
 #define _SETJMP_H
 #define _ASM
@@ -91,12 +93,12 @@
 
 #ifdef NEED_HWCAP
 # ifdef IS_IN_rtld
-1:	.long	_GLOBAL_OFFSET_TABLE_ - 0b - 8
+1:	.long	_GLOBAL_OFFSET_TABLE_ - 0b - PC_OFS
 .Lrtld_local_ro:
 	.long	C_SYMBOL_NAME(_rtld_local_ro)(GOTOFF)
 # else
 #  ifdef PIC
-1:	.long	_GLOBAL_OFFSET_TABLE_ - 0b - 8
+1:	.long	_GLOBAL_OFFSET_TABLE_ - 0b - PC_OFS
 .Lrtld_global_ro:
 	.long	C_SYMBOL_NAME(_rtld_global_ro)(GOT)
 #  else

Modified: fsf/trunk/libc/ports/sysdeps/arm/strlen.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/arm/strlen.S (original)
+++ fsf/trunk/libc/ports/sysdeps/arm/strlen.S Fri Mar  1 00:02:06 2013
@@ -16,6 +16,8 @@
    License along with the GNU C Library.  If not, see
    <http://www.gnu.org/licenses/>.  */
 
+/* Thumb requires excessive IT insns here.  */
+#define NO_THUMB
 #include <sysdep.h>
 
 /* size_t strlen(const char *S)

Modified: fsf/trunk/libc/ports/sysdeps/arm/sysdep.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/arm/sysdep.h (original)
+++ fsf/trunk/libc/ports/sysdeps/arm/sysdep.h Fri Mar  1 00:02:06 2013
@@ -58,40 +58,43 @@
 #endif
 
 /* Define an entry point visible from C.  */
-#define	ENTRY(name)							      \
-  .globl C_SYMBOL_NAME(name);						      \
-  .type C_SYMBOL_NAME(name),%function;					      \
-  .align ALIGNARG(4);							      \
-  C_LABEL(name)								      \
-  .cfi_sections .debug_frame;						      \
-  cfi_startproc;							      \
-  CALL_MCOUNT
+#define	ENTRY(name)					\
+	.globl	C_SYMBOL_NAME(name);			\
+	.type	C_SYMBOL_NAME(name),%function;		\
+	.align	ALIGNARG(4);				\
+  C_LABEL(name)						\
+	CFI_SECTIONS;					\
+	cfi_startproc;					\
+	CALL_MCOUNT
+
+#define CFI_SECTIONS					\
+	.cfi_sections .debug_frame
 
 #undef	END
-#define END(name)							      \
-  cfi_endproc;								      \
-  ASM_SIZE_DIRECTIVE(name)
+#define END(name)					\
+	cfi_endproc;					\
+	ASM_SIZE_DIRECTIVE(name)
 
 /* If compiled for profiling, call `mcount' at the start of each function.  */
 #ifdef	PROF
 /* Call __gnu_mcount_nc if GCC >= 4.4.  */
 #if __GNUC_PREREQ(4,4)
-#define CALL_MCOUNT \
-  str	lr,[sp, #-4]!; \
-  cfi_adjust_cfa_offset (4); \
-  cfi_rel_offset (lr, 0); \
-  bl PLTJMP(mcount); \
-  cfi_adjust_cfa_offset (-4); \
-  cfi_restore (lr)
+#define CALL_MCOUNT					\
+	str	lr,[sp, #-4]!;				\
+	cfi_adjust_cfa_offset (4);			\
+	cfi_rel_offset (lr, 0);				\
+	bl	PLTJMP(mcount);				\
+	cfi_adjust_cfa_offset (-4);			\
+	cfi_restore (lr)
 #else /* else call _mcount */
-#define CALL_MCOUNT \
-  str	lr,[sp, #-4]!; \
-  cfi_adjust_cfa_offset (4); \
-  cfi_rel_offset (lr, 0); \
-  bl PLTJMP(mcount); \
-  ldr lr, [sp], #4; \
-  cfi_adjust_cfa_offset (-4); \
-  cfi_restore (lr)
+#define CALL_MCOUNT					\
+	str	lr,[sp, #-4]!;				\
+	cfi_adjust_cfa_offset (4);			\
+	cfi_rel_offset (lr, 0);				\
+	bl	PLTJMP(mcount);				\
+	ldr	lr, [sp], #4;				\
+	cfi_adjust_cfa_offset (-4);			\
+	cfi_restore (lr)
 #endif
 #else
 #define CALL_MCOUNT		/* Do nothing.  */
@@ -115,3 +118,11 @@
 	.eabi_attribute 24, 1
 
 #endif	/* __ASSEMBLER__ */
+
+/* This number is the offset from the pc at the current location.  */
+/* ??? At the moment we're not turning on thumb mode in assembly.  */
+#if defined(__thumb__) && !defined(__ASSEMBLER__)
+# define PC_OFS  4
+#else
+# define PC_OFS  8
+#endif

Modified: fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/memcmp.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/memcmp.S (original)
+++ fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/memcmp.S Fri Mar  1 00:02:06 2013
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* memcmp
 
@@ -32,7 +30,7 @@
        return src1 > src2, src1 < src2 or src1 = src2.
        If src1 = src2 and no null, repeat. */
 
-EALIGN (BP_SYM (memcmp), 5, 0)
+EALIGN (memcmp, 5, 0)
        srwi.   r6,r5,5
        beq     L(preword2_count_loop)
        mtctr   r6
@@ -125,6 +123,6 @@
        blt     cr5,L(l_r)
        addi    r3,r0,-1
        blr
-END (BP_SYM (memcmp))
+END (memcmp)
 libc_hidden_builtin_def (memcmp)
 weak_alias (memcmp,bcmp)

Modified: fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/memcpy.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/memcpy.S (original)
+++ fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/memcpy.S Fri Mar  1 00:02:06 2013
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* memcpy
 
@@ -33,7 +31,7 @@
        If 32 or more bytes to copy we use 32 byte copy loop.
        Finaly we copy 0-31 extra bytes. */
 
-EALIGN (BP_SYM (memcpy), 5, 0)
+EALIGN (memcpy, 5, 0)
 /* Check if bytes to copy are greater than 256 and if
        source and destination are unaligned */
        cmpwi   r5,0x0100
@@ -128,5 +126,5 @@
 L(end_memcpy):
        mr       r3,r0
        blr
-END (BP_SYM (memcpy))
+END (memcpy)
 libc_hidden_builtin_def (memcpy)

Modified: fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/memset.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/memset.S (original)
+++ fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/memset.S Fri Mar  1 00:02:06 2013
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* memset
 
@@ -37,7 +35,7 @@
        If 16 or more words to set we use 16 word copy loop.
        Finaly we set 0-15 extra bytes with string store. */
 
-EALIGN (BP_SYM (memset), 5, 0)
+EALIGN (memset, 5, 0)
        rlwinm  r11,r4,0,24,31
        rlwimi  r11,r4,8,16,23
        rlwimi  r11,r11,16,0,15
@@ -150,5 +148,5 @@
        mtxer   r7
        stswx   r8,0,r3
        b       L(end_memset)
-END (BP_SYM (memset))
+END (memset)
 libc_hidden_builtin_def (memset)

Modified: fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/strcmp.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/strcmp.S (original)
+++ fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/strcmp.S Fri Mar  1 00:02:06 2013
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* strcmp
 
@@ -34,7 +32,7 @@
        return src1 > src2, src1 < src2 or src1 = src2.
        If src1 = src2 and no null, repeat. */
 
-EALIGN (BP_SYM(strcmp),5,0)
+EALIGN (strcmp,5,0)
        neg     r7,r3
        clrlwi  r7,r7,20
        neg     r8,r4
@@ -132,5 +130,5 @@
        cmpwi   r5,0
        beq     L(end_strcmp)
        b       L(byte_loop)
-END (BP_SYM (strcmp))
+END (strcmp)
 libc_hidden_builtin_def (strcmp)

Modified: fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/strcpy.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/strcpy.S (original)
+++ fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/strcpy.S Fri Mar  1 00:02:06 2013
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* strcpy
 
@@ -33,7 +31,7 @@
        where in the last 8 bytes it is. Copy the appropriate bytes of the last
        8 according to the null position. */
 
-EALIGN (BP_SYM (strcpy), 5, 0)
+EALIGN (strcpy, 5, 0)
        neg     r7,r4
        subi    r4,r4,1
        clrlwi. r8,r7,29
@@ -105,5 +103,5 @@
 
 L(end_strcpy):
        blr
-END (BP_SYM (strcpy))
+END (strcpy)
 libc_hidden_builtin_def (strcpy)

Modified: fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/strlen.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/strlen.S (original)
+++ fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/strlen.S Fri Mar  1 00:02:06 2013
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* strlen
 
@@ -31,7 +29,7 @@
        the count and return the count value. We need to subtract one because
        we don't count the null character as a byte. */
 
-EALIGN (BP_SYM (strlen),5,0)
+EALIGN (strlen,5,0)
        neg     r7,r3
        clrlwi. r8,r7,29
        addi    r4,0,0
@@ -73,5 +71,5 @@
 L(end_strlen):
        addi    r3,r4,-1
        blr
-END (BP_SYM (strlen))
+END (strlen)
 libc_hidden_builtin_def (strlen)

Modified: fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/strncmp.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/strncmp.S (original)
+++ fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/405/strncmp.S Fri Mar  1 00:02:06 2013
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* strncmp
 
@@ -39,7 +37,7 @@
        return src1 > src2, src1 < src2 or src1 = src2.
        If src1 = src2 and no null, repeat. */
 
-EALIGN (BP_SYM(strncmp),5,0)
+EALIGN (strncmp,5,0)
        neg     r7,r3
        clrlwi  r7,r7,20
        neg     r8,r4
@@ -126,5 +124,5 @@
 L(st1):
        mfcr    r3
        blr
-END (BP_SYM (strncmp))
+END (strncmp)
 libc_hidden_builtin_def (strncmp)

Modified: fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/476/memset.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/476/memset.S (original)
+++ fsf/trunk/libc/ports/sysdeps/powerpc/powerpc32/476/memset.S Fri Mar  1 00:02:06 2013
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* memset
 
@@ -37,7 +35,7 @@
        If 16 or more words to set we use 16 word copy loop.
        Finaly we set 0-15 extra bytes with string store. */
 
-EALIGN (BP_SYM (memset), 5, 0)
+EALIGN (memset, 5, 0)
        rlwinm  r11,r4,0,24,31
        rlwimi  r11,r4,8,16,23
        rlwimi  r11,r11,16,0,15
@@ -150,5 +148,5 @@
        mtxer   r7
        stswx   r8,0,r3
        b       L(end_memset)
-END (BP_SYM (memset))
+END (memset)
 libc_hidden_builtin_def (memset)

Modified: fsf/trunk/libc/ports/sysdeps/unix/arm/sysdep.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/arm/sysdep.S (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/arm/sysdep.S Fri Mar  1 00:02:06 2013
@@ -31,8 +31,9 @@
 	/* We translate the system's EWOULDBLOCK error into EAGAIN.
 	   The GNU C library always defines EWOULDBLOCK==EAGAIN.
 	   EWOULDBLOCK_sys is the original number.  */
-	cmp r0, $EWOULDBLOCK_sys /* Is it the old EWOULDBLOCK?  */
-	moveq r0, $EAGAIN	/* Yes; translate it to EAGAIN.  */
+	cmp	r0, $EWOULDBLOCK_sys /* Is it the old EWOULDBLOCK?  */
+	it	eq
+	moveq	r0, $EAGAIN	/* Yes; translate it to EAGAIN.  */
 #endif
 
 #ifndef IS_IN_rtld
@@ -50,14 +51,14 @@
 	mvn r0, #0
 	RETINSTR (, ip)
 
-1:	.word errno(gottpoff) + (. - 2b - 8)
+1:	.word errno(gottpoff) + (. - 2b - PC_OFS)
 #elif RTLD_PRIVATE_ERRNO
 	ldr r1, 1f
 0:	str r0, [pc, r1]
 	mvn r0, $0
 	DO_RET(r14)
 
-1:	.word C_SYMBOL_NAME(rtld_errno) - 0b - 8
+1:	.word C_SYMBOL_NAME(rtld_errno) - 0b - PC_OFS
 #else
 #error "Unsupported non-TLS case"
 #endif

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/am33/clone.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/am33/clone.S (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/am33/clone.S Fri Mar  1 00:02:06 2013
@@ -24,12 +24,11 @@
 #define _ERRNO_H	1
 #include <bits/errno.h>
 #include <asm-syntax.h>
-#include <bp-sym.h>
 
 /* int clone(int (*fn)(void *arg), void *child_stack, int flags, void *arg); */
 
         .text
-ENTRY (BP_SYM (__clone))
+ENTRY (__clone)
 	/* Sanity check arguments.  */
 	cmp	0,d0	/* no NULL function pointers */
 	beq	L(error_inval)
@@ -75,6 +74,6 @@
 #endif
 	call	JUMPTARGET (_exit),[],0
 
-PSEUDO_END (BP_SYM (__clone))
+PSEUDO_END (__clone)
 
-weak_alias (BP_SYM (__clone), BP_SYM (clone))
+weak_alias (__clone, clone)

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/Makefile
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/Makefile (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/Makefile Fri Mar  1 00:02:06 2013
@@ -10,7 +10,7 @@
 endif
 
 ifeq ($(subdir),elf)
-sysdep-rtld-routines += aeabi_read_tp
+sysdep-rtld-routines += aeabi_read_tp libc-do-syscall
 endif
 
 ifeq ($(subdir),misc)

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/____longjmp_chk.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/____longjmp_chk.S (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/____longjmp_chk.S Fri Mar  1 00:02:06 2013
@@ -15,6 +15,8 @@
    License along with the GNU C Library.  If not, see
    <http://www.gnu.org/licenses/>.  */
 
+/* ??? Needs more rearrangement for the LDM to handle thumb mode.  */
+#define NO_THUMB
 #include <sysdep.h>
 
 	.section .rodata.str1.1,"aMS",%progbits,1

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/clone.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/clone.S (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/clone.S Fri Mar  1 00:02:06 2013
@@ -33,6 +33,7 @@
 ENTRY(__clone)
 	@ sanity check args
 	cmp	r0, #0
+	ite	ne
 	cmpne	r1, #0
 	moveq	r0, #-EINVAL
 	beq	PLTJMP(syscall_error)
@@ -78,8 +79,9 @@
 	sub	pc, r0, #31
 	mov	r1, r0
 	tst	ip, #CLONE_VM
+	ldr	r7, =SYS_ify(getpid)
+	ite	ne
 	movne	r0, #-1
-	ldr	r7, =SYS_ify(getpid)
 	swieq	0x0
 	str	r0, [r1, #PID_OFFSET]
 	str	r0, [r1, #TID_OFFSET]

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/getcontext.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/getcontext.S (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/getcontext.S Fri Mar  1 00:02:06 2013
@@ -103,7 +103,7 @@
 END(__getcontext)
 
 #ifdef PIC
-1:      .long   _GLOBAL_OFFSET_TABLE_ - 0b - 8
+1:      .long   _GLOBAL_OFFSET_TABLE_ - 0b - PC_OFS
 .Lrtld_global_ro:
 	.long   C_SYMBOL_NAME(_rtld_global_ro)(GOT)
 #else

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/mmap.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/mmap.S (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/mmap.S Fri Mar  1 00:02:06 2013
@@ -51,6 +51,7 @@
 	cfi_restore (r5)
 
 	cmn	r0, $4096
+	it	cc
 	RETINSTR(cc, lr)
 	b	PLTJMP(syscall_error)
 

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/mmap64.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/mmap64.S (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/mmap64.S Fri Mar  1 00:02:06 2013
@@ -16,6 +16,8 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
+
+	.syntax unified
 
 #define	EINVAL		22
 
@@ -42,7 +44,8 @@
 	cfi_remember_state
 	movs	r4, ip, lsl $20		@ check that offset is page-aligned
 	mov	ip, ip, lsr $12
-	moveqs	r4, r5, lsr $12		@ check for overflow
+	it	eq
+	movseq	r4, r5, lsr $12		@ check for overflow
 	bne	.Linval
 	ldr	r4, [sp, $8]		@ load fd
 	orr	r5, ip, r5, lsl $20	@ compose page offset
@@ -52,6 +55,7 @@
 	cfi_adjust_cfa_offset (-8)
 	cfi_restore (r4)
 	cfi_restore (r5)
+	it	cc
 	RETINSTR(cc, lr)
 	b	PLTJMP(syscall_error)
 

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h Fri Mar  1 00:02:06 2013
@@ -30,161 +30,157 @@
 
 # undef PSEUDO
 # define PSEUDO(name, syscall_name, args)				\
-  .section ".text";							\
-    PSEUDO_PROLOGUE;							\
-  .type __##syscall_name##_nocancel,%function;				\
-  .globl __##syscall_name##_nocancel;					\
-  __##syscall_name##_nocancel:						\
-    .cfi_sections .debug_frame;						\
-    cfi_startproc;							\
-    DO_CALL (syscall_name, args);					\
-    cmn r0, $4096;							\
-    PSEUDO_RET;								\
-    cfi_endproc;							\
-  .size __##syscall_name##_nocancel,.-__##syscall_name##_nocancel;	\
+	.text;								\
+	PSEUDO_PROLOGUE;						\
+  ENTRY (__##syscall_name##_nocancel);					\
+	CFI_SECTIONS;							\
+	DO_CALL (syscall_name, args);					\
+	cmn	r0, $4096;						\
+	PSEUDO_RET;							\
+  END (__##syscall_name##_nocancel);					\
   ENTRY (name);								\
-    SINGLE_THREAD_P;							\
-    DOARGS_##args;							\
-    bne .Lpseudo_cancel;						\
-    cfi_remember_state;							\
-    ldr r7, =SYS_ify (syscall_name);					\
-    swi 0x0;								\
-    UNDOARGS_##args;							\
-    cmn r0, $4096;							\
-    PSEUDO_RET;								\
-    cfi_restore_state;							\
+	SINGLE_THREAD_P;						\
+	DOARGS_##args;							\
+	bne .Lpseudo_cancel;						\
+	cfi_remember_state;						\
+	ldr	r7, =SYS_ify (syscall_name);				\
+	swi	0x0;							\
+	UNDOARGS_##args;						\
+	cmn	r0, $4096;						\
+	PSEUDO_RET;							\
+	cfi_restore_state;						\
   .Lpseudo_cancel:							\
-    .fnstart;		/* matched by the .fnend in UNDOARGS below.  */	\
-    DOCARGS_##args;	/* save syscall args etc. around CENABLE.  */	\
-    CENABLE;								\
-    mov ip, r0;		/* put mask in safe place.  */			\
-    UNDOCARGS_##args;	/* restore syscall args.  */			\
-    ldr r7, =SYS_ify (syscall_name);					\
-    swi 0x0;		/* do the call.  */				\
-    mov r7, r0;		/* save syscall return value.  */		\
-    mov r0, ip;		/* get mask back.  */				\
-    CDISABLE;								\
-    mov r0, r7;		/* retrieve return value.  */			\
-    RESTORE_LR_##args;							\
-    UNDOARGS_##args;							\
-    cmn r0, $4096
+	.fnstart;	/* matched by the .fnend in UNDOARGS below.  */	\
+	DOCARGS_##args;	/* save syscall args etc. around CENABLE.  */	\
+	CENABLE;							\
+	mov ip, r0;		/* put mask in safe place.  */		\
+	UNDOCARGS_##args;	/* restore syscall args.  */		\
+	ldr	r7, =SYS_ify (syscall_name);				\
+	swi	0x0;		/* do the call.  */			\
+	mov	r7, r0;		/* save syscall return value.  */	\
+	mov	r0, ip;		/* get mask back.  */			\
+	CDISABLE;							\
+	mov	r0, r7;		/* retrieve return value.  */		\
+	RESTORE_LR_##args;						\
+	UNDOARGS_##args;						\
+	cmn	r0, $4096
 
 /* DOARGS pushes eight bytes on the stack for five arguments, twelve bytes for
    six arguments, and four bytes for fewer.  In order to preserve doubleword
    alignment, sometimes we must save an extra register.  */
 
-# define RESTART_UNWIND \
-  .fnend; \
-  .fnstart; \
-  .save {r7}; \
-  .save {lr}
-
-# define DOCARGS_0 \
-  .save {r7}; \
-  str lr, [sp, #-4]!; \
-  cfi_adjust_cfa_offset (4); \
-  cfi_rel_offset (lr, 0); \
-  .save {lr}
+# define RESTART_UNWIND				\
+	.fnend;					\
+	.fnstart;				\
+	.save	{r7};				\
+	.save	{lr}
+
+# define DOCARGS_0				\
+	.save {r7};				\
+	str	lr, [sp, #-4]!;			\
+	cfi_adjust_cfa_offset (4);		\
+	cfi_rel_offset (lr, 0);			\
+	.save	{lr}
 # define UNDOCARGS_0
-# define RESTORE_LR_0 \
-  ldr lr, [sp], #4; \
-  cfi_adjust_cfa_offset (-4); \
-  cfi_restore (lr)
-
-# define DOCARGS_1 \
-  .save {r7}; \
-  stmfd sp!, {r0, r1, lr}; \
-  cfi_adjust_cfa_offset (12); \
-  cfi_rel_offset (lr, 8); \
-  .save {lr}; \
-  .pad #8
-# define UNDOCARGS_1 \
-  ldr r0, [sp], #8; \
-  cfi_adjust_cfa_offset (-8); \
-  RESTART_UNWIND
-# define RESTORE_LR_1 \
-  RESTORE_LR_0
-
-# define DOCARGS_2 \
-  .save {r7}; \
-  stmfd sp!, {r0, r1, lr}; \
-  cfi_adjust_cfa_offset (12); \
-  cfi_rel_offset (lr, 8); \
-  .save {lr}; \
-  .pad #8
-# define UNDOCARGS_2 \
-  ldmfd sp!, {r0, r1}; \
-  cfi_adjust_cfa_offset (-8); \
-  RESTART_UNWIND
-# define RESTORE_LR_2 \
-  RESTORE_LR_0
-
-# define DOCARGS_3 \
-  .save {r7}; \
-  stmfd sp!, {r0, r1, r2, r3, lr}; \
-  cfi_adjust_cfa_offset (20); \
-  cfi_rel_offset (lr, 16); \
-  .save {lr}; \
-  .pad #16
-# define UNDOCARGS_3 \
-  ldmfd sp!, {r0, r1, r2, r3}; \
-  cfi_adjust_cfa_offset (-16); \
-  RESTART_UNWIND
-# define RESTORE_LR_3 \
-  RESTORE_LR_0
-
-# define DOCARGS_4 \
-  .save {r7}; \
-  stmfd sp!, {r0, r1, r2, r3, lr}; \
-  cfi_adjust_cfa_offset (20); \
-  cfi_rel_offset (lr, 16); \
-  .save {lr}; \
-  .pad #16
-# define UNDOCARGS_4 \
-  ldmfd sp!, {r0, r1, r2, r3}; \
-  cfi_adjust_cfa_offset (-16); \
-  RESTART_UNWIND
-# define RESTORE_LR_4 \
-  RESTORE_LR_0
+# define RESTORE_LR_0				\
+	ldr	lr, [sp], #4;			\
+	cfi_adjust_cfa_offset (-4);		\
+	cfi_restore (lr)
+
+# define DOCARGS_1				\
+	.save	{r7};				\
+	stmfd	sp!, {r0, r1, lr};		\
+	cfi_adjust_cfa_offset (12);		\
+	cfi_rel_offset (lr, 8);			\
+	.save	{lr};				\
+	.pad	#8
+# define UNDOCARGS_1				\
+	ldr r0, [sp], #8;			\
+	cfi_adjust_cfa_offset (-8);		\
+	RESTART_UNWIND
+# define RESTORE_LR_1				\
+	RESTORE_LR_0
+
+# define DOCARGS_2				\
+	.save	{r7};				\
+	stmfd	sp!, {r0, r1, lr};		\
+	cfi_adjust_cfa_offset (12);		\
+	cfi_rel_offset (lr, 8);			\
+	.save	{lr};				\
+	.pad	#8
+# define UNDOCARGS_2				\
+	ldmfd	sp!, {r0, r1};			\
+	cfi_adjust_cfa_offset (-8);		\
+	RESTART_UNWIND
+# define RESTORE_LR_2				\
+	RESTORE_LR_0
+
+# define DOCARGS_3				\
+	.save	{r7};				\
+	stmfd	sp!, {r0, r1, r2, r3, lr};	\
+	cfi_adjust_cfa_offset (20);		\
+	cfi_rel_offset (lr, 16);		\
+	.save	{lr};				\
+	.pad	#16
+# define UNDOCARGS_3				\
+	ldmfd	sp!, {r0, r1, r2, r3};		\
+	cfi_adjust_cfa_offset (-16);		\
+	RESTART_UNWIND
+# define RESTORE_LR_3				\
+	RESTORE_LR_0
+
+# define DOCARGS_4				\
+	.save	{r7};				\
+	stmfd	sp!, {r0, r1, r2, r3, lr};	\
+	cfi_adjust_cfa_offset (20);		\
+	cfi_rel_offset (lr, 16);		\
+	.save	{lr};				\
+	.pad	#16
+# define UNDOCARGS_4				\
+	ldmfd	sp!, {r0, r1, r2, r3};		\
+	cfi_adjust_cfa_offset (-16);		\
+	RESTART_UNWIND
+# define RESTORE_LR_4				\
+	RESTORE_LR_0
 
 /* r4 is only stmfd'ed for correct stack alignment.  */
-# define DOCARGS_5 \
-  .save {r4, r7}; \
-  stmfd sp!, {r0, r1, r2, r3, r4, lr}; \
-  cfi_adjust_cfa_offset (24); \
-  cfi_rel_offset (lr, 20); \
-  .save {lr}; \
-  .pad #20
-# define UNDOCARGS_5 \
-  ldmfd sp!, {r0, r1, r2, r3}; \
-  cfi_adjust_cfa_offset (-16); \
-  .fnend; \
-  .fnstart; \
-  .save {r4, r7}; \
-  .save {lr}; \
-  .pad #4
-# define RESTORE_LR_5 \
-  ldmfd sp!, {r4, lr}; \
-  cfi_adjust_cfa_offset (-8); \
-  /* r4 will be marked as restored later.  */ \
-  cfi_restore (lr)
-
-# define DOCARGS_6 \
-  .save {r4, r5, r7}; \
-  stmfd sp!, {r0, r1, r2, r3, lr}; \
-  cfi_adjust_cfa_offset (20); \
-  cfi_rel_offset (lr, 16); \
-  .save {lr}; \
-  .pad #16
-# define UNDOCARGS_6 \
-  ldmfd sp!, {r0, r1, r2, r3}; \
-  cfi_adjust_cfa_offset (-16); \
-  .fnend; \
-  .fnstart; \
-  .save {r4, r5, r7}; \
-  .save {lr};
-# define RESTORE_LR_6 \
-  RESTORE_LR_0
+# define DOCARGS_5				\
+	.save	{r4, r7};			\
+	stmfd	sp!, {r0, r1, r2, r3, r4, lr};	\
+	cfi_adjust_cfa_offset (24);		\
+	cfi_rel_offset (lr, 20);		\
+	.save	{lr};				\
+	.pad	#20
+# define UNDOCARGS_5				\
+	ldmfd	sp!, {r0, r1, r2, r3};		\
+	cfi_adjust_cfa_offset (-16);		\
+	.fnend;					\
+	.fnstart;				\
+	.save	{r4, r7};			\
+	.save	{lr};				\
+	.pad	#4
+# define RESTORE_LR_5				\
+	ldmfd sp!, {r4, lr};			\
+	cfi_adjust_cfa_offset (-8);		\
+	/* r4 will be marked as restored later.  */ \
+	cfi_restore (lr)
+
+# define DOCARGS_6				\
+	.save	{r4, r5, r7};			\
+	stmfd	sp!, {r0, r1, r2, r3, lr};	\
+	cfi_adjust_cfa_offset (20);		\
+	cfi_rel_offset (lr, 16);		\
+	.save	{lr};				\
+	.pad	#16
+# define UNDOCARGS_6				\
+	ldmfd	sp!, {r0, r1, r2, r3};		\
+	cfi_adjust_cfa_offset (-16);		\
+	.fnend;					\
+	.fnstart;				\
+	.save	{r4, r5, r7};			\
+	.save	{lr};
+# define RESTORE_LR_6				\
+	RESTORE_LR_0
 
 # ifdef IS_IN_libpthread
 #  define CENABLE	bl PLTJMP(__pthread_enable_asynccancel)
@@ -207,12 +203,12 @@
 #   define SINGLE_THREAD_P __builtin_expect (__local_multiple_threads == 0, 1)
 #  else
 #   define SINGLE_THREAD_P						\
-  ldr ip, 1b;								\
-2:									\
-  ldr ip, [pc, ip];							\
-  teq ip, #0;
+	ldr	ip, 1b;							\
+  2:									\
+	ldr ip, [pc, ip];						\
+	teq ip, #0;
 #   define PSEUDO_PROLOGUE						\
-  1:  .word __local_multiple_threads - 2f - 8;
+  1:	.word	__local_multiple_threads - 2f - PC_OFS;
 #  endif
 # else
 /*  There is no __local_multiple_threads for librt, so use the TCB.  */
@@ -223,15 +219,15 @@
 #  else
 #   define PSEUDO_PROLOGUE
 #   define SINGLE_THREAD_P						\
-  stmfd	sp!, {r0, lr};							\
-  cfi_adjust_cfa_offset (8);						\
-  cfi_rel_offset (lr, 4);						\
-  bl	__aeabi_read_tp;						\
-  ldr	ip, [r0, #MULTIPLE_THREADS_OFFSET];				\
-  ldmfd	sp!, {r0, lr};							\
-  cfi_adjust_cfa_offset (-8);						\
-  cfi_restore (lr);							\
-  teq	ip, #0
+	stmfd	sp!, {r0, lr};						\
+	cfi_adjust_cfa_offset (8);					\
+	cfi_rel_offset (lr, 4);						\
+	bl	__aeabi_read_tp;					\
+	ldr	ip, [r0, #MULTIPLE_THREADS_OFFSET];			\
+	ldmfd	sp!, {r0, lr};						\
+	cfi_adjust_cfa_offset (-8);					\
+	cfi_restore (lr);						\
+	teq	ip, #0
 #   define SINGLE_THREAD_P_PIC(x) SINGLE_THREAD_P
 #  endif
 # endif

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/nptl/unwind-forcedunwind.c
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/nptl/unwind-forcedunwind.c (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/nptl/unwind-forcedunwind.c Fri Mar  1 00:02:06 2013
@@ -84,6 +84,9 @@
    ARM unwinder relies on register state at entrance.  So we write this in
    assembly.  */
 
+#define STR1(S) #S
+#define STR(S)  STR1(S)
+
 asm (
 "	.globl	_Unwind_Resume\n"
 "	.type	_Unwind_Resume, %function\n"
@@ -118,11 +121,7 @@
 "	b	5b\n"
 "	" CFI_ENDPROC "\n"
 "	.align 2\n"
-#ifdef __thumb2__
-"1:	.word	_GLOBAL_OFFSET_TABLE_ - 3b - 4\n"
-#else
-"1:	.word	_GLOBAL_OFFSET_TABLE_ - 3b - 8\n"
-#endif
+"1:	.word	_GLOBAL_OFFSET_TABLE_ - 3b - " STR (PC_OFS) "\n"
 "2:	.word	libgcc_s_resume(GOTOFF)\n"
 "	.size	_Unwind_Resume, .-_Unwind_Resume\n"
 );

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/nptl/unwind-resume.c
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/nptl/unwind-resume.c (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/nptl/unwind-resume.c Fri Mar  1 00:02:06 2013
@@ -47,6 +47,9 @@
    ARM unwinder relies on register state at entrance.  So we write this in
    assembly.  */
 
+#define STR1(S) #S
+#define STR(S)  STR1(S)
+
 asm (
 "	.globl	_Unwind_Resume\n"
 "	.type	_Unwind_Resume, %function\n"
@@ -81,11 +84,7 @@
 "	b	5b\n"
 "	" CFI_ENDPROC "\n"
 "	.align 2\n"
-#ifdef __thumb2__
-"1:	.word	_GLOBAL_OFFSET_TABLE_ - 3b - 4\n"
-#else
-"1:	.word	_GLOBAL_OFFSET_TABLE_ - 3b - 8\n"
-#endif
+"1:	.word	_GLOBAL_OFFSET_TABLE_ - 3b - " STR (PC_OFS) "\n"
 "2:	.word	libgcc_s_resume(GOTOFF)\n"
 "	.size	_Unwind_Resume, .-_Unwind_Resume\n"
 );

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/setcontext.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/setcontext.S (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/setcontext.S Fri Mar  1 00:02:06 2013
@@ -15,6 +15,8 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
+/* ??? Needs more rearrangement for the LDM to handle thumb mode.  */
+#define NO_THUMB
 #include <sysdep.h>
 #include <rtld-global-offsets.h>
 
@@ -93,7 +95,7 @@
 END(__startcontext)
 
 #ifdef PIC
-1:      .long   _GLOBAL_OFFSET_TABLE_ - 0b - 8
+1:      .long   _GLOBAL_OFFSET_TABLE_ - 0b - PC_OFS
 .Lrtld_global_ro:
 	.long   C_SYMBOL_NAME(_rtld_global_ro)(GOT)
 #else

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/syscall.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/syscall.S (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/syscall.S Fri Mar  1 00:02:06 2013
@@ -42,6 +42,7 @@
 	cfi_restore (r6)
 	cfi_restore (r7)
 	cmn	r0, #4096
+	it	cc
 	RETINSTR(cc, lr)
 	b	PLTJMP(syscall_error)
 PSEUDO_END (syscall)

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/sysdep.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/sysdep.h (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/sysdep.h Fri Mar  1 00:02:06 2013
@@ -57,49 +57,50 @@
    test with -4095.  */
 
 #undef	PSEUDO
-#define	PSEUDO(name, syscall_name, args)				      \
-  .text;								      \
-  ENTRY (name);								      \
-    DO_CALL (syscall_name, args);					      \
-    cmn r0, $4096;
-
-#define PSEUDO_RET							      \
-    RETINSTR(cc, lr);							      \
-    b PLTJMP(SYSCALL_ERROR)
+#define	PSEUDO(name, syscall_name, args)		\
+	.text;						\
+  ENTRY (name);						\
+	DO_CALL (syscall_name, args);			\
+	cmn	r0, $4096;
+
+#define PSEUDO_RET					\
+	it	cc;					\
+	RETINSTR(cc, lr);				\
+	b	PLTJMP(SYSCALL_ERROR)
 #undef ret
 #define ret PSEUDO_RET
 
 #undef	PSEUDO_END
-#define	PSEUDO_END(name)						      \
-  SYSCALL_ERROR_HANDLER;						      \
+#define	PSEUDO_END(name)				\
+	SYSCALL_ERROR_HANDLER;				\
   END (name)
 
 #undef	PSEUDO_NOERRNO
-#define	PSEUDO_NOERRNO(name, syscall_name, args)			      \
-  .text;								      \
-  ENTRY (name);								      \
-    DO_CALL (syscall_name, args);
-
-#define PSEUDO_RET_NOERRNO						      \
-    DO_RET (lr);
+#define	PSEUDO_NOERRNO(name, syscall_name, args)	\
+	.text;						\
+  ENTRY (name);						\
+	DO_CALL (syscall_name, args);
+
+#define PSEUDO_RET_NOERRNO				\
+	DO_RET (lr);
 
 #undef ret_NOERRNO
 #define ret_NOERRNO PSEUDO_RET_NOERRNO
 
 #undef	PSEUDO_END_NOERRNO
-#define	PSEUDO_END_NOERRNO(name)					      \
+#define	PSEUDO_END_NOERRNO(name)			\
   END (name)
 
 /* The function has to return the error code.  */
 #undef	PSEUDO_ERRVAL
-#define	PSEUDO_ERRVAL(name, syscall_name, args) \
-  .text;								      \
-  ENTRY (name)								      \
-    DO_CALL (syscall_name, args);					      \
-    rsb r0, r0, #0
+#define	PSEUDO_ERRVAL(name, syscall_name, args)		\
+	.text;						\
+  ENTRY (name)						\
+	DO_CALL (syscall_name, args);			\
+	rsb	r0, r0, #0
 
 #undef	PSEUDO_END_ERRVAL
-#define	PSEUDO_END_ERRVAL(name) \
+#define	PSEUDO_END_ERRVAL(name)				\
   END (name)
 
 #define ret_ERRVAL PSEUDO_RET_NOERRNO
@@ -114,7 +115,7 @@
 0:     str     r0, [pc, r1];					\
        mvn     r0, #0;						\
        DO_RET(lr);						\
-1:     .word C_SYMBOL_NAME(rtld_errno) - 0b - 8;
+1:     .word C_SYMBOL_NAME(rtld_errno) - 0b - PC_OFS;
 # else
 #  if defined(__ARM_ARCH_4T__) && defined(__THUMB_INTERWORK__)
 #   define POP_PC \
@@ -192,19 +193,19 @@
    syscalls.  */
 
 #undef	DO_CALL
-#define DO_CALL(syscall_name, args)		\
-    DOARGS_##args;				\
-    ldr r7, =SYS_ify (syscall_name);		\
-    swi 0x0;					\
-    UNDOARGS_##args
+#define DO_CALL(syscall_name, args)			\
+	DOARGS_##args;					\
+	ldr	r7, =SYS_ify (syscall_name);		\
+	swi	0x0;					\
+	UNDOARGS_##args
 
 #undef  DOARGS_0
-#define DOARGS_0 \
-  .fnstart; \
-  str r7, [sp, #-4]!; \
-  cfi_adjust_cfa_offset (4); \
-  cfi_rel_offset (r7, 0); \
-  .save { r7 }
+#define DOARGS_0					\
+	.fnstart;					\
+	str r7, [sp, #-4]!;				\
+	cfi_adjust_cfa_offset (4);			\
+	cfi_rel_offset (r7, 0);				\
+	.save	{ r7 }
 #undef  DOARGS_1
 #define DOARGS_1 DOARGS_0
 #undef  DOARGS_2
@@ -214,44 +215,44 @@
 #undef  DOARGS_4
 #define DOARGS_4 DOARGS_0
 #undef  DOARGS_5
-#define DOARGS_5 \
-  .fnstart; \
-  stmfd sp!, {r4, r7}; \
-  cfi_adjust_cfa_offset (8); \
-  cfi_rel_offset (r4, 0); \
-  cfi_rel_offset (r7, 4); \
-  .save { r4, r7 }; \
-  ldr r4, [sp, #8]
+#define DOARGS_5					\
+	.fnstart;					\
+	stmfd	sp!, {r4, r7};				\
+	cfi_adjust_cfa_offset (8);			\
+	cfi_rel_offset (r4, 0);				\
+	cfi_rel_offset (r7, 4);				\
+	.save	{ r4, r7 };				\
+	ldr	r4, [sp, #8]
 #undef  DOARGS_6
-#define DOARGS_6 \
-  .fnstart; \
-  mov ip, sp; \
-  stmfd sp!, {r4, r5, r7}; \
-  cfi_adjust_cfa_offset (12); \
-  cfi_rel_offset (r4, 0); \
-  cfi_rel_offset (r5, 4); \
-  cfi_rel_offset (r7, 8); \
-  .save { r4, r5, r7 }; \
-  ldmia ip, {r4, r5}
+#define DOARGS_6					\
+	.fnstart;					\
+	mov	ip, sp;					\
+	stmfd	sp!, {r4, r5, r7};			\
+	cfi_adjust_cfa_offset (12);			\
+	cfi_rel_offset (r4, 0);				\
+	cfi_rel_offset (r5, 4);				\
+	cfi_rel_offset (r7, 8);				\
+	.save	{ r4, r5, r7 };				\
+	ldmia	ip, {r4, r5}
 #undef  DOARGS_7
-#define DOARGS_7 \
-  .fnstart; \
-  mov ip, sp; \
-  stmfd sp!, {r4, r5, r6, r7}; \
-  cfi_adjust_cfa_offset (16); \
-  cfi_rel_offset (r4, 0); \
-  cfi_rel_offset (r5, 4); \
-  cfi_rel_offset (r6, 8); \
-  cfi_rel_offset (r7, 12); \
-  .save { r4, r5, r6, r7 }; \
-  ldmia ip, {r4, r5, r6}
+#define DOARGS_7					\
+	.fnstart;					\
+	mov	ip, sp;					\
+	stmfd	sp!, {r4, r5, r6, r7};			\
+	cfi_adjust_cfa_offset (16);			\
+	cfi_rel_offset (r4, 0);				\
+	cfi_rel_offset (r5, 4);				\
+	cfi_rel_offset (r6, 8);				\
+	cfi_rel_offset (r7, 12);			\
+	.save	{ r4, r5, r6, r7 };			\
+	ldmia	ip, {r4, r5, r6}
 
 #undef  UNDOARGS_0
-#define UNDOARGS_0 \
-  ldr r7, [sp], #4; \
-  cfi_adjust_cfa_offset (-4); \
-  cfi_restore (r7); \
-  .fnend
+#define UNDOARGS_0					\
+	ldr	r7, [sp], #4;				\
+	cfi_adjust_cfa_offset (-4);			\
+	cfi_restore (r7);				\
+	.fnend
 #undef  UNDOARGS_1
 #define UNDOARGS_1 UNDOARGS_0
 #undef  UNDOARGS_2
@@ -261,29 +262,29 @@
 #undef  UNDOARGS_4
 #define UNDOARGS_4 UNDOARGS_0
 #undef  UNDOARGS_5
-#define UNDOARGS_5 \
-  ldmfd sp!, {r4, r7}; \
-  cfi_adjust_cfa_offset (-8); \
-  cfi_restore (r4); \
-  cfi_restore (r7); \
-  .fnend
+#define UNDOARGS_5					\
+	ldmfd	sp!, {r4, r7};				\
+	cfi_adjust_cfa_offset (-8);			\
+	cfi_restore (r4);				\
+	cfi_restore (r7);				\
+	.fnend
 #undef  UNDOARGS_6
-#define UNDOARGS_6 \
-  ldmfd sp!, {r4, r5, r7}; \
-  cfi_adjust_cfa_offset (-12); \
-  cfi_restore (r4); \
-  cfi_restore (r5); \
-  cfi_restore (r7); \
-  .fnend
+#define UNDOARGS_6					\
+	ldmfd	sp!, {r4, r5, r7};			\
+	cfi_adjust_cfa_offset (-12);			\
+	cfi_restore (r4);				\
+	cfi_restore (r5);				\
+	cfi_restore (r7);				\
+	.fnend
 #undef  UNDOARGS_7
-#define UNDOARGS_7 \
-  ldmfd sp!, {r4, r5, r6, r7}; \
-  cfi_adjust_cfa_offset (-16); \
-  cfi_restore (r4); \
-  cfi_restore (r5); \
-  cfi_restore (r6); \
-  cfi_restore (r7); \
-  .fnend
+#define UNDOARGS_7					\
+	ldmfd	sp!, {r4, r5, r6, r7};			\
+	cfi_adjust_cfa_offset (-16);			\
+	cfi_restore (r4);				\
+	cfi_restore (r5);				\
+	cfi_restore (r6);				\
+	cfi_restore (r7);				\
+	.fnend
 
 #else /* not __ASSEMBLER__ */
 

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/vfork.S
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/vfork.S (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/vfork.S Fri Mar  1 00:02:06 2013
@@ -51,6 +51,7 @@
 	RESTORE_PID
 #endif
 	cmn	a1, #4096
+	it	cc
 	RETINSTR(cc, lr)
 
 	b	PLTJMP(SYSCALL_ERROR)

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/nptl/lowlevellock.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/nptl/lowlevellock.h (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/nptl/lowlevellock.h Fri Mar  1 00:02:06 2013
@@ -38,6 +38,8 @@
 #define FUTEX_TRYLOCK_PI	8
 #define FUTEX_WAIT_BITSET	9
 #define FUTEX_WAKE_BITSET	10
+#define FUTEX_WAIT_REQUEUE_PI	11
+#define FUTEX_CMP_REQUEUE_PI	12
 #define FUTEX_PRIVATE_FLAG	128
 #define FUTEX_CLOCK_REALTIME	256
 
@@ -139,7 +141,33 @@
     INTERNAL_SYSCALL_ERROR_P (__ret, __err);				      \
   })
 
-
+/* Priority Inheritance support.  */
+#define lll_futex_wait_requeue_pi(futexp, val, mutex, private) \
+  lll_futex_timed_wait_requeue_pi (futexp, val, NULL, 0, mutex, private)
+
+#define lll_futex_timed_wait_requeue_pi(futexp, val, timespec, clockbit,      \
+					mutex, private)			      \
+  ({									      \
+    INTERNAL_SYSCALL_DECL (__err);					      \
+    long int __ret;							      \
+    int __op = FUTEX_WAIT_REQUEUE_PI | clockbit;			      \
+									      \
+    __ret = INTERNAL_SYSCALL (futex, __err, 5, (futexp),		      \
+			      __lll_private_flag (__op, private),	      \
+			      (val), (timespec), mutex); 		      \
+    INTERNAL_SYSCALL_ERROR_P (__ret, __err);				      \
+  })
+
+#define lll_futex_cmp_requeue_pi(futexp, nr_wake, nr_move, mutex, val, priv)  \
+  ({									      \
+    INTERNAL_SYSCALL_DECL (__err);					      \
+    long int __ret;							      \
+									      \
+    __ret = INTERNAL_SYSCALL (futex, __err, 6, (futexp),		      \
+			      __lll_private_flag (FUTEX_CMP_REQUEUE_PI, priv),\
+			      (nr_wake), (nr_move), (mutex), (val));	      \
+    INTERNAL_SYSCALL_ERROR_P (__ret, __err);				      \
+  })
 
 
 static inline int __attribute__ ((always_inline))

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/__longjmp-common.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/__longjmp-common.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/__longjmp-common.S Fri Mar  1 00:02:06 2013
@@ -23,11 +23,8 @@
 #else
 # include <jmpbuf-offsets.h>
 #endif
-#include <bp-sym.h>
-#include <bp-asm.h>
 
-ENTRY (BP_SYM (__longjmp))
-	CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE)
+ENTRY (__longjmp)
 
 #if defined PTR_DEMANGLE || defined CHECK_SP
 	lwz r24,(JB_GPR1*4)(r3)
@@ -71,4 +68,4 @@
 	lwz r31,((JB_GPRS+17)*4)(r3)
 	mr r3,r4
 	blr
-END (BP_SYM (__longjmp))
+END (__longjmp)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/a2/memcpy.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/a2/memcpy.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/a2/memcpy.S Fri Mar  1 00:02:06 2013
@@ -18,14 +18,12 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 #define PREFETCH_AHEAD 4        /* no cache lines SRC prefetching ahead  */
 #define ZERO_AHEAD 2            /* no cache lines DST zeroing ahead  */
 
 	.machine  a2
-EALIGN (BP_SYM (memcpy), 5, 0)
+EALIGN (memcpy, 5, 0)
 	CALL_MCOUNT
 
 	dcbt    0,r4            /* Prefetch ONE SRC cacheline  */
@@ -525,5 +523,5 @@
 	b       L(lessthancacheline)
 
 
-END (BP_SYM (memcpy))
+END (memcpy)
 libc_hidden_builtin_def (memcpy)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/add_n.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/add_n.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/add_n.S Fri Mar  1 00:02:06 2013
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* mp_limb_t mpn_add_n (mp_ptr res_ptr, mp_srcptr s1_ptr, mp_srcptr s2_ptr,
                         mp_size_t size)
@@ -28,14 +26,8 @@
    possible 2-unrolled inner loop will not be.  Also, watch out for the
    alignment...  */
 
-EALIGN (BP_SYM (__mpn_add_n), 3, 0)
+EALIGN (__mpn_add_n, 3, 0)
 
-#if __BOUNDED_POINTERS__
-	slwi r10,r6,2		/* convert limbs to bytes */
-	CHECK_BOUNDS_BOTH_WIDE (r3, r8, r9, r10)
-	CHECK_BOUNDS_BOTH_WIDE (r4, r8, r9, r10)
-	CHECK_BOUNDS_BOTH_WIDE (r5, r8, r9, r10)
-#endif
 /* Set up for loop below.  */
 	mtcrf 0x01,r6
 	srwi. r7,r6,1
@@ -73,4 +65,4 @@
 /* Return the carry.  */
 L(1):	addze r3,r10
 	blr
-END (BP_SYM (__mpn_add_n))
+END (__mpn_add_n)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/addmul_1.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/addmul_1.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/addmul_1.S Fri Mar  1 00:02:06 2013
@@ -17,18 +17,11 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* mp_limb_t mpn_addmul_1 (mp_ptr res_ptr, mp_srcptr s1_ptr,
                            mp_size_t s1_size, mp_limb_t s2_limb)
    Calculate res+s1*s2 and put result back in res; return carry.  */
-ENTRY (BP_SYM (__mpn_addmul_1))
-#if __BOUNDED_POINTERS__
-	slwi r10,r5,2		/* convert limbs to bytes */
-	CHECK_BOUNDS_BOTH_WIDE (r3, r8, r9, r10)
-	CHECK_BOUNDS_BOTH_WIDE (r4, r8, r9, r10)
-#endif
+ENTRY (__mpn_addmul_1)
 	mtctr	r5
 
 	lwz	r0,0(r4)
@@ -52,4 +45,4 @@
 L(1):	stw	r8,4(r3)
 	addze	r3,r10
 	blr
-END (BP_SYM (__mpn_addmul_1))
+END (__mpn_addmul_1)

Removed: fsf/trunk/libc/sysdeps/powerpc/powerpc32/bp-asm.h
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/bp-asm.h (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/bp-asm.h (removed)
@@ -1,112 +1,0 @@
-/* Bounded-pointer definitions for PowerPC assembler.
-   Copyright (C) 2000-2013 Free Software Foundation, Inc.
-   Contributed by Greg McGary <greg@xxxxxxxxxx>
-   This file is part of the GNU C Library.  Its master source is NOT part of
-   the C library, however.  The master source lives in the GNU MP Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#if __BOUNDED_POINTERS__
-
-/* Byte offsets of BP components.  */
-# define oVALUE	0
-# define oLOW	4
-# define oHIGH	8
-
-/* Don't check bounds, just convert the BP register to its simple
-   pointer value.  */
-
-# define DISCARD_BOUNDS(rBP)			\
-	lwz	rBP, oVALUE(rBP)
-
-/* Check low bound, with the side effect that the BP register is converted
-   its simple pointer value.  Move the high bound into a register for
-   later use.  */
-
-# define CHECK_BOUNDS_LOW(rBP, rLOW, rHIGH)	\
-	lwz	rHIGH, oHIGH(rBP);		\
-	lwz	rLOW, oLOW(rBP);		\
-	lwz	rBP, oVALUE(rBP);		\
-	twllt	rBP, rLOW
-
-/* Check the high bound, which is in a register, using the given
-   conditional trap instruction.  */
-
-# define CHECK_BOUNDS_HIGH(rVALUE, rHIGH, TWLcc) \
-	TWLcc	rVALUE, rHIGH
-
-/* Check the high bound, which is stored at the return-value's high
-   bound slot, using the given conditional trap instruction.  */
-
-# define CHECK_BOUNDS_HIGH_RTN(rVALUE, rHIGH, TWLcc)	\
-	lwz	rHIGH, oHIGH(rRTN);			\
-	TWLcc	rVALUE, rHIGH
-
-/* Check both bounds, with the side effect that the BP register is
-   converted to its simple pointer value.  */
-
-# define CHECK_BOUNDS_BOTH(rBP, rLOW, rHIGH)	\
-	CHECK_BOUNDS_LOW(rBP, rLOW, rHIGH);	\
-	twlge	rBP, rHIGH
-
-/* Check bounds on a memory region of given length, with the side
-   effect that the BP register is converted to its simple pointer
-   value.  */
-
-# define CHECK_BOUNDS_BOTH_WIDE(rBP, rLOW, rHIGH, rLENGTH)	\
-	CHECK_BOUNDS_LOW (rBP, rLOW, rHIGH);			\
-	sub	rHIGH, rHIGH, rLENGTH;				\
-	twlgt	rBP, rHIGH
-
-# define CHECK_BOUNDS_BOTH_WIDE_LIT(rBP, rLOW, rHIGH, LENGTH)	\
-	CHECK_BOUNDS_LOW (rBP, rLOW, rHIGH);			\
-	subi	rHIGH, rHIGH, LENGTH;				\
-	twlgt	rBP, rHIGH
-
-/* Store a pointer value register into the return-value's pointer
-   value slot.  */
-
-# define STORE_RETURN_VALUE(rVALUE)		\
-	stw	rVALUE, oVALUE(rRTN)
-
-/* Store a low and high bounds into the return-value's pointer bounds
-   slots.  */
-
-# define STORE_RETURN_BOUNDS(rLOW, rHIGH)	\
-	stw	rLOW, oLOW(rRTN);		\
-	stw	rHIGH, oHIGH(rRTN)
-
-/* Stuff zero value/low/high into the BP addressed by rRTN.  */
-
-# define RETURN_NULL_BOUNDED_POINTER		\
-	li	r4, 0;				\
-	STORE_RETURN_VALUE (r4);		\
-	STORE_RETURN_BOUNDS (r4, r4)
-
-#else
-
-# define DISCARD_BOUNDS(rBP)
-# define CHECK_BOUNDS_LOW(rBP, rLOW, rHIGH)
-# define CHECK_BOUNDS_HIGH(rVALUE, rHIGH, TWLcc)
-# define CHECK_BOUNDS_HIGH_RTN(rVALUE, rHIGH, TWLcc)
-# define CHECK_BOUNDS_BOTH(rBP, rLOW, rHIGH)
-# define CHECK_BOUNDS_BOTH_WIDE(rBP, rLOW, rHIGH, rLENGTH)
-# define CHECK_BOUNDS_BOTH_WIDE_LIT(rBP, rLOW, rHIGH, LENGTH)
-# define STORE_RETURN_VALUE(rVALUE)
-# define STORE_RETURN_BOUNDS(rLOW, rHIGH)
-
-# define RETURN_NULL_BOUNDED_POINTER li rRTN, 0
-
-#endif

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/bsd-_setjmp.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/bsd-_setjmp.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/bsd-_setjmp.S Fri Mar  1 00:02:06 2013
@@ -18,14 +18,13 @@
 #include <shlib-compat.h>
 #include <libc-symbols.h>
 #include <sysdep.h>
-#include <bp-sym.h>
 
 #if defined NOT_IN_libc
 /* Build a non-versioned object for rtld-*.  */
-ENTRY (BP_SYM (_setjmp))
+ENTRY (_setjmp)
 	li r4,0			/* Set second argument to 0.  */
-	b BP_SYM (__sigsetjmp@local)
-END (BP_SYM (_setjmp))
+	b __sigsetjmp@local
+END (_setjmp)
 libc_hidden_def (_setjmp)
 #else
 /* Build a versioned object for libc.  */
@@ -33,10 +32,10 @@
 # if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)
 symbol_version (__novmx_setjmp,_setjmp,GLIBC_2.0);
 
-ENTRY (BP_SYM (__novmx_setjmp))
+ENTRY (__novmx_setjmp)
 	li r4,0			/* Set second argument to 0.  */
-	b BP_SYM (__novmx__sigsetjmp@local)
-END (BP_SYM (__novmx_setjmp))
+	b __novmx__sigsetjmp@local
+END (__novmx_setjmp)
 libc_hidden_def (__novmx_setjmp)
 # endif /* defined SHARED  && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) */
 
@@ -44,14 +43,14 @@
 /* __GI__setjmp prototype is needed for ntpl i.e. _setjmp is defined
    as a libc_hidden_proto & is used in sysdeps/generic/libc-start.c
    if HAVE_CLEANUP_JMP_BUF is defined */
-ENTRY (BP_SYM (__GI__setjmp))
+ENTRY (__GI__setjmp)
 	li r4,0			/* Set second argument to 0.  */
-	b BP_SYM (__vmx__sigsetjmp@local)
-END (BP_SYM (__GI__setjmp))
+	b __vmx__sigsetjmp@local
+END (__GI__setjmp)
 
-ENTRY (BP_SYM (__vmx_setjmp))
+ENTRY (__vmx_setjmp)
 	li r4,0			/* Set second argument to 0.  */
-	b BP_SYM (__vmx__sigsetjmp@local)
-END (BP_SYM (__vmx_setjmp))
+	b __vmx__sigsetjmp@local
+END (__vmx_setjmp)
 libc_hidden_def (__vmx_setjmp)
 #endif /* !NOT_IN_libc */

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/bsd-setjmp.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/bsd-setjmp.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/bsd-setjmp.S Fri Mar  1 00:02:06 2013
@@ -18,7 +18,6 @@
 #include <shlib-compat.h>
 #include <libc-symbols.h>
 #include <sysdep.h>
-#include <bp-sym.h>
 
 #if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)
 

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/bzero.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/bzero.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/bzero.S Fri Mar  1 00:02:06 2013
@@ -17,20 +17,11 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
 
-ENTRY (BP_SYM (__bzero))
+ENTRY (__bzero)
 
-#if __BOUNDED_POINTERS__
-	mr	r6,r4
-	li	r5,0
-	mr	r4,r3
-	/* Tell memset that we don't want a return value.  */
-	li	r3,0
-#else
 	mr	r5,r4
 	li	r4,0
-#endif
-	b	BP_SYM (memset)@local
-END (BP_SYM (__bzero))
-weak_alias (BP_SYM (__bzero), BP_SYM (bzero))
+	b	memset@local
+END (__bzero)
+weak_alias (__bzero, bzero)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/cell/memcpy.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/cell/memcpy.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/cell/memcpy.S Fri Mar  1 00:02:06 2013
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 #define PREFETCH_AHEAD 6	/* no cache lines SRC prefetching ahead  */
 #define ZERO_AHEAD 4		/* no cache lines DST zeroing ahead  */
@@ -41,7 +39,7 @@
 
 .align  7
 
-EALIGN (BP_SYM (memcpy), 5, 0)
+EALIGN (memcpy, 5, 0)
 	CALL_MCOUNT
 
 	dcbt	0,r4		/* Prefetch ONE SRC cacheline  */
@@ -240,5 +238,5 @@
 	stb	r0,0(r6)
 1:	blr
 
-END (BP_SYM (memcpy))
+END (memcpy)
 libc_hidden_builtin_def (memcpy)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S Fri Mar  1 00:02:06 2013
@@ -23,12 +23,9 @@
 #else
 # include <jmpbuf-offsets.h>
 #endif
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 	.machine	"altivec"
-ENTRY (BP_SYM (__longjmp))
-	CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE)
+ENTRY (__longjmp)
 #ifndef __NO_VMX__
 # ifdef PIC
 	mflr    r6
@@ -173,4 +170,4 @@
 	lfd fp31,((JB_FPRS+17*2)*4)(r3)
 	mr r3,r4
 	blr
-END (BP_SYM (__longjmp))
+END (__longjmp)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S Fri Mar  1 00:02:06 2013
@@ -23,12 +23,9 @@
 #else
 # include <jmpbuf-offsets.h>
 #endif
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 	.machine	"altivec"
-ENTRY (BP_SYM (__sigsetjmp))
-	CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE)
+ENTRY (__sigsetjmp)
 
 #ifdef PTR_MANGLE
 	mr   r5,r1
@@ -179,5 +176,5 @@
 	stvx	31,0,r6
 L(no_vmx):
 #endif
-	b BP_SYM (__sigjmp_save@local)
-END (BP_SYM (__sigsetjmp))
+	b __sigjmp_save@local
+END (__sigsetjmp)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/lshift.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/lshift.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/lshift.S Fri Mar  1 00:02:06 2013
@@ -17,19 +17,12 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* mp_limb_t mpn_lshift (mp_ptr wp, mp_srcptr up, mp_size_t usize,
   			 unsigned int cnt)  */
 
-EALIGN (BP_SYM (__mpn_lshift), 3, 0)
+EALIGN (__mpn_lshift, 3, 0)
 
-#if __BOUNDED_POINTERS__
-	slwi r10,r5,2		/* convert limbs to bytes */
-	CHECK_BOUNDS_BOTH_WIDE (r3, r8, r9, r10)
-	CHECK_BOUNDS_BOTH_WIDE (r4, r8, r9, r10)
-#endif
 	mtctr	r5		# copy size into CTR
 	cmplwi	cr0,r5,16	# is size < 16
 	slwi	r0,r5,2
@@ -129,4 +122,4 @@
 	DO_LSHIFT(30)
 	DO_LSHIFT(31)
 
-END (BP_SYM (__mpn_lshift))
+END (__mpn_lshift)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/memset.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/memset.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/memset.S Fri Mar  1 00:02:06 2013
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* __ptr_t [r3] memset (__ptr_t s [r3], int c [r4], size_t n [r5]));
    Returns 's'.
@@ -29,21 +27,14 @@
    takes advantage of the dcbz instruction.  */
 
 	.section	".text"
-EALIGN (BP_SYM (memset), 5, 1)
+EALIGN (memset, 5, 1)
 
 #define rTMP	r0
 #define rRTN	r3	/* initial value of 1st argument */
-#if __BOUNDED_POINTERS__
-# define rMEMP0	r4	/* original value of 1st arg */
-# define rCHR	r5	/* char to set in each byte */
-# define rLEN	r6	/* length of region to set */
-# define rMEMP	r10	/* address at which we are storing */
-#else
-# define rMEMP0	r3	/* original value of 1st arg */
-# define rCHR	r4	/* char to set in each byte */
-# define rLEN	r5	/* length of region to set */
-# define rMEMP	r6	/* address at which we are storing */
-#endif
+#define rMEMP0	r3	/* original value of 1st arg */
+#define rCHR	r4	/* char to set in each byte */
+#define rLEN	r5	/* length of region to set */
+#define rMEMP	r6	/* address at which we are storing */
 #define rALIGN	r7	/* number of bytes we are setting now (when aligning) */
 #define rMEMP2	r8
 
@@ -54,15 +45,6 @@
 #define rGOT	r9	/* Address of the Global Offset Table.  */
 #define rCLS	r8	/* Cache line size obtained from static.  */
 #define rCLM	r9	/* Cache line size mask to check for cache alignment.  */
-
-#if __BOUNDED_POINTERS__
-	cmplwi	cr1, rRTN, 0
-	CHECK_BOUNDS_BOTH_WIDE (rMEMP0, rTMP, rTMP2, rLEN)
-	beq	cr1, L(b0)
-	STORE_RETURN_VALUE (rMEMP0)
-	STORE_RETURN_BOUNDS (rTMP, rTMP2)
-L(b0):
-#endif
 
 /* take care of case for size <= 4  */
 	cmplwi	cr1, rLEN, 4
@@ -321,5 +303,5 @@
 	clrrwi.	rALIGN, rLEN, 5
 	b	L(nondcbz)
 
-END (BP_SYM (memset))
+END (memset)
 libc_hidden_builtin_def (memset)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/mul_1.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/mul_1.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/mul_1.S Fri Mar  1 00:02:06 2013
@@ -17,19 +17,12 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* mp_limb_t mpn_mul_1 (mp_ptr res_ptr, mp_srcptr s1_ptr,
                         mp_size_t s1_size, mp_limb_t s2_limb)
    Calculate s1*s2 and put result in res_ptr; return carry.  */
 
-ENTRY (BP_SYM (__mpn_mul_1))
-#if __BOUNDED_POINTERS__
-	slwi r10,r5,2		/* convert limbs to bytes */
-	CHECK_BOUNDS_BOTH_WIDE (r3, r8, r9, r10)
-	CHECK_BOUNDS_BOTH_WIDE (r4, r8, r9, r10)
-#endif
+ENTRY (__mpn_mul_1)
 	mtctr	r5
 
 	lwz	r0,0(r4)
@@ -49,4 +42,4 @@
 L(1):	stw	r7,4(r3)
 	addze	r3,r10
 	blr
-END (BP_SYM (__mpn_mul_1))
+END (__mpn_mul_1)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/fpu/mpa.c
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/fpu/mpa.c (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/fpu/mpa.c Fri Mar  1 00:02:06 2013
@@ -363,6 +363,7 @@
 {
   long i, j, k;
   long p2 = p;
+  double zk;
 
   EZ = EX;
 
@@ -370,45 +371,54 @@
   j = p2 + EY - EX;
   k = p2 + 1;
 
-  if (j < 1)
+  if (__glibc_unlikely (j < 1))
     {
       __cpy (x, z, p);
       return;
     }
-  else
-    Z[k] = ZERO;
+
+  zk = ZERO;
 
   for (; j > 0; i--, j--)
     {
-      Z[k] += X[i] + Y[j];
-      if (Z[k] >= RADIX)
-	{
-	  Z[k] -= RADIX;
-	  Z[--k] = ONE;
-	}
-      else
-	Z[--k] = ZERO;
+      zk += X[i] + Y[j];
+      if (zk >= RADIX)
+	{
+	  Z[k--] = zk - RADIX;
+	  zk = ONE;
+	}
+      else
+        {
+	  Z[k--] = zk;
+	  zk = ZERO;
+	}
     }
 
   for (; i > 0; i--)
     {
-      Z[k] += X[i];
-      if (Z[k] >= RADIX)
-	{
-	  Z[k] -= RADIX;
-	  Z[--k] = ONE;
-	}
-      else
-	Z[--k] = ZERO;
-    }
-
-  if (Z[1] == ZERO)
+      zk += X[i];
+      if (zk >= RADIX)
+	{
+	  Z[k--] = zk - RADIX;
+	  zk = ONE;
+	}
+      else
+        {
+	  Z[k--] = zk;
+	  zk = ZERO;
+	}
+    }
+
+  if (zk == ZERO)
     {
       for (i = 1; i <= p2; i++)
 	Z[i] = Z[i + 1];
     }
   else
-    EZ += ONE;
+    {
+      Z[1] = zk;
+      EZ += ONE;
+    }
 }
 
 /* Subtract the magnitudes of *X and *Y assuming that abs (*x) > abs (*y) > 0.
@@ -420,65 +430,63 @@
 {
   long i, j, k;
   long p2 = p;
+  double zk;
 
   EZ = EX;
-
-  if (EX == EY)
-    {
-      i = j = k = p2;
-      Z[k] = Z[k + 1] = ZERO;
-    }
-  else
-    {
-      j = EX - EY;
-      if (j > p2)
-	{
-	  __cpy (x, z, p);
-	  return;
-	}
-      else
-	{
-	  i = p2;
-	  j = p2 + 1 - j;
-	  k = p2;
-	  if (Y[j] > ZERO)
-	    {
-	      Z[k + 1] = RADIX - Y[j--];
-	      Z[k] = MONE;
-	    }
-	  else
-	    {
-	      Z[k + 1] = ZERO;
-	      Z[k] = ZERO;
-	      j--;
-	    }
-	}
-    }
-
+  i = p2;
+  j = p2 + EY - EX;
+  k = p2;
+
+  /* Y is too small compared to X, copy X over to the result.  */
+  if (__glibc_unlikely (j < 1))
+    {
+      __cpy (x, z, p);
+      return;
+    }
+
+  /* The relevant least significant digit in Y is non-zero, so we factor it in
+     to enhance accuracy.  */
+  if (j < p2 && Y[j + 1] > ZERO)
+    {
+      Z[k + 1] = RADIX - Y[j + 1];
+      zk = MONE;
+    }
+  else
+    zk = Z[k + 1] = ZERO;
+
+  /* Subtract and borrow.  */
   for (; j > 0; i--, j--)
     {
-      Z[k] += (X[i] - Y[j]);
-      if (Z[k] < ZERO)
-	{
-	  Z[k] += RADIX;
-	  Z[--k] = MONE;
-	}
-      else
-	Z[--k] = ZERO;
-    }
-
+      zk += (X[i] - Y[j]);
+      if (zk < ZERO)
+	{
+	  Z[k--] = zk + RADIX;
+	  zk = MONE;
+	}
+      else
+        {
+	  Z[k--] = zk;
+	  zk = ZERO;
+	}
+    }
+
+  /* We're done with digits from Y, so it's just digits in X.  */
   for (; i > 0; i--)
     {
-      Z[k] += X[i];
-      if (Z[k] < ZERO)
-	{
-	  Z[k] += RADIX;
-	  Z[--k] = MONE;
-	}
-      else
-	Z[--k] = ZERO;
-    }
-
+      zk += X[i];
+      if (zk < ZERO)
+	{
+	  Z[k--] = zk + RADIX;
+	  zk = MONE;
+	}
+      else
+        {
+	  Z[k--] = zk;
+	  zk = ZERO;
+	}
+    }
+
+  /* Normalize.  */
   for (i = 1; Z[i] == ZERO; i++);
   EZ = EZ - i + 1;
   for (k = 1; i <= p2 + 1;)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/memcmp.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/memcmp.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/memcmp.S Fri Mar  1 00:02:06 2013
@@ -17,13 +17,11 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* int [r3] memcmp (const char *s1 [r3], const char *s2 [r4], size_t size [r5])  */
 
 	.machine power4
-EALIGN (BP_SYM(memcmp), 4, 0)
+EALIGN (memcmp, 4, 0)
 	CALL_MCOUNT
 
 #define rTMP	r0
@@ -979,7 +977,7 @@
         lwz     r24,20(r1)
         lwz     1,0(1)
 	blr
-END (BP_SYM (memcmp))
+END (memcmp)
 
 libc_hidden_builtin_def (memcmp)
 weak_alias (memcmp, bcmp)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/memcpy.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/memcpy.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/memcpy.S Fri Mar  1 00:02:06 2013
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* __ptr_t [r3] memcpy (__ptr_t dst [r3], __ptr_t src [r4], size_t len [r5]);
    Returns 'dst'.
@@ -34,7 +32,7 @@
    Each case has an optimized unrolled loop.   */
 
 	.machine power4
-EALIGN (BP_SYM (memcpy), 5, 0)
+EALIGN (memcpy, 5, 0)
 	CALL_MCOUNT
 
     stwu  1,-32(1)
@@ -420,6 +418,6 @@
     lwz  31,24(1)
     addi 1,1,32
     blr
-END (BP_SYM (memcpy))
+END (memcpy)
 
 libc_hidden_builtin_def (memcpy)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/memset.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/memset.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/memset.S Fri Mar  1 00:02:06 2013
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* __ptr_t [r3] memset (__ptr_t s [r3], int c [r4], size_t n [r5]));
    Returns 's'.
@@ -28,7 +26,7 @@
    to 0, to take advantage of the dcbz instruction.  */
 
 	.machine power4
-EALIGN (BP_SYM (memset), 5, 0)
+EALIGN (memset, 5, 0)
 	CALL_MCOUNT
 
 #define rTMP	r0
@@ -224,5 +222,5 @@
         stw     rCHR, -4(rMEMP)
 	stw	rCHR, -8(rMEMP)
 	blr
-END (BP_SYM (memset))
+END (memset)
 libc_hidden_builtin_def (memset)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/strncmp.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/strncmp.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power4/strncmp.S Fri Mar  1 00:02:06 2013
@@ -17,14 +17,12 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* See strlen.s for comments on how the end-of-string testing works.  */
 
 /* int [r3] strncmp (const char *s1 [r3], const char *s2 [r4], size_t size [r5])  */
 
-EALIGN (BP_SYM(strncmp), 4, 0)
+EALIGN (strncmp, 4, 0)
 
 #define rTMP	r0
 #define rRTN	r3
@@ -171,5 +169,5 @@
 L(ux):
 	li	rRTN, 0
 	blr
-END (BP_SYM (strncmp))
+END (strncmp)
 libc_hidden_builtin_def (strncmp)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power6/memcpy.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power6/memcpy.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power6/memcpy.S Fri Mar  1 00:02:06 2013
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* __ptr_t [r3] memcpy (__ptr_t dst [r3], __ptr_t src [r4], size_t len [r5]);
    Returns 'dst'.
@@ -34,7 +32,7 @@
    Each case has an optimized unrolled loop.   */
 
 	.machine power6
-EALIGN (BP_SYM (memcpy), 5, 0)
+EALIGN (memcpy, 5, 0)
 	CALL_MCOUNT
 
     stwu   1,-32(1)
@@ -837,6 +835,6 @@
     lwz  31,24(1)
     addi 1,1,32
     blr
-END (BP_SYM (memcpy))
+END (memcpy)
 
 libc_hidden_builtin_def (memcpy)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power6/memset.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power6/memset.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power6/memset.S Fri Mar  1 00:02:06 2013
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* __ptr_t [r3] memset (__ptr_t s [r3], int c [r4], size_t n [r5]));
    Returns 's'.
@@ -28,7 +26,7 @@
    to 0, to take advantage of the dcbz instruction.  */
 
 	.machine power6
-EALIGN (BP_SYM (memset), 7, 0)
+EALIGN (memset, 7, 0)
 	CALL_MCOUNT
 
 #define rTMP	r0
@@ -537,5 +535,5 @@
         stw     rCHR, -4(rMEMP)
 	stw	rCHR, -8(rMEMP)
 	blr
-END (BP_SYM (memset))
+END (memset)
 libc_hidden_builtin_def (memset)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memchr.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memchr.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memchr.S Fri Mar  1 00:02:06 2013
@@ -18,12 +18,10 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* int [r3] memchr (char *s [r3], int byte [r4], int size [r5])  */
 	.machine  power7
-ENTRY (BP_SYM (__memchr))
+ENTRY (__memchr)
 	CALL_MCOUNT
 	dcbt	0,r3
 	clrrwi  r8,r3,2
@@ -202,6 +200,6 @@
 	li	r3,0
 	blr
 
-END (BP_SYM (__memchr))
-weak_alias (BP_SYM (__memchr), BP_SYM(memchr))
+END (__memchr)
+weak_alias (__memchr, memchr)
 libc_hidden_builtin_def (memchr)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memcmp.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memcmp.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memcmp.S Fri Mar  1 00:02:06 2013
@@ -17,15 +17,13 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* int [r3] memcmp (const char *s1 [r3],
 		    const char *s2 [r4],
 		    size_t size [r5])  */
 
 	.machine power7
-EALIGN (BP_SYM(memcmp),4,0)
+EALIGN (memcmp,4,0)
 	CALL_MCOUNT
 
 #define rTMP	r0
@@ -982,6 +980,6 @@
 	lwz	r24,20(r1)
 	lwz	1,0(1)
 	blr
-END (BP_SYM (memcmp))
+END (memcmp)
 libc_hidden_builtin_def (memcmp)
 weak_alias (memcmp,bcmp)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memcpy.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memcpy.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memcpy.S Fri Mar  1 00:02:06 2013
@@ -18,14 +18,12 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* __ptr_t [r3] memcpy (__ptr_t dst [r3], __ptr_t src [r4], size_t len [r5]);
    Returns 'dst'.  */
 
 	.machine  power7
-EALIGN (BP_SYM (memcpy), 5, 0)
+EALIGN (memcpy, 5, 0)
 	CALL_MCOUNT
 
 	stwu    1,-32(1)
@@ -522,5 +520,5 @@
 	addi    1,1,32
 	blr
 
-END (BP_SYM (memcpy))
+END (memcpy)
 libc_hidden_builtin_def (memcpy)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/mempcpy.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/mempcpy.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/mempcpy.S Fri Mar  1 00:02:06 2013
@@ -18,14 +18,12 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* __ptr_t [r3] __mempcpy (__ptr_t dst [r3], __ptr_t src [r4], size_t len [r5]);
 	Returns 'dst' + 'len'.  */
 
 	.machine  power7
-EALIGN (BP_SYM (__mempcpy), 5, 0)
+EALIGN (__mempcpy, 5, 0)
 	CALL_MCOUNT
 
 	stwu	1,-32(1)
@@ -464,7 +462,7 @@
 	addi	1,1,32
 	blr
 
-END (BP_SYM (__mempcpy))
-libc_hidden_def (BP_SYM (__mempcpy))
-weak_alias (BP_SYM (__mempcpy), BP_SYM (mempcpy))
+END (__mempcpy)
+libc_hidden_def (__mempcpy)
+weak_alias (__mempcpy, mempcpy)
 libc_hidden_builtin_def (mempcpy)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memrchr.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memrchr.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memrchr.S Fri Mar  1 00:02:06 2013
@@ -18,12 +18,10 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* int [r3] memrchr (char *s [r3], int byte [r4], int size [r5])  */
 	.machine  power7
-ENTRY (BP_SYM (__memrchr))
+ENTRY (__memrchr)
 	CALL_MCOUNT
 	dcbt	0,r3
 	mr	r7,r3
@@ -172,6 +170,6 @@
 	ble	L(null)
 	b	L(loop_small)
 
-END (BP_SYM (__memrchr))
-weak_alias (BP_SYM (__memrchr), BP_SYM(memrchr))
+END (__memrchr)
+weak_alias (__memrchr, memrchr)
 libc_hidden_builtin_def (memrchr)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memset.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memset.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/memset.S Fri Mar  1 00:02:06 2013
@@ -18,14 +18,12 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* __ptr_t [r3] memset (__ptr_t s [r3], int c [r4], size_t n [r5]));
    Returns 's'.  */
 
 	.machine  power7
-EALIGN (BP_SYM (memset), 5, 0)
+EALIGN (memset, 5, 0)
 	CALL_MCOUNT
 
 	.align	4
@@ -429,5 +427,5 @@
 	stw	4,4(10)
 	blr
 
-END (BP_SYM (memset))
+END (memset)
 libc_hidden_builtin_def (memset)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/rawmemchr.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/rawmemchr.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/rawmemchr.S Fri Mar  1 00:02:06 2013
@@ -18,12 +18,10 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* int [r3] rawmemchr (void *s [r3], int c [r4])  */
 	.machine  power7
-ENTRY (BP_SYM(__rawmemchr))
+ENTRY (__rawmemchr)
 	CALL_MCOUNT
 	dcbt	0,r3
 	clrrwi	r8,r3,2	      /* Align the address to word boundary.  */
@@ -96,6 +94,6 @@
 	srwi	r0,r0,3	      /* Convert leading zeroes to bytes.  */
 	add	r3,r8,r0      /* Return address of the matching char.  */
 	blr
-END (BP_SYM (__rawmemchr))
+END (__rawmemchr)
 weak_alias (__rawmemchr,rawmemchr)
 libc_hidden_builtin_def (__rawmemchr)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strcasecmp.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strcasecmp.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strcasecmp.S Fri Mar  1 00:02:06 2013
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 #include <locale-defines.h>
 
 /* int [r3] strcasecmp (const char *s1 [r3], const char *s2 [r4] )
@@ -33,7 +31,7 @@
 # define STRCMP   strcasecmp
 #endif
 
-ENTRY (BP_SYM (__STRCMP))
+ENTRY (__STRCMP)
 
 #define rRTN	r3	/* Return value */
 #define rSTR1	r5	/* 1st string */
@@ -125,7 +123,7 @@
 	bnelr
 	bne	cr7,L(loop)
 	blr
-END (BP_SYM (__STRCMP))
+END (__STRCMP)
 
-weak_alias (BP_SYM (__STRCMP), BP_SYM (STRCMP))
+weak_alias (__STRCMP, STRCMP)
 libc_hidden_builtin_def (__STRCMP)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strchr.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strchr.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strchr.S Fri Mar  1 00:02:06 2013
@@ -18,12 +18,10 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* int [r3] strchr (char *s [r3], int c [r4])  */
 	.machine  power7
-ENTRY (BP_SYM(strchr))
+ENTRY (strchr)
 	CALL_MCOUNT
 	dcbt	0,r3
 	clrrwi	r8,r3,2	      /* Align the address to word boundary.  */
@@ -197,6 +195,6 @@
 	srwi	r0,r0,3	      /* Convert leading zeros to bytes.  */
 	add	r3,r8,r0      /* Return address of the matching null byte.  */
 	blr
-END (BP_SYM (strchr))
-weak_alias (BP_SYM (strchr), BP_SYM (index))
+END (strchr)
+weak_alias (strchr, index)
 libc_hidden_builtin_def (strchr)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strchrnul.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strchrnul.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strchrnul.S Fri Mar  1 00:02:06 2013
@@ -18,12 +18,10 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* int [r3] strchrnul (char *s [r3], int c [r4])  */
 	.machine  power7
-ENTRY (BP_SYM(__strchrnul))
+ENTRY (__strchrnul)
 	CALL_MCOUNT
 	dcbt	0,r3
 	clrrwi	r8,r3,2	      /* Align the address to word boundary.  */
@@ -111,6 +109,6 @@
 	srwi	r0,r0,3	      /* Convert leading zeros to bytes.  */
 	add	r3,r8,r0      /* Return address of matching c/null byte.  */
 	blr
-END (BP_SYM (__strchrnul))
+END (__strchrnul)
 weak_alias (__strchrnul,strchrnul)
 libc_hidden_builtin_def (__strchrnul)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strlen.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strlen.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strlen.S Fri Mar  1 00:02:06 2013
@@ -18,12 +18,10 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* int [r3] strlen (char *s [r3])  */
 	.machine  power7
-ENTRY (BP_SYM (strlen))
+ENTRY (strlen)
 	CALL_MCOUNT
 	dcbt	0,r3
 	clrrwi	r4,r3,2	      /* Align the address to word boundary.  */
@@ -93,5 +91,5 @@
 	srwi	r0,r0,3	      /* Convert leading zeroes to bytes.  */
 	add	r3,r5,r0      /* Compute final length.  */
 	blr
-END (BP_SYM (strlen))
+END (strlen)
 libc_hidden_builtin_def (strlen)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strncmp.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strncmp.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strncmp.S Fri Mar  1 00:02:06 2013
@@ -17,8 +17,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>
-#include <bp-asm.h>
 
 /* See strlen.s for comments on how the end-of-string testing works.  */
 
@@ -26,7 +24,7 @@
 		     const char *s2 [r4],
 		     size_t size [r5])  */
 
-EALIGN (BP_SYM(strncmp),5,0)
+EALIGN (strncmp,5,0)
 
 #define rTMP	r0
 #define rRTN	r3
@@ -175,5 +173,5 @@
 L(ux):
 	li	rRTN,0
 	blr
-END (BP_SYM (strncmp))
+END (strncmp)
 libc_hidden_builtin_def (strncmp)

Modified: fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strnlen.S
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strnlen.S (original)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/power7/strnlen.S Fri Mar  1 00:02:06 2013
@@ -18,12 +18,10 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
-#include <bp-sym.h>

[... 807 lines stripped ...]
_______________________________________________
Commits mailing list
Commits@xxxxxxxxxx
http://eglibc.org/cgi-bin/mailman/listinfo/commits