summaryrefslogtreecommitdiff
path: root/lib/assembly.h
diff options
context:
space:
mode:
authorNick Kledzik <kledzik@apple.com>2012-07-11 19:21:39 +0000
committerNick Kledzik <kledzik@apple.com>2012-07-11 19:21:39 +0000
commiteb1b5f3d43d824924e799caaf75e8cf48a3674d5 (patch)
tree5048bc6accca665876be4cefd7a87b701d9e9c69 /lib/assembly.h
parent9b1b10193420f5adc769eda0d5bd548e429e0ce2 (diff)
<rdar://problem/11668446> Add .subsections_via_symbols to Darwin assembly files
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@160062 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/assembly.h')
-rw-r--r--lib/assembly.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/assembly.h b/lib/assembly.h
index 83bed1233..3d8e50dc8 100644
--- a/lib/assembly.h
+++ b/lib/assembly.h
@@ -25,9 +25,11 @@
#if defined(__APPLE__)
#define HIDDEN_DIRECTIVE .private_extern
#define LOCAL_LABEL(name) L_##name
+#define FILE_LEVEL_DIRECTIVE .subsections_via_symbols
#else
#define HIDDEN_DIRECTIVE .hidden
#define LOCAL_LABEL(name) .L_##name
+#define FILE_LEVEL_DIRECTIVE
#endif
#define GLUE2(a, b) a ## b
@@ -42,6 +44,7 @@
#endif
#define DEFINE_COMPILERRT_FUNCTION(name) \
+ FILE_LEVEL_DIRECTIVE SEPARATOR \
.globl SYMBOL_NAME(name) SEPARATOR \
DECLARE_SYMBOL_VISIBILITY(name) \
SYMBOL_NAME(name):