_C_LABEL_STRING
snprintf(name, sizeof(name), _C_LABEL_STRING("_citrus_%s_%s_getops"),
__asm(".type " _C_LABEL_STRING(#name) ",%object")
__asm(".type " _C_LABEL_STRING(#name) ",@object")
__asm(".size " _C_LABEL_STRING(#name) "," \
__asm(".global " _C_LABEL_STRING(#name)); \
__asm(_C_LABEL_STRING(#name) " = " _C_LABEL_STRING(#guard) " + " \
__asm(".global " _C_LABEL_STRING(#alias) "\n" \
_C_LABEL_STRING(#alias) " = " _C_LABEL_STRING(#sym));
__asm(".weak " _C_LABEL_STRING(#alias) "\n" \
_C_LABEL_STRING(#alias) " = " _C_LABEL_STRING(#sym));
__asm(".weak " _C_LABEL_STRING(#sym));
#define __weak_reference(sym) ; __asm(".weak " _C_LABEL_STRING(#sym))
__asm(".globl " _C_LABEL_STRING(#name) "\n" \
".type " _C_LABEL_STRING(#name) ", %gnu_indirect_function\n" \
_C_LABEL_STRING(#name) " = " _C_LABEL_STRING(#resolver))
__asm(".globl " _C_LABEL_STRING(#name) "\n" \
".hidden " _C_LABEL_STRING(#name) "\n" \
".type " _C_LABEL_STRING(#name) ", %gnu_indirect_function\n" \
_C_LABEL_STRING(#name) " = " _C_LABEL_STRING(#resolver))
__asm(".globl " _C_LABEL_STRING(#name) "\n" \
".type " _C_LABEL_STRING(#name) ", @gnu_indirect_function\n" \
_C_LABEL_STRING(#name) " = " _C_LABEL_STRING(#resolver))
__asm(".globl " _C_LABEL_STRING(#name) "\n" \
".hidden " _C_LABEL_STRING(#name) "\n" \
".type " _C_LABEL_STRING(#name) ", @gnu_indirect_function\n" \
_C_LABEL_STRING(#name) " = " _C_LABEL_STRING(#resolver))
__asm(".global " _C_LABEL_STRING(#alias) "\n" \
_C_LABEL_STRING(#alias) " = " _C_LABEL_STRING(#sym));
__asm(".weak " _C_LABEL_STRING(#alias) "\n" \
_C_LABEL_STRING(#alias) " = " _C_LABEL_STRING(#sym));
__asm(".weak " _C_LABEL_STRING(#sym));
#define __weak_reference(sym) ; __asm(".weak " _C_LABEL_STRING(#sym))