diff options
-rw-r--r-- | sys/arch/i386/include/cdefs.h | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/sys/arch/i386/include/cdefs.h b/sys/arch/i386/include/cdefs.h index 05a765f283d..7877a9dbe8c 100644 --- a/sys/arch/i386/include/cdefs.h +++ b/sys/arch/i386/include/cdefs.h @@ -10,9 +10,9 @@ #ifndef _C_LABEL #ifdef __STDC__ -#define _C_LABEL(x) _STRING(_ ## x) +#define _C_LABEL(x) __STRING(_ ## x) #else -#define _C_LABEL(x) _STRING(_/**/x) +#define _C_LABEL(x) __STRING(_/**/x) #endif #endif /* _C_LABEL */ @@ -24,6 +24,8 @@ #define __warn_references(sym,msg) \ __asm__(".stabs \"" msg "\",30,0,0,0"); \ __asm__(".stabs \"_" #sym "\",1,0,0,0") +#define __weak_alias(alias,sym) \ + __asm__(".weak _" #alias "; _" #alias "= _" __STRING(sym)) #else #define __indr_reference(sym,alias) \ __asm__(".stabs \"_/**/alias\",11,0,0,0"); \ @@ -31,13 +33,11 @@ #define __warn_references(sym,msg) \ __asm__(".stabs msg,30,0,0,0"); \ __asm__(".stabs \"_/**/sym\",1,0,0,0") +#define __weak_alias(alias,sym) \ + __asm__(".weak _/**/alias; _/**/alias = _/**/sym") #endif #else #define __warn_references(sym,msg) /* nothing */ #endif -#define __weak_alias(alias,sym) \ - __asm__(".weak " _C_LABEL(alias) ";" \ - _C_LABEL(alias) "=" _C_LABEL(sym)) - #endif /* !_MACHINE_CDEFS_H_ */ |