+2012-01-08 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/arm/sysdep.h: Don't test or define NO_UNDERSCORES.
+ * sysdeps/unix/arm/start.c: Don't test HAVE_WEAK_SYMBOLS or
+ NO_UNDERSCORES.
+ * sysdeps/unix/arm/sysdep.S: Don't test NO_UNDERSCORES.
+
2012-01-08 Joseph Myers <joseph@codesourcery.com>
* sysdeps/arm/sysdep.h: Remove non-ELF support.
#define ASM_TYPE_DIRECTIVE(name,typearg) .type name,%##typearg;
#define ASM_SIZE_DIRECTIVE(name) .size name,.-name
-/* In ELF C symbols are asm symbols. */
-#undef NO_UNDERSCORES
-#define NO_UNDERSCORES
-
#define PLTJMP(_x) _x##(PLT)
/* APCS-32 doesn't preserve the condition codes across function call. */
#define CALL_MCOUNT /* Do nothing. */
#endif
-#ifdef NO_UNDERSCORES
/* Since C identifiers are not normally prefixed with an underscore
on this system, the asm identifier `syscall_error' intrudes on the
C name space. Make sure we use an innocuous name. */
#else
#define mcount _mcount
#endif
-#endif
#if defined(__ARM_EABI__)
/* Tag_ABI_align8_preserved: This code preserves 8-byte
/* Special startup code for ARM a.out binaries.
- Copyright (C) 1998, 2004 Free Software Foundation, Inc.
+ Copyright (C) 1998, 2004, 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
/* The first piece of initialized data. */
int __data_start = 0;
-#ifdef HAVE_WEAK_SYMBOLS
weak_alias (__data_start, data_start)
-#endif
extern void __libc_init (int argc, char **argv, char **envp);
extern int main (int argc, char **argv, char **envp);
/* If this was in C it might create its own stack frame and
screw up the arguments. */
-#ifdef NO_UNDERSCORES
asm (".text; .globl _start; _start: B start1");
-#else
-asm (".text; .globl __start; __start: B _start1");
-
-/* Make an alias called `start' (no leading underscore, so it can't
- conflict with C symbols) for `_start'. This is the name vendor crt0.o's
- tend to use, and thus the name most linkers expect. */
-asm (".set start, __start");
-#endif
/* Fool gcc into thinking that more args are passed. This makes it look
on the stack (correctly) for the real arguments. It causes somewhat
/* Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2002, 2003,
- 2004, 2005, 2009, 2011
+ 2004, 2005, 2009, 2011, 2012
Free Software Foundation, Inc.
This file is part of the GNU C Library.
#include <tls.h>
#undef syscall_error
-#ifdef NO_UNDERSCORES
__syscall_error:
-#else
-syscall_error:
-#endif
#if defined (EWOULDBLOCK_sys) && EWOULDBLOCK_sys != EAGAIN
/* We translate the system's EWOULDBLOCK error into EAGAIN.
The GNU C library always defines EWOULDBLOCK==EAGAIN.