about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog15
-rw-r--r--config.h.in2
-rw-r--r--elf/dl-runtime.c2
-rw-r--r--ports/ChangeLog.am336
-rw-r--r--ports/sysdeps/am33/dl-machine.h4
-rw-r--r--string/bits/string2.h2
-rw-r--r--sysdeps/i386/dl-machine.h2
-rw-r--r--sysdeps/unix/sysv/linux/shmat.c9
-rw-r--r--sysdeps/x86/bits/string.h2
9 files changed, 28 insertions, 16 deletions
diff --git a/ChangeLog b/ChangeLog
index d28d4179d7..7013c09f64 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,21 @@
 2013-02-14  Joseph Myers  <joseph@codesourcery.com>
 
 	[BZ #13550]
+	* config.h.in [USE_REGPARMS && !PROF && !__BOUNDED_POINTERS__]:
+	Remove __BOUNDED_POINTERS__ from condition.
+	* elf/dl-runtime.c [!PROF && !__BOUNDED_POINTERS__]: Likewise.
+	* string/bits/string2.h [!__NO_STRING_INLINES &&
+	!__BOUNDED_POINTERS__]: Likewise.
+	* sysdeps/i386/dl-machine.h [!PROF && !__BOUNDED_POINTERS__]:
+	Likewise.
+	* sysdeps/unix/sysv/linux/shmat.c (shmat) [__BOUNDED_POINTERS__]:
+	Remove conditional code.
+	* sysdeps/x86/bits/string.h [!__NO_STRING_INLINES &&
+	__USE_STRING_INLINES && __GNUC__ && __GNUC__ >= 2 &&
+	!__BOUNDED_POINTERS__]: Remove __BOUNDED_POINTERS__ from
+	condition.
+
+	[BZ #13550]
 	* csu/libc-start.c: Do not include <bp-sym.h>.
 	[!LIBC_START_MAIN] (LIBC_START_MAIN): Do not use BP_SYM.
 	* elf/dl-open.c: Do not include <bp-sym.h>.
diff --git a/config.h.in b/config.h.in
index f3fe6b88be..8c2479ef48 100644
--- a/config.h.in
+++ b/config.h.in
@@ -115,7 +115,7 @@
 
 /* Defined to some form of __attribute__ ((...)) if the compiler supports
    a different, more efficient calling convention.  */
-#if defined USE_REGPARMS && !defined PROF && !defined __BOUNDED_POINTERS__
+#if defined USE_REGPARMS && !defined PROF
 # define internal_function __attribute__ ((regparm (3), stdcall))
 #endif
 
diff --git a/elf/dl-runtime.c b/elf/dl-runtime.c
index 3ca02f51b9..828474838c 100644
--- a/elf/dl-runtime.c
+++ b/elf/dl-runtime.c
@@ -148,7 +148,7 @@ _dl_fixup (
   return elf_machine_fixup_plt (l, result, reloc, rel_addr, value);
 }
 
-#if !defined PROF && !__BOUNDED_POINTERS__
+#ifndef PROF
 DL_FIXUP_VALUE_TYPE
 __attribute ((noinline)) ARCH_FIXUP_ATTRIBUTE
 _dl_profile_fixup (
diff --git a/ports/ChangeLog.am33 b/ports/ChangeLog.am33
index 15138e336a..2e5c0caac0 100644
--- a/ports/ChangeLog.am33
+++ b/ports/ChangeLog.am33
@@ -1,3 +1,9 @@
+2013-02-14  Joseph Myers  <joseph@codesourcery.com>
+
+	[BZ #13550]
+	* sysdeps/am33/dl-machine.h [!PROF && !__BOUNDED_POINTERS__]:
+	Remove __BOUNDED_POINTERS__ from condition.
+
 2013-02-13  Joseph Myers  <joseph@codesourcery.com>
 
 	[BZ #13550]
diff --git a/ports/sysdeps/am33/dl-machine.h b/ports/sysdeps/am33/dl-machine.h
index f22fee875e..924319d039 100644
--- a/ports/sysdeps/am33/dl-machine.h
+++ b/ports/sysdeps/am33/dl-machine.h
@@ -55,7 +55,7 @@ elf_machine_load_address (void)
   return off + gotaddr - gotval;
 }
 
-#if !defined PROF && !__BOUNDED_POINTERS__
+#ifndef PROF
 /* We add a declaration of this function here so that in dl-runtime.c
    the ELF_MACHINE_RUNTIME_TRAMPOLINE macro really can pass the parameters
    in registers.
@@ -114,7 +114,7 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile)
 
 /* This code is used in dl-runtime.c to call the `fixup' function
    and then redirect to the address it returns.  */
-#if !defined PROF && !__BOUNDED_POINTERS__
+#ifndef PROF
 # define ELF_MACHINE_RUNTIME_TRAMPOLINE asm ("\
 	.text\n\
 	.globl _dl_runtime_resolve\n\
diff --git a/string/bits/string2.h b/string/bits/string2.h
index 8b6a36fab5..94f5ee917f 100644
--- a/string/bits/string2.h
+++ b/string/bits/string2.h
@@ -21,7 +21,7 @@
 # error "Never use <bits/string2.h> directly; include <string.h> instead."
 #endif
 
-#if !defined __NO_STRING_INLINES && !defined __BOUNDED_POINTERS__
+#ifndef __NO_STRING_INLINES
 
 /* Unlike the definitions in the header <bits/string.h> the
    definitions contained here are not optimized down to assembler
diff --git a/sysdeps/i386/dl-machine.h b/sysdeps/i386/dl-machine.h
index 1f2cb60163..0b4c46736d 100644
--- a/sysdeps/i386/dl-machine.h
+++ b/sysdeps/i386/dl-machine.h
@@ -144,7 +144,7 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile)
 
 #ifdef IN_DL_RUNTIME
 
-# if !defined PROF && !__BOUNDED_POINTERS__
+# ifndef PROF
 /* We add a declaration of this function here so that in dl-runtime.c
    the ELF_MACHINE_RUNTIME_TRAMPOLINE macro really can pass the parameters
    in registers.
diff --git a/sysdeps/unix/sysv/linux/shmat.c b/sysdeps/unix/sysv/linux/shmat.c
index 45f0dea65a..bac1b290ac 100644
--- a/sysdeps/unix/sysv/linux/shmat.c
+++ b/sysdeps/unix/sysv/linux/shmat.c
@@ -38,15 +38,6 @@ shmat (shmid, shmaddr, shmflg)
   unsigned long resultvar;
   void *raddr;
 
-#if __BOUNDED_POINTERS__
-  size_t length = ~0;
-  struct shmid_ds shmds;
-  /* It's unfortunate that we need to make another system call to get
-     the shared memory segment length...  */
-  if (shmctl (shmid, IPC_STAT, &shmds) == 0)
-    length = shmds.shm_segsz;
-#endif
-
   resultvar = INTERNAL_SYSCALL (ipc, err, 5, IPCOP_shmat,
 				shmid, shmflg,
 				(long int) &raddr,
diff --git a/sysdeps/x86/bits/string.h b/sysdeps/x86/bits/string.h
index 41d204199c..24b64ec94d 100644
--- a/sysdeps/x86/bits/string.h
+++ b/sysdeps/x86/bits/string.h
@@ -36,7 +36,7 @@
 /* We only provide optimizations if the user selects them and if
    GNU CC is used.  */
 # if !defined __NO_STRING_INLINES && defined __USE_STRING_INLINES \
-    && defined __GNUC__ && __GNUC__ >= 2 && !__BOUNDED_POINTERS__
+    && defined __GNUC__ && __GNUC__ >= 2
 
 # ifndef __STRING_INLINE
 #  ifndef __extern_inline