1 /* $NetBSD: cdefs.h,v 1.1 1997/10/14 06:48:09 sakamoto Exp $ */ 2 3 #ifndef _MACHINE_CDEFS_H_ 4 #define _MACHINE_CDEFS_H_ 5 6 #define _C_LABEL(x) _STRING(x) 7 8 #define __DO_NOT_DO_WEAK__ /* NO WEAK SYMS IN LIBC YET */ 9 10 #ifndef __DO_NOT_DO_WEAK__ 11 #define __indr_reference(sym, alias) /* use weak symbols instead */ 12 #endif 13 14 #ifdef __STDC__ 15 16 #ifndef __DO_NOT_DO_WEAK__ 17 #define __weak_alias(alias, sym) \ 18 __asm__(".weak " #alias " ; " #alias " = " #sym) 19 #endif 20 21 #define __warn_references(sym, msg) \ 22 __asm__(".section .gnu.warning." #sym " ; .ascii \"" msg "\" ; .text") 23 24 #else /* ! __STDC__ */ 25 26 #ifndef __DO_NOT_DO_WEAK__ 27 #define __weak_alias(alias, sym) \ 28 __asm__(".weak alias ; alias = sym") 29 #endif 30 31 #define __warn_references(sym, msg) \ 32 __asm__(".section .gnu.warning.sym ; .ascii msg ; .text") 33 34 #endif /* __STDC__ */ 35 36 #endif /* !_MACHINE_CDEFS_H_ */ 37