summaryrefslogtreecommitdiffstats
path: root/compiler-rt/lib/assembly.h
diff options
context:
space:
mode:
authorAnton Korobeynikov <asl@math.spbu.ru>2011-04-19 17:50:09 +0000
committerAnton Korobeynikov <asl@math.spbu.ru>2011-04-19 17:50:09 +0000
commit165361044941232faa26ed98574014d093b47ed9 (patch)
tree06b700155aa9ad0fda6f7d0794d9206f0acf0fde /compiler-rt/lib/assembly.h
parentee92a6b33270ef5d85c4ea4caa585f2793813a61 (diff)
downloadbcm5719-llvm-165361044941232faa26ed98574014d093b47ed9.tar.gz
bcm5719-llvm-165361044941232faa26ed98574014d093b47ed9.zip
Get rid of darwin'isms. Provide convenient macro for assembler local lables.
llvm-svn: 129766
Diffstat (limited to 'compiler-rt/lib/assembly.h')
-rw-r--r--compiler-rt/lib/assembly.h24
1 files changed, 14 insertions, 10 deletions
diff --git a/compiler-rt/lib/assembly.h b/compiler-rt/lib/assembly.h
index 41c24d74ead..928f5fd70a8 100644
--- a/compiler-rt/lib/assembly.h
+++ b/compiler-rt/lib/assembly.h
@@ -26,29 +26,33 @@
*values* of two macros. This is quite brittle, though. */
#if defined(__APPLE__)
#define SYMBOL_NAME(name) _##name
+#define HIDDEN_DIRECTIVE .private_extern
+#define LOCAL_LABEL(name) L_##name
#else
#define SYMBOL_NAME(name) name
+#define HIDDEN_DIRECTIVE .hidden
+#define LOCAL_LABEL(name) .L_##name
#endif
#ifdef VISIBILITY_HIDDEN
-#define DEFINE_COMPILERRT_FUNCTION(name) \
- .globl SYMBOL_NAME(name) SEPARATOR \
- .private_extern SYMBOL_NAME(name) SEPARATOR \
+#define DEFINE_COMPILERRT_FUNCTION(name) \
+ .globl SYMBOL_NAME(name) SEPARATOR \
+ HIDDEN_DIRECTIVE SYMBOL_NAME(name) SEPARATOR \
SYMBOL_NAME(name):
#else
-#define DEFINE_COMPILERRT_FUNCTION(name) \
- .globl SYMBOL_NAME(name) SEPARATOR \
+#define DEFINE_COMPILERRT_FUNCTION(name) \
+ .globl SYMBOL_NAME(name) SEPARATOR \
SYMBOL_NAME(name):
#endif
-#define DEFINE_COMPILERRT_PRIVATE_FUNCTION(name) \
- .globl SYMBOL_NAME(name) SEPARATOR \
- .private_extern SYMBOL_NAME(name) SEPARATOR \
+#define DEFINE_COMPILERRT_PRIVATE_FUNCTION(name) \
+ .globl SYMBOL_NAME(name) SEPARATOR \
+ HIDDEN_DIRECTIVE SYMBOL_NAME(name) SEPARATOR \
SYMBOL_NAME(name):
#define DEFINE_COMPILERRT_PRIVATE_FUNCTION_UNMANGLED(name) \
- .globl name SEPARATOR \
- .private_extern name SEPARATOR \
+ .globl name SEPARATOR \
+ HIDDEN_DIRECTIVE name SEPARATOR \
name:
#endif /* COMPILERRT_ASSEMBLY_H */
OpenPOWER on IntegriCloud