1// F32 - function available on all 32 bit architectures 2// F64 - function available on all 64 bit architectures 3// F_X86_ANY - function available on i386 and x86_64 4// F_I386 - function available only on i386 5// F_X64 - function available only on x86_64 6// F_ARM32 - function available only on arm32 7// F_ARM64 - function available only on arm64 8// F_ARM_ANY - function available on 32 and 64 bit arm 9// F_NON_I386 - function available on everything but i386 10#if defined(DEF_X64) 11#define F64(x) x 12#define F_X64(x) x 13#define F_X86_ANY(x) x 14#define F_NON_I386(x) x 15#elif defined(DEF_I386) 16#define F32(x) x 17#define F_I386(x) x 18#define F_X86_ANY(x) x 19#elif defined(DEF_ARM32) 20#define F32(x) x 21#define F_ARM32(x) x 22#define F_ARM_ANY(x) x 23#define F_NON_I386(x) x 24#elif defined(DEF_ARM64) 25#define F64(x) x 26#define F_ARM64(x) x 27#define F_ARM_ANY(x) x 28#define F_NON_I386(x) x 29#endif 30 31#ifndef F32 32#define F32(x) 33#endif 34#ifndef F64 35#define F64(x) 36#endif 37#ifndef F_X86_ANY 38#define F_X86_ANY(x) 39#endif 40#ifndef F_I386 41#define F_I386(x) 42#endif 43#ifndef F_X64 44#define F_X64(x) 45#endif 46#ifndef F_ARM_ANY 47#define F_ARM_ANY(x) 48#endif 49#ifndef F_ARM32 50#define F_ARM32(x) 51#endif 52#ifndef F_ARM64 53#define F_ARM64(x) 54#endif 55#ifndef F_NON_I386 56#define F_NON_I386(x) 57#endif 58