Remove ARM EABI/old-ABI conditionals.
authorJoseph Myers <joseph@codesourcery.com>
Sat, 21 Apr 2012 17:03:39 +0000 (10:03 -0700)
committerJoseph Myers <joseph@codesourcery.com>
Sat, 21 Apr 2012 17:03:39 +0000 (10:03 -0700)
ChangeLog.arm
sysdeps/arm/shlib-versions
sysdeps/arm/start.S
sysdeps/arm/sysdep.h
sysdeps/unix/sysv/linux/arm/clone.S
sysdeps/unix/sysv/linux/arm/ldsodefs.h
sysdeps/unix/sysv/linux/arm/sigaction.c
sysdeps/unix/sysv/linux/arm/vfork.S

index d648927..908d0bd 100644 (file)
@@ -1,6 +1,16 @@
 2012-04-21  Joseph Myers  <joseph@codesourcery.com>
 
        [BZ #13556]
+       * sysdeps/arm/shlib-versions (arm.*-.*-linux.*): Remove old-ABI
+       entry.
+       * sysdeps/arm/start.S: Remove __ARM_EABI__ conditionals.
+       * sysdeps/arm/sysdep.h: Likewise.
+       * sysdeps/unix/sysv/linux/arm/clone.S: Likewise.
+       * sysdeps/unix/sysv/linux/arm/ldsodefs.h: Likewise.
+       * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise.
+       * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
+
+       [BZ #13556]
        * sysdeps/arm/preconfigure: Don't include /eabi in $machine.
        * sysdeps/arm/Makefile [subdir = elf] (sysdep_routines): Add
        setting from eabi/Makefile.
index 491dd0a..626d58b 100644 (file)
@@ -1,4 +1,3 @@
 arm.*-.*-linux-gnueabi.*       DEFAULT                 GLIBC_2.4
 
 arm.*-.*-linux-gnueabi.*       ld=ld-linux.so.3
-arm.*-.*-linux.*       ld=ld-linux.so.2
index a857d8b..7f3de8c 100644 (file)
@@ -1,6 +1,5 @@
 /* Startup code for ARM & ELF
-   Copyright (C) 1995, 1996, 1997, 1998, 2001, 2002, 2005, 2008
-   Free Software Foundation, Inc.
+   Copyright (C) 1995-2012 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
                                        NULL
 */
 
-#if defined(__ARM_EABI__)
 /* Tag_ABI_align8_preserved: This code preserves 8-byte
    alignment in any callee.  */
        .eabi_attribute 25, 1
 /* Tag_ABI_align8_needed: This code may require 8-byte alignment from
    the caller.  */
        .eabi_attribute 24, 1
-#endif
 
 #if defined(__thumb2__)
        .thumb
index 6d15f79..7800456 100644 (file)
@@ -77,8 +77,8 @@
 
 /* If compiled for profiling, call `mcount' at the start of each function.  */
 #ifdef PROF
-/* Call __gnu_mcount_nc if GCC >= 4.4 and abi = EABI.  */
-#if __GNUC_PREREQ(4,4) && defined(__ARM_EABI__)
+/* 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); \
    on this system, the asm identifier `syscall_error' intrudes on the
    C name space.  Make sure we use an innocuous name.  */
 #define        syscall_error   __syscall_error
-#if __GNUC_PREREQ(4,4) && defined(__ARM_EABI__)
+#if __GNUC_PREREQ(4,4)
 #define mcount         __gnu_mcount_nc
 #else
 #define mcount         _mcount
 #endif
 
-#if defined(__ARM_EABI__)
 /* Tag_ABI_align8_preserved: This code preserves 8-byte
    alignment in any callee.  */
        .eabi_attribute 25, 1
 /* Tag_ABI_align8_needed: This code may require 8-byte alignment from
    the caller.  */
        .eabi_attribute 24, 1
-#endif
 
 #endif /* __ASSEMBLER__ */
index 8da4117..ec042ff 100644 (file)
@@ -1,5 +1,4 @@
-/* Copyright (C) 1996, 1997, 1998, 1999, 2002, 2005, 2008, 2009, 2010
-   Free Software Foundation, Inc.
+/* Copyright (C) 1996-2012 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Pat Beirne <patb@corelcomputer.com>
 
@@ -49,33 +48,19 @@ ENTRY(__clone)
        mov     ip, r2
 #endif
        @ new sp is already in r1
-#ifdef __ARM_EABI__
        stmfd   sp!, {r4, r7}
        cfi_adjust_cfa_offset (8)
        cfi_rel_offset (r4, 0)
        cfi_rel_offset (r7, 4)
-#else
-       str     r4, [sp, #-8]!
-       cfi_adjust_cfa_offset (8)
-       cfi_rel_offset (r4, 0)
-#endif
        ldr     r2, [sp, #8]
        ldr     r3, [sp, #12]
        ldr     r4, [sp, #16]
-#ifdef __ARM_EABI__
        ldr     r7, =SYS_ify(clone)
        swi     0x0
-#else
-       swi     SYS_ify(clone)
-#endif
        cfi_endproc
        cmp     r0, #0
        beq     1f
-#ifdef __ARM_EABI__
        ldmfd   sp!, {r4, r7}
-#else
-       ldr     r4, [sp], #8
-#endif
        blt     PLTJMP(C_SYMBOL_NAME(__syscall_error))
        RETINSTR(, lr)
 
@@ -94,12 +79,8 @@ PSEUDO_END (__clone)
        mov     r1, r0
        tst     ip, #CLONE_VM
        movne   r0, #-1
-#ifdef __ARM_EABI__
        ldr     r7, =SYS_ify(getpid)
        swieq   0x0
-#else
-       swieq   SYS_ify(getpid)
-#endif
        str     r0, [r1, #PID_OFFSET]
        str     r0, [r1, #TID_OFFSET]
 3:
index 6966f8a..8980bb1 100644 (file)
 #undef VALID_ELF_OSABI
 #undef MORE_ELF_HEADER_DATA
 
-#ifdef __ARM_EABI__
 #define EXTRA_OSABI ELFOSABI_ARM_AEABI
-#else
-#define EXTRA_OSABI ELFOSABI_ARM
-#endif
 
 #define VALID_ELF_HEADER(hdr,exp,size)         \
   (memcmp (hdr, exp, size) == 0                        \
index 4f6e8bf..e7b51c6 100644 (file)
@@ -1,5 +1,4 @@
-/* Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2005, 2006
-   Free Software Foundation, Inc.
+/* Copyright (C) 1997-2012 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -35,26 +34,21 @@ int __libc_missing_rt_sigs;
 
 #define SA_RESTORER    0x04000000
 
-#ifdef __ARM_EABI__
 extern void __default_sa_restorer_v1(void);
 extern void __default_sa_restorer_v2(void);
 extern void __default_rt_sa_restorer_v1(void);
 extern void __default_rt_sa_restorer_v2(void);
-# ifdef __ASSUME_SIGFRAME_V2
-#  define __default_sa_restorer __default_sa_restorer_v2
-#  define __default_rt_sa_restorer __default_rt_sa_restorer_v2
-# else
-#  include <ldsodefs.h>
-#  define __default_sa_restorer (GLRO(dl_osversion) >= 0x020612        \
+#ifdef __ASSUME_SIGFRAME_V2
+# define __default_sa_restorer __default_sa_restorer_v2
+# define __default_rt_sa_restorer __default_rt_sa_restorer_v2
+#else
+# include <ldsodefs.h>
+# define __default_sa_restorer (GLRO(dl_osversion) >= 0x020612 \
                                 ? __default_sa_restorer_v2     \
                                 : __default_sa_restorer_v1)
-#  define __default_rt_sa_restorer (GLRO(dl_osversion) >= 0x020612     \
+# define __default_rt_sa_restorer (GLRO(dl_osversion) >= 0x020612      \
                                    ? __default_rt_sa_restorer_v2       \
                                    : __default_rt_sa_restorer_v1)
-# endif
-#else
-extern void __default_sa_restorer(void);
-extern void __default_rt_sa_restorer(void);
 #endif
 
 /* When RT signals are in use we need to use a different return stub.  */
index cbd42e8..99c366d 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999, 2002, 2003, 2005 Free Software Foundation, Inc.
+/* Copyright (C) 1999-2012 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Philip Blundell <philb@gnu.org>.
 
@@ -32,7 +32,6 @@ ENTRY (__vfork)
 #ifdef SAVE_PID
        SAVE_PID
 #endif
-#ifdef __ARM_EABI__
        /* The DO_CALL macro saves r7 on the stack, to enable generation
           of ARM unwind info.  Since the stack is initially shared between
           parent and child of vfork, that saved value could be corrupted.
@@ -51,9 +50,6 @@ ENTRY (__vfork)
        cfi_adjust_cfa_offset (-4)
        mov     r7, ip
        cfi_restore (r7);
-#else
-       swi     SYS_ify(vfork)
-#endif
 #ifdef RESTORE_PID
        RESTORE_PID
 #endif