diff --git a/src/system/libroot/posix/glibc/include/arch/arm/config.h b/src/system/libroot/posix/glibc/include/arch/arm/config.h index 8a0761b0eb..bccc55a90a 100644 --- a/src/system/libroot/posix/glibc/include/arch/arm/config.h +++ b/src/system/libroot/posix/glibc/include/arch/arm/config.h @@ -14,17 +14,12 @@ #define HAVE_GNU_LD 1 /* Define if using ELF, which supports weak symbols. - This implies HAVE_ASM_WEAK_DIRECTIVE and NO_UNDERSCORES; set by - --with-elf. */ + This implies HAVE_ASM_WEAK_DIRECTIVE set by --with-elf. */ #define HAVE_ELF 1 /* Define if using XCOFF. Set by --with-xcoff. */ #undef HAVE_XCOFF -/* Define if C symbols are asm symbols. Don't define if C symbols - have a `_' prepended to make the asm symbol. */ -#define NO_UNDERSCORES 1 - /* Define if weak symbols are available via the `.weak' directive. */ #define HAVE_ASM_WEAK_DIRECTIVE 1 diff --git a/src/system/libroot/posix/glibc/include/arch/m68k/config.h b/src/system/libroot/posix/glibc/include/arch/m68k/config.h index 8b0ec7150c..c24fe6b53e 100644 --- a/src/system/libroot/posix/glibc/include/arch/m68k/config.h +++ b/src/system/libroot/posix/glibc/include/arch/m68k/config.h @@ -14,17 +14,12 @@ #define HAVE_GNU_LD 1 /* Define if using ELF, which supports weak symbols. - This implies HAVE_ASM_WEAK_DIRECTIVE and NO_UNDERSCORES; set by - --with-elf. */ + This implies HAVE_ASM_WEAK_DIRECTIVE set by --with-elf. */ #define HAVE_ELF 1 /* Define if using XCOFF. Set by --with-xcoff. */ #undef HAVE_XCOFF -/* Define if C symbols are asm symbols. Don't define if C symbols - have a `_' prepended to make the asm symbol. */ -#define NO_UNDERSCORES 1 - /* Define if weak symbols are available via the `.weak' directive. */ #define HAVE_ASM_WEAK_DIRECTIVE 1 diff --git a/src/system/libroot/posix/glibc/include/arch/m68k/sysdep.h b/src/system/libroot/posix/glibc/include/arch/m68k/sysdep.h index cb8a1cd66c..e440ded83b 100644 --- a/src/system/libroot/posix/glibc/include/arch/m68k/sysdep.h +++ b/src/system/libroot/posix/glibc/include/arch/m68k/sysdep.h @@ -31,10 +31,6 @@ #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 - #else #define ALIGNARG(log2) log2 @@ -72,13 +68,11 @@ #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. */ #define syscall_error __syscall_error #define mcount _mcount -#endif #define PSEUDO(name, syscall_name, args) \ .globl syscall_error; \ diff --git a/src/system/libroot/posix/glibc/include/arch/ppc/config.h b/src/system/libroot/posix/glibc/include/arch/ppc/config.h index 3582e06a88..9b45388b0d 100644 --- a/src/system/libroot/posix/glibc/include/arch/ppc/config.h +++ b/src/system/libroot/posix/glibc/include/arch/ppc/config.h @@ -14,17 +14,12 @@ #define HAVE_GNU_LD 1 /* Define if using ELF, which supports weak symbols. - This implies HAVE_ASM_WEAK_DIRECTIVE and NO_UNDERSCORES; set by - --with-elf. */ + This implies HAVE_ASM_WEAK_DIRECTIVE set by --with-elf. */ #define HAVE_ELF 1 /* Define if using XCOFF. Set by --with-xcoff. */ #undef HAVE_XCOFF -/* Define if C symbols are asm symbols. Don't define if C symbols - have a `_' prepended to make the asm symbol. */ -#define NO_UNDERSCORES 1 - /* Define if weak symbols are available via the `.weak' directive. */ #define HAVE_ASM_WEAK_DIRECTIVE 1 diff --git a/src/system/libroot/posix/glibc/include/arch/x86/config.h b/src/system/libroot/posix/glibc/include/arch/x86/config.h index aed6e20f4a..f0ce78609c 100644 --- a/src/system/libroot/posix/glibc/include/arch/x86/config.h +++ b/src/system/libroot/posix/glibc/include/arch/x86/config.h @@ -14,17 +14,12 @@ #define HAVE_GNU_LD 1 /* Define if using ELF, which supports weak symbols. - This implies HAVE_ASM_WEAK_DIRECTIVE and NO_UNDERSCORES; set by - --with-elf. */ + This implies HAVE_ASM_WEAK_DIRECTIVE set by --with-elf. */ #define HAVE_ELF 1 /* Define if using XCOFF. Set by --with-xcoff. */ #undef HAVE_XCOFF -/* Define if C symbols are asm symbols. Don't define if C symbols - have a `_' prepended to make the asm symbol. */ -#define NO_UNDERSCORES 1 - /* Define if weak symbols are available via the `.weak' directive. */ #define HAVE_ASM_WEAK_DIRECTIVE 1 diff --git a/src/system/libroot/posix/glibc/include/arch/x86/sysdep.h b/src/system/libroot/posix/glibc/include/arch/x86/sysdep.h index 2350625a8a..6608473c7f 100644 --- a/src/system/libroot/posix/glibc/include/arch/x86/sysdep.h +++ b/src/system/libroot/posix/glibc/include/arch/x86/sysdep.h @@ -31,10 +31,6 @@ #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 - #else #define ALIGNARG(log2) log2 @@ -88,13 +84,11 @@ #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. */ #define syscall_error __syscall_error #define mcount _mcount -#endif #define PSEUDO(name, syscall_name, args) \ lose: SYSCALL_PIC_SETUP \ diff --git a/src/system/libroot/posix/glibc/include/arch/x86_64/config.h b/src/system/libroot/posix/glibc/include/arch/x86_64/config.h index 8ac90aa35f..38a209ae85 100644 --- a/src/system/libroot/posix/glibc/include/arch/x86_64/config.h +++ b/src/system/libroot/posix/glibc/include/arch/x86_64/config.h @@ -14,17 +14,12 @@ #define HAVE_GNU_LD 1 /* Define if using ELF, which supports weak symbols. - This implies HAVE_ASM_WEAK_DIRECTIVE and NO_UNDERSCORES; set by - --with-elf. */ + This implies HAVE_ASM_WEAK_DIRECTIVE set by --with-elf. */ #define HAVE_ELF 1 /* Define if using XCOFF. Set by --with-xcoff. */ #undef HAVE_XCOFF -/* Define if C symbols are asm symbols. Don't define if C symbols - have a `_' prepended to make the asm symbol. */ -#define NO_UNDERSCORES 1 - /* Define if weak symbols are available via the `.weak' directive. */ #define HAVE_ASM_WEAK_DIRECTIVE 1 diff --git a/src/system/libroot/posix/glibc/include/arch/x86_64/sysdep.h b/src/system/libroot/posix/glibc/include/arch/x86_64/sysdep.h index 156632493b..189d3ec0b4 100644 --- a/src/system/libroot/posix/glibc/include/arch/x86_64/sysdep.h +++ b/src/system/libroot/posix/glibc/include/arch/x86_64/sysdep.h @@ -21,25 +21,6 @@ #ifdef __ASSEMBLER__ -/* Syntactic details of assembler. */ - -#define cfi_startproc .cfi_startproc -#define cfi_endproc .cfi_endproc -#define cfi_def_cfa(reg, off) .cfi_def_cfa reg, off -#define cfi_def_cfa_register(reg) .cfi_def_cfa_register reg -#define cfi_def_cfa_offset(off) .cfi_def_cfa_offset off -#define cfi_adjust_cfa_offset(off) .cfi_adjust_cfa_offset off -#define cfi_offset(reg, off) .cfi_offset reg, off -#define cfi_rel_offset(reg, off) .cfi_rel_offset reg, off -#define cfi_register(r1, r2) .cfi_register r1, r2 -#define cfi_return_column(reg) .cfi_return_column reg -#define cfi_restore(reg) .cfi_restore reg -#define cfi_same_value(reg) .cfi_same_value reg -#define cfi_undefined(reg) .cfi_undefined reg -#define cfi_remember_state .cfi_remember_state -#define cfi_restore_state .cfi_restore_state -#define cfi_window_save .cfi_window_save - #ifdef HAVE_ELF /* ELF uses byte-counts for .align, most others use log2 of count of bytes. */ @@ -48,10 +29,6 @@ #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 - #else #define ALIGNARG(log2) log2 @@ -91,13 +68,11 @@ #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. */ #define syscall_error __syscall_error #define mcount _mcount -#endif #define PSEUDO(name, syscall_name, args) \ lose: \ diff --git a/src/system/libroot/posix/glibc/include/libc-symbols.h b/src/system/libroot/posix/glibc/include/libc-symbols.h index d0de8f91bb..bd400e5b61 100644 --- a/src/system/libroot/posix/glibc/include/libc-symbols.h +++ b/src/system/libroot/posix/glibc/include/libc-symbols.h @@ -63,19 +63,11 @@ #endif #ifndef __SYMBOL_PREFIX -# ifdef NO_UNDERSCORES # define __SYMBOL_PREFIX -# else -# define __SYMBOL_PREFIX "_" -# endif #endif #ifndef C_SYMBOL_NAME -# ifdef NO_UNDERSCORES # define C_SYMBOL_NAME(name) name -# else -# define C_SYMBOL_NAME(name) _##name -# endif #endif #ifndef ASM_LINE_SEP diff --git a/src/system/libroot/posix/glibc/include/sysdep.h b/src/system/libroot/posix/glibc/include/sysdep.h index 36e6884705..254bc558db 100644 --- a/src/system/libroot/posix/glibc/include/sysdep.h +++ b/src/system/libroot/posix/glibc/include/sysdep.h @@ -1,5 +1,5 @@ /* Generic asm macros used on many machines. - Copyright (C) 1991, 92, 93, 96, 98 Free Software Foundation, Inc. + Copyright (C) 1991-2018 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 @@ -13,28 +13,19 @@ 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, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + License along with the GNU C Library; if not, see + . */ #include "libc-symbols.h" #ifndef C_LABEL /* Define a macro we can use to construct the asm name for a C symbol. */ -#ifdef NO_UNDERSCORES #ifdef __STDC__ #define C_LABEL(name) name##: #else #define C_LABEL(name) name/**/: #endif -#else -#ifdef __STDC__ -#define C_LABEL(name) _##name##: -#else -#define C_LABEL(name) _/**/name/**/: -#endif -#endif #endif @@ -43,3 +34,26 @@ #ifndef END #define END(sym) #endif + +/* Makros to generate eh_frame unwind information. */ +#ifdef __ASSEMBLER__ +# define cfi_startproc .cfi_startproc +# define cfi_endproc .cfi_endproc +# define cfi_def_cfa(reg, off) .cfi_def_cfa reg, off +# define cfi_def_cfa_register(reg) .cfi_def_cfa_register reg +# define cfi_def_cfa_offset(off) .cfi_def_cfa_offset off +# define cfi_adjust_cfa_offset(off) .cfi_adjust_cfa_offset off +# define cfi_offset(reg, off) .cfi_offset reg, off +# define cfi_rel_offset(reg, off) .cfi_rel_offset reg, off +# define cfi_register(r1, r2) .cfi_register r1, r2 +# define cfi_return_column(reg) .cfi_return_column reg +# define cfi_restore(reg) .cfi_restore reg +# define cfi_same_value(reg) .cfi_same_value reg +# define cfi_undefined(reg) .cfi_undefined reg +# define cfi_remember_state .cfi_remember_state +# define cfi_restore_state .cfi_restore_state +# define cfi_window_save .cfi_window_save +# define cfi_personality(enc, exp) .cfi_personality enc, exp +# define cfi_lsda(enc, exp) .cfi_lsda enc, exp + +#endif