aboutsummaryrefslogtreecommitdiff
path: root/tests/asm.h
blob: e2c2524ed3e66f953d45f7c859f16bb6bd938153 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// Header to factor out platform differences in asm code.

// On Darwin, all symbols get an underscore prepended when compiled.  If we
// use any such symbols in asm code, we need to add that underscore.  So in
// general, any symbol named in asm code should be wrapped by VG_SYM.

// This one is for use in inline asm in C files.
#if defined(VGO_darwin)
#define VG_SYM(x) "_"#x
#else
#define VG_SYM(x) #x
#endif

// This one is for use in asm files.
#if defined(VGO_darwin)
#define VG_SYM_ASM(x) _##x
#else
#define VG_SYM_ASM(x) x
#endif