<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
diff --git a/lib/assembly.h b/lib/assembly.h
index 83bed12..3d8e50d 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):