Home | History | Annotate | Line # | Download | only in include
cdefs.h revision 1.7
      1  1.7       tv /*	$NetBSD: cdefs.h,v 1.7 1998/07/01 17:14:51 tv Exp $	*/
      2  1.1      jtc 
      3  1.1      jtc /*
      4  1.1      jtc  * Written by J.T. Conklin <jtc (at) wimsey.com> 01/17/95.
      5  1.1      jtc  * Public domain.
      6  1.1      jtc  */
      7  1.1      jtc 
      8  1.1      jtc #ifndef	_MACHINE_CDEFS_H_
      9  1.1      jtc #define	_MACHINE_CDEFS_H_
     10  1.1      jtc 
     11  1.6       tv #ifdef __ELF__
     12  1.6       tv #define	_C_LABEL(x)	x
     13  1.6       tv #else
     14  1.5  thorpej #define	_C_LABEL(x)	__CONCAT(_,x)
     15  1.6       tv #endif
     16  1.4  thorpej 
     17  1.4  thorpej #ifdef __GNUC__
     18  1.5  thorpej #define	__RENAME(x)	__asm__(___STRING(_C_LABEL(x)))
     19  1.1      jtc #endif
     20  1.1      jtc 
     21  1.1      jtc #ifdef __GNUC__
     22  1.1      jtc #ifdef __STDC__
     23  1.2      jtc #define __indr_reference(sym,alias)	\
     24  1.1      jtc 	__asm__(".stabs \"_" #alias "\",11,0,0,0");	\
     25  1.5  thorpej 	__asm__(".stabs \"_" #sym "\",1,0,0,0");
     26  1.1      jtc #define __warn_references(sym,msg)	\
     27  1.1      jtc 	__asm__(".stabs \"" msg "\",30,0,0,0");		\
     28  1.5  thorpej 	__asm__(".stabs \"_" #sym "\",1,0,0,0");
     29  1.1      jtc #else
     30  1.2      jtc #define __indr_reference(sym,alias)	\
     31  1.1      jtc 	__asm__(".stabs \"_/**/alias\",11,0,0,0");	\
     32  1.5  thorpej 	__asm__(".stabs \"_/**/sym\",1,0,0,0");
     33  1.1      jtc #define __warn_references(sym,msg)	\
     34  1.1      jtc 	__asm__(".stabs msg,30,0,0,0");			\
     35  1.5  thorpej 	__asm__(".stabs \"_/**/sym\",1,0,0,0");
     36  1.1      jtc #endif
     37  1.3       pk #else
     38  1.3       pk #define __indr_reference(sym,alias)
     39  1.7       tv #define __warn_references(sym,msg)
     40  1.7       tv #endif
     41  1.7       tv 
     42  1.7       tv #ifdef __ELF__
     43  1.7       tv /* XXX: we should be able to do weak as __indr_reference, and __weak_alias. */
     44  1.7       tv #undef __indr_reference
     45  1.7       tv #undef __warn_references
     46  1.3       pk #define __warn_references(sym,msg)
     47  1.1      jtc #endif
     48  1.1      jtc 
     49  1.1      jtc #endif /* !_MACHINE_CDEFS_H_ */
     50