builtins: assembly routines are not static
authorSaleem Abdulrasool <compnerd@compnerd.org>
Sat, 21 Jun 2014 01:41:21 +0000 (01:41 +0000)
committerSaleem Abdulrasool <compnerd@compnerd.org>
Sat, 21 Jun 2014 01:41:21 +0000 (01:41 +0000)
Storage Class 3 is static storage.  These symbols need to be marked as external
(storage class 2) so that they can be referenced.  Note that this external is
not the same as ELF "external" visibility, which is indicated by DLL Storage
Class (i.e. __declspec(dllexport) or __declspec(dllimport)).

llvm-svn: 211428

compiler-rt/lib/builtins/assembly.h

index 78efe3a..d415a5f 100644 (file)
@@ -42,7 +42,7 @@
 #define LOCAL_LABEL(name) .L ## name
 #define SYMBOL_IS_FUNC(name)                                                   \
   .def name SEPARATOR                                                          \
-    .scl 3 SEPARATOR                                                           \
+    .scl 2 SEPARATOR                                                           \
     .type 32 SEPARATOR                                                         \
   .endef
 #define FILE_LEVEL_DIRECTIVE