summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Roelofs <jonathan@codesourcery.com>2014-05-12 17:38:36 +0000
committerJonathan Roelofs <jonathan@codesourcery.com>2014-05-12 17:38:36 +0000
commit238b9fd4b7be732c87629d8fe7c583bbe7c002e9 (patch)
tree4e4c60590a0e4bf5564f1a5eceafae2f5e2ffd46
parent177df3c84ac46e0a43926d2792d24671f08362f7 (diff)
Move .subsections_via_symbols directives into DEFINE_COMPILERRT_PRIVATE_FUNCTION
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@208603 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/builtins/arm/restore_vfp_d8_d15_regs.S2
-rw-r--r--lib/builtins/arm/save_vfp_d8_d15_regs.S2
-rw-r--r--lib/builtins/arm/switch16.S2
-rw-r--r--lib/builtins/arm/switch32.S3
-rw-r--r--lib/builtins/arm/switch8.S3
-rw-r--r--lib/builtins/arm/switchu8.S3
-rw-r--r--lib/builtins/assembly.h2
7 files changed, 2 insertions, 15 deletions
diff --git a/lib/builtins/arm/restore_vfp_d8_d15_regs.S b/lib/builtins/arm/restore_vfp_d8_d15_regs.S
index 909cfa4fe..0f6ea5136 100644
--- a/lib/builtins/arm/restore_vfp_d8_d15_regs.S
+++ b/lib/builtins/arm/restore_vfp_d8_d15_regs.S
@@ -31,5 +31,3 @@ DEFINE_COMPILERRT_PRIVATE_FUNCTION(__restore_vfp_d8_d15_regs)
bx lr // return to prolog
END_COMPILERRT_FUNCTION(__restore_vfp_d8_d15_regs)
- // tell linker it can break up file at label boundaries
- .subsections_via_symbols
diff --git a/lib/builtins/arm/save_vfp_d8_d15_regs.S b/lib/builtins/arm/save_vfp_d8_d15_regs.S
index f5f287021..f1d90e758 100644
--- a/lib/builtins/arm/save_vfp_d8_d15_regs.S
+++ b/lib/builtins/arm/save_vfp_d8_d15_regs.S
@@ -31,5 +31,3 @@ DEFINE_COMPILERRT_PRIVATE_FUNCTION(__save_vfp_d8_d15_regs)
bx lr // return to prolog
END_COMPILERRT_FUNCTION(__save_vfp_d8_d15_regs)
- // tell linker it can break up file at label boundaries
- .subsections_via_symbols
diff --git a/lib/builtins/arm/switch16.S b/lib/builtins/arm/switch16.S
index b13e347d7..3c3a6b106 100644
--- a/lib/builtins/arm/switch16.S
+++ b/lib/builtins/arm/switch16.S
@@ -42,5 +42,3 @@ DEFINE_COMPILERRT_PRIVATE_FUNCTION(__switch16)
bx ip // jump to computed label
END_COMPILERRT_FUNCTION(__switch16)
- // tell linker it can break up file at label boundaries
- .subsections_via_symbols
diff --git a/lib/builtins/arm/switch32.S b/lib/builtins/arm/switch32.S
index f1be578de..b38cd2b76 100644
--- a/lib/builtins/arm/switch32.S
+++ b/lib/builtins/arm/switch32.S
@@ -42,6 +42,3 @@ DEFINE_COMPILERRT_PRIVATE_FUNCTION(__switch32)
bx ip // jump to computed label
END_COMPILERRT_FUNCTION(__switch32)
- // tell linker it can break up file at label boundaries
- .subsections_via_symbols
-
diff --git a/lib/builtins/arm/switch8.S b/lib/builtins/arm/switch8.S
index 746a8561f..d7c20423d 100644
--- a/lib/builtins/arm/switch8.S
+++ b/lib/builtins/arm/switch8.S
@@ -40,6 +40,3 @@ DEFINE_COMPILERRT_PRIVATE_FUNCTION(__switch8)
bx ip // jump to computed label
END_COMPILERRT_FUNCTION(__switch8)
- // tell linker it can break up file at label boundaries
- .subsections_via_symbols
-
diff --git a/lib/builtins/arm/switchu8.S b/lib/builtins/arm/switchu8.S
index 0b05c5478..1844f11c6 100644
--- a/lib/builtins/arm/switchu8.S
+++ b/lib/builtins/arm/switchu8.S
@@ -40,6 +40,3 @@ DEFINE_COMPILERRT_PRIVATE_FUNCTION(__switchu8)
bx ip // jump to computed label
END_COMPILERRT_FUNCTION(__switchu8)
- // tell linker it can break up file at label boundaries
- .subsections_via_symbols
-
diff --git a/lib/builtins/assembly.h b/lib/builtins/assembly.h
index 1a9f79cb6..31ecd149d 100644
--- a/lib/builtins/assembly.h
+++ b/lib/builtins/assembly.h
@@ -25,6 +25,7 @@
#if defined(__APPLE__)
#define HIDDEN_DIRECTIVE .private_extern
#define LOCAL_LABEL(name) L_##name
+// tell linker it can break up file at label boundaries
#define FILE_LEVEL_DIRECTIVE .subsections_via_symbols
#define SYMBOL_IS_FUNC(name)
#else
@@ -103,6 +104,7 @@
SYMBOL_NAME(name):
#define DEFINE_COMPILERRT_PRIVATE_FUNCTION(name) \
+ FILE_LEVEL_DIRECTIVE SEPARATOR \
.globl SYMBOL_NAME(name) SEPARATOR \
SYMBOL_IS_FUNC(SYMBOL_NAME(name)) SEPARATOR \
HIDDEN_DIRECTIVE SYMBOL_NAME(name) SEPARATOR \