diff options
Diffstat (limited to 'libc/include/sys/cdefs_elf.h')
-rw-r--r-- | libc/include/sys/cdefs_elf.h | 42 |
1 files changed, 4 insertions, 38 deletions
diff --git a/libc/include/sys/cdefs_elf.h b/libc/include/sys/cdefs_elf.h index 0887fa57b..bb846b7fd 100644 --- a/libc/include/sys/cdefs_elf.h +++ b/libc/include/sys/cdefs_elf.h @@ -38,20 +38,10 @@ #define _C_LABEL_STRING(x) x #endif -#if __STDC__ #define ___RENAME(x) __asm__(___STRING(_C_LABEL(x))) -#else -#ifdef __LEADING_UNDERSCORE -#define ___RENAME(x) ____RENAME(_/**/x) -#define ____RENAME(x) __asm__(___STRING(x)) -#else -#define ___RENAME(x) __asm__(___STRING(x)) -#endif -#endif #define __indr_reference(sym,alias) /* nada, since we do weak refs */ -#if __STDC__ #define __strong_alias(alias,sym) \ __asm__(".global " _C_LABEL_STRING(#alias) "\n" \ _C_LABEL_STRING(#alias) " = " _C_LABEL_STRING(#sym)); @@ -61,39 +51,15 @@ _C_LABEL_STRING(#alias) " = " _C_LABEL_STRING(#sym)); #define __weak_extern(sym) \ __asm__(".weak " _C_LABEL_STRING(#sym)); -#define __warn_references(sym,msg) \ - __asm__(".section .gnu.warning." #sym "\n\t.ascii \"" msg "\"\n\t.text"); - -#else /* !__STDC__ */ -#ifdef __LEADING_UNDERSCORE -#define __weak_alias(alias,sym) ___weak_alias(_/**/alias,_/**/sym) -#define ___weak_alias(alias,sym) \ - __asm__(".weak alias\nalias = sym"); -#else -#define __weak_alias(alias,sym) \ - __asm__(".weak alias\nalias = sym"); -#endif -#ifdef __LEADING_UNDERSCORE -#define __weak_extern(sym) ___weak_extern(_/**/sym) -#define ___weak_extern(sym) \ - __asm__(".weak sym"); -#else -#define __weak_extern(sym) \ - __asm__(".weak sym"); -#endif +/* We use __warnattr instead of __warn_references. + * TODO: remove this and put an empty definition in one of the upstream-* compatibility headers. + */ #define __warn_references(sym,msg) \ - __asm__(".section .gnu.warning.sym\n\t.ascii msg ; .text"); - -#endif /* !__STDC__ */ + /*__asm__(".section .gnu.warning." #sym "\n\t.ascii \"" msg "\"\n\t.text");*/ -#if __STDC__ #define __SECTIONSTRING(_sec, _str) \ __asm__(".section " #_sec "\n\t.asciz \"" _str "\"\n\t.previous") -#else -#define __SECTIONSTRING(_sec, _str) \ - __asm__(".section _sec\n\t.asciz _str\n\t.previous") -#endif /* GCC visibility helper macro */ /* This must be used to tag non-static functions that are private, i.e. |