2014-09-12 22:14:23 +00:00
|
|
|
/* Add the symbol prefix to the symbol as needed.
|
|
|
|
Usage: SYMPFX(foo); */
|
|
|
|
#define __SYMPFX(pfx, sym) #pfx sym
|
|
|
|
#define _SYMPFX(pfx, sym) __SYMPFX(pfx, sym)
|
|
|
|
#define SYMPFX(sym) _SYMPFX(__USER_LABEL_PREFIX__, #sym)
|
|
|
|
|
|
|
|
/* Generate a .symver reference with symbol prefixes.
|
|
|
|
Usage: SYMVER(foo, foobar@ver); */
|
|
|
|
#define SYMVER(name, name2) __asm__(".symver " SYMPFX(name) "," SYMPFX(name2))
|
2017-04-10 11:32:00 +00:00
|
|
|
|
|
|
|
#if defined __powerpc64__ && defined _CALL_AIXDESC && !defined _CALL_LINUX
|
|
|
|
#define FUNC_SYMVER(name, name2) SYMVER(name, name2); \
|
|
|
|
__asm__(".symver ." SYMPFX(name) ",." SYMPFX(name2))
|
|
|
|
#else
|
|
|
|
#define FUNC_SYMVER(name, name2) SYMVER(name, name2)
|
|
|
|
#endif
|