diff options
| -rw-r--r-- | compiler-rt/make/platform/clang_darwin.mk | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/compiler-rt/make/platform/clang_darwin.mk b/compiler-rt/make/platform/clang_darwin.mk new file mode 100644 index 00000000000..953ef91645d --- /dev/null +++ b/compiler-rt/make/platform/clang_darwin.mk @@ -0,0 +1,30 @@ +# These are the functions which clang needs when it is targetting a previous +# version of the OS. The issue is that the backend may use functions which were +# not present in the libgcc that shipped on the platform. In such cases, we link +# with a version of the library which contains private_extern definitions of all +# the extra functions which might be referenced. + +Description := Static runtime libraries for clang/Darwin. + +Configs := +UniversalArchs := + +# Configuration for targetting 10.4 on x86. We need a few functions missing from +# libgcc_s.10.4.dylib. +Configs += x86_10.4 +UniversalArchs.x86_10.4 := i386 x86_64 + +# Configuration for targetting armv6. We need a few additional functions which +# must be in the same linkage unit. +Configs += armv6 +UniversalArchs.armv6 := armv6 + +CC := gcc + +CFLAGS := -Wall -Werror -O3 -fomit-frame-pointer + +FUNCTIONS.x86_10.4 := floatundidf floatundisf floatundixf +FUNCTIONS.armv6 := switch16 switch32 switch8 switchu8 \ + save_vfp_d8_d15_regs restore_vfp_d8_d15_regs + +VISIBILITY_HIDDEN := 1 |

