summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorTim Northover <tnorthover@apple.com>2014-07-10 10:06:42 +0000
committerTim Northover <tnorthover@apple.com>2014-07-10 10:06:42 +0000
commit0c7b1206d6e6c3500a7cb85f05c82a83b63d9736 (patch)
tree5928d70fe37c18b6f23ad818855617d936bd6cbd /lib
parent44895ce925cd291e676b8e2bdd5bc07fe8a74f33 (diff)
downloadcompiler-rt-0c7b1206d6e6c3500a7cb85f05c82a83b63d9736.tar.gz
MachO: add dummy armv6m architecture directory so clang_macho_embedded builds things.
Without some mention of armv6m in a subdirectory of builtins, the make code doesn't even know that armv6m exists and is something it should be looking for in the platform-specific Makefiles. This means that none of the functions listed actually get built and we end up with an almost entirely empty libclang_rt.a for armv6m. Unfortunately, the assembly code in the usual arm directory has no hope of running on armv6m, which only supports Thumb-1 (not even ARM mode), so adding it there won't work. Realistically, we probably *will* want to put any optimised versions in a separate directory, so creating it now is harmless. rdar://problem/17613576 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212696 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/builtins/Makefile.mk2
-rw-r--r--lib/builtins/armv6m/Makefile.mk20
2 files changed, 21 insertions, 1 deletions
diff --git a/lib/builtins/Makefile.mk b/lib/builtins/Makefile.mk
index 3143d91f0..4dbadd0bf 100644
--- a/lib/builtins/Makefile.mk
+++ b/lib/builtins/Makefile.mk
@@ -11,7 +11,7 @@ ModuleName := builtins
SubDirs :=
# Add arch specific optimized implementations.
-SubDirs += i386 ppc x86_64 arm
+SubDirs += i386 ppc x86_64 arm armv6m
# Define the variables for this specific directory.
Sources := $(foreach file,$(wildcard $(Dir)/*.c),$(notdir $(file)))
diff --git a/lib/builtins/armv6m/Makefile.mk b/lib/builtins/armv6m/Makefile.mk
new file mode 100644
index 000000000..f3c1807f0
--- /dev/null
+++ b/lib/builtins/armv6m/Makefile.mk
@@ -0,0 +1,20 @@
+#===- lib/builtins/arm/Makefile.mk -------------------------*- Makefile -*--===#
+#
+# The LLVM Compiler Infrastructure
+#
+# This file is distributed under the University of Illinois Open Source
+# License. See LICENSE.TXT for details.
+#
+#===------------------------------------------------------------------------===#
+
+ModuleName := builtins
+SubDirs :=
+OnlyArchs := armv6m
+
+AsmSources := $(foreach file,$(wildcard $(Dir)/*.S),$(notdir $(file)))
+Sources := $(foreach file,$(wildcard $(Dir)/*.c),$(notdir $(file)))
+ObjNames := $(Sources:%.c=%.o) $(AsmSources:%.S=%.o)
+Implementation := Optimized
+
+# FIXME: use automatic dependencies?
+Dependencies := $(wildcard lib/*.h $(Dir)/*.h)