brintos

brintos / llvm-project-archived public Read only

0
0
Text · 19.9 KiB · 9a8d98c Raw
398 lines · c
1// Check that ld gets arch_multiple.2 3// RUN: %clang -target i386-apple-darwin9 -arch i386 -arch x86_64 %s -### -o foo 2> %t.log4// RUN: grep '".*ld.*" .*"-arch_multiple" "-final_output" "foo"' %t.log5 6// Make sure we run dsymutil on source input files.7// RUN: %clang -target i386-apple-darwin9 -### -g %s -o BAR 2> %t.log8// RUN: grep -E '".*dsymutil(\.exe)?" "-o" "BAR.dSYM" "BAR"' %t.log9// RUN: %clang -target i386-apple-darwin9 -### -g -filelist FOO %s -o BAR 2> %t.log10// RUN: grep -E '".*dsymutil(\.exe)?" "-o" "BAR.dSYM" "BAR"' %t.log11 12// Check linker changes that came with new linkedit format.13// RUN: touch %t.o14// RUN: %clang -target i386-apple-darwin9 -fuse-ld= -mlinker-version=400 -### -arch armv6 -miphoneos-version-min=3.0 %t.o 2> %t.log15// RUN: %clang -target i386-apple-darwin9 -fuse-ld= -mlinker-version=400 -### -arch armv6 -miphoneos-version-min=3.0 -dynamiclib %t.o 2>> %t.log16// RUN: %clang -target i386-apple-darwin9 -fuse-ld= -mlinker-version=400 -### -arch armv6 -miphoneos-version-min=3.0 -bundle %t.o 2>> %t.log17// RUN: FileCheck -check-prefix=LINK_IPHONE_3_0 %s < %t.log18 19// LINK_IPHONE_3_0: {{ld(.exe)?"}}20// LINK_IPHONE_3_0: -iphoneos_version_min21// LINK_IPHONE_3_0: 3.0.022// LINK_IPHONE_3_0-NOT: -lcrt1.3.1.o23// LINK_IPHONE_3_0: -lcrt1.o24// LINK_IPHONE_3_0: -lSystem25// LINK_IPHONE_3_0: {{ld(.exe)?"}}26// LINK_IPHONE_3_0: -dylib27// LINK_IPHONE_3_0: -ldylib1.o28// LINK_IPHONE_3_0: -lSystem29// LINK_IPHONE_3_0: {{ld(.exe)?"}}30// LINK_IPHONE_3_0: -lbundle1.o31// LINK_IPHONE_3_0: -lSystem32 33// RUN: %clang -target i386-apple-darwin9 -fuse-ld= -mlinker-version=400 -### -arch armv7 -miphoneos-version-min=3.1 %t.o 2> %t.log34// RUN: %clang -target i386-apple-darwin9 -fuse-ld= -mlinker-version=400 -### -arch armv7 -miphoneos-version-min=3.1 -dynamiclib %t.o 2>> %t.log35// RUN: %clang -target i386-apple-darwin9 -fuse-ld= -mlinker-version=400 -### -arch armv7 -miphoneos-version-min=3.1 -bundle %t.o 2>> %t.log36// RUN: FileCheck -check-prefix=LINK_IPHONE_3_1 %s < %t.log37 38// LINK_IPHONE_3_1: {{ld(.exe)?"}}39// LINK_IPHONE_3_1: -iphoneos_version_min40// LINK_IPHONE_3_1: 3.1.041// LINK_IPHONE_3_1-NOT: -lcrt1.o42// LINK_IPHONE_3_1: -lcrt1.3.1.o43// LINK_IPHONE_3_1: -lSystem44// LINK_IPHONE_3_1: {{ld(.exe)?"}}45// LINK_IPHONE_3_1: -dylib46// LINK_IPHONE_3_1-NOT: -ldylib1.o47// LINK_IPHONE_3_1: -lSystem48// LINK_IPHONE_3_1: {{ld(.exe)?"}}49// LINK_IPHONE_3_1-NOT: -lbundle1.o50// LINK_IPHONE_3_1: -lSystem51 52// RUN: %clang -target i386-apple-darwin9 -fuse-ld= -mlinker-version=400 -### -arch i386 -mios-simulator-version-min=3.0 %t.o 2> %t.log53// RUN: %clang -target i386-apple-darwin9 -fuse-ld= -mlinker-version=400 -### -arch i386 -mios-simulator-version-min=3.0 -dynamiclib %t.o 2>> %t.log54// RUN: %clang -target i386-apple-darwin9 -fuse-ld= -mlinker-version=400 -### -arch i386 -mios-simulator-version-min=3.0 -bundle %t.o 2>> %t.log55// RUN: FileCheck -check-prefix=LINK_IOSSIM_3_0 %s < %t.log56 57// LINK_IOSSIM_3_0: {{ld(.exe)?"}}58// LINK_IOSSIM_3_0: -ios_simulator_version_min59// LINK_IOSSIM_3_0: 3.0.060// LINK_IOSSIM_3_0-NOT: -lcrt1.o61// LINK_IOSSIM_3_0: -lSystem62// LINK_IOSSIM_3_0: {{ld(.exe)?"}}63// LINK_IOSSIM_3_0: -dylib64// LINK_IOSSIM_3_0-NOT: -ldylib1.o65// LINK_IOSSIM_3_0: -lSystem66// LINK_IOSSIM_3_0: {{ld(.exe)?"}}67// LINK_IOSSIM_3_0-NOT: -lbundle1.o68// LINK_IOSSIM_3_0: -lSystem69 70// RUN: %clang -target arm64-apple-darwin -fuse-ld= -mlinker-version=700 -### -arch arm64 -mios-simulator-version-min=15.0 %t.o 2>&1 | FileCheck -check-prefix=LINK_IOSSIM_ARM64 %s71 72// LINK_IOSSIM_ARM64: "-platform_version" "ios-simulator" "15.0.0" "15.0.0"73 74// RUN: %clang -target i386-apple-darwin9 -### -fpie %t.o 2> %t.log75// RUN: FileCheck -check-prefix=LINK_EXPLICIT_PIE %s < %t.log76//77// LINK_EXPLICIT_PIE: {{ld(.exe)?"}}78// LINK_EXPLICIT_PIE: "-pie"79 80// RUN: %clang -target i386-apple-darwin9 -### -fno-pie %t.o 2> %t.log81// RUN: FileCheck -check-prefix=LINK_EXPLICIT_NO_PIE %s < %t.log82//83// LINK_EXPLICIT_NO_PIE: {{ld(.exe)?"}}84// LINK_EXPLICIT_NO_PIE: "-no_pie"85 86// RUN: %clang -target x86_64-apple-darwin10 -### %t.o \87// RUN:   -fuse-ld= -mlinker-version=100 2> %t.log88// RUN: FileCheck -check-prefix=LINK_NEWER_DEMANGLE %s < %t.log89//90// LINK_NEWER_DEMANGLE: {{ld(.exe)?"}}91// LINK_NEWER_DEMANGLE: "-demangle"92 93// RUN: %clang -target x86_64-apple-darwin10 -### %t.o \94// RUN:   -fuse-ld= -mlinker-version=100 -Wl,--no-demangle 2> %t.log95// RUN: FileCheck -check-prefix=LINK_NEWER_NODEMANGLE %s < %t.log96//97// LINK_NEWER_NODEMANGLE: {{ld(.exe)?"}}98// LINK_NEWER_NODEMANGLE-NOT: "-demangle"99// LINK_NEWER_NODEMANGLE: "-lSystem"100 101// RUN: %clang -target x86_64-apple-darwin10 -### %t.o \102// RUN:   -fuse-ld= -mlinker-version=95 2> %t.log103// RUN: FileCheck -check-prefix=LINK_OLDER_NODEMANGLE %s < %t.log104//105// LINK_OLDER_NODEMANGLE: {{ld(.exe)?"}}106// LINK_OLDER_NODEMANGLE-NOT: "-demangle"107// LINK_OLDER_NODEMANGLE: "-lSystem"108 109// RUN: %clang -target x86_64-apple-darwin10 -### %s \110// RUN:   -fuse-ld= -mlinker-version=117 -flto 2> %t.log111// RUN: cat %t.log112// RUN: FileCheck -check-prefix=LINK_OBJECT_LTO_PATH %s < %t.log113//114// LINK_OBJECT_LTO_PATH: {{ld(.exe)?"}}115// LINK_OBJECT_LTO_PATH: "-object_path_lto"116 117// RUN: %clang -target x86_64-apple-darwin10 -### %t.o \118// RUN:   -force_load a -force_load b 2> %t.log119// RUN: cat %t.log120// RUN: FileCheck -check-prefix=FORCE_LOAD %s < %t.log121//122// FORCE_LOAD: {{ld(.exe)?"}}123// FORCE_LOAD: "-force_load" "a" "-force_load" "b"124 125// RUN: %clang -target x86_64-apple-darwin10 -### %t.o \126// RUN:   -lazy_framework Framework 2> %t.log127//128// RUN: FileCheck -check-prefix=LINK_LAZY_FRAMEWORK %s < %t.log129// LINK_LAZY_FRAMEWORK: {{ld(.exe)?"}}130// LINK_LAZY_FRAMEWORK: "-lazy_framework" "Framework"131 132// RUN: %clang -target x86_64-apple-darwin10 -### %t.o \133// RUN:   -lazy_library Library 2> %t.log134//135// RUN: FileCheck -check-prefix=LINK_LAZY_LIBRARY %s < %t.log136// LINK_LAZY_LIBRARY: {{ld(.exe)?"}}137// LINK_LAZY_LIBRARY: "-lazy_library" "Library"138 139// RUN: %clang -target x86_64-apple-darwin10 -fuse-ld= -mlinker-version=400 -### %t.o 2> %t.log140// RUN: %clang -target x86_64-apple-macosx10.7 -fuse-ld= -mlinker-version=400 -### %t.o 2>> %t.log141// RUN: FileCheck -check-prefix=LINK_VERSION_MIN %s < %t.log142// LINK_VERSION_MIN: {{ld(.exe)?"}}143// LINK_VERSION_MIN: "-macosx_version_min" "10.6.0"144// LINK_VERSION_MIN: {{ld(.exe)?"}}145// LINK_VERSION_MIN: "-macosx_version_min" "10.7.0"146 147// RUN: %clang -target x86_64-apple-ios13.1-macabi -fuse-ld= -mlinker-version=400 -### %t.o 2>> %t.log148// RUN: FileCheck -check-prefix=LINK_VERSION_MIN_MACABI %s < %t.log149// LINK_VERSION_MIN_MACABI: {{ld(.exe)?"}}150// LINK_VERSION_MIN_MACABI: "-maccatalyst_version_min" "13.1.0"151// LINK_VERSION_MIN_MACABI-NOT: macosx_version_min152// LINK_VERSION_MIN_MACABI-NOT: macos_version_min153 154// RUN: %clang -target x86_64-apple-darwin12 -### %t.o 2> %t.log155// RUN: FileCheck -check-prefix=LINK_NO_CRT1 %s < %t.log156// LINK_NO_CRT1-NOT: crt157 158// RUN: %clang -target armv7-apple-ios6.0 -miphoneos-version-min=6.0 -### %t.o 2> %t.log159// RUN: FileCheck -check-prefix=LINK_NO_IOS_CRT1 %s < %t.log160// LINK_NO_IOS_CRT1-NOT: crt161 162// RUN: %clang -target arm64-apple-ios5.0 -miphoneos-version-min=5.0 -### %t.o 2> %t.log163// RUN: FileCheck -check-prefix=LINK_NO_IOS_ARM64_CRT1 %s < %t.log164// LINK_NO_IOS_ARM64_CRT1-NOT: crt165 166// RUN: %clang -target x86_64-apple-ios6.0 -miphoneos-version-min=6.0 -fprofile-instr-generate -resource-dir=%S/Inputs/resource_dir -### %t.o 2> %t.log167// RUN: FileCheck -check-prefix=LINK_IOSSIM_PROFILE %s < %t.log168// LINK_IOSSIM_PROFILE: {{ld(.exe)?"}}169// LINK_IOSSIM_PROFILE: libclang_rt.profile_iossim.a170// LINK_IOSSIM_PROFILE: libclang_rt.iossim.a171 172// RUN: %clang -target arm64-apple-tvos8.3 -fuse-ld= -mlinker-version=400 -mtvos-version-min=8.3 -resource-dir=%S/Inputs/resource_dir -### %t.o 2> %t.log173// RUN: FileCheck -check-prefix=LINK_TVOS_ARM64 %s < %t.log174// LINK_TVOS_ARM64: {{ld(.exe)?"}}175// LINK_TVOS_ARM64: -tvos_version_min176// LINK_TVOS_ARM64-NOT: crt177// LINK_TVOS_ARM64-NOT: lgcc_s.1178// LINK_TVOS_ARM64: libclang_rt.tvos.a179 180// RUN: %clang -target arm64-apple-tvos8.3 -fuse-ld= -mlinker-version=400 -mtvos-version-min=8.3 -fprofile-instr-generate -resource-dir=%S/Inputs/resource_dir  -### %t.o 2> %t.log181// RUN: FileCheck -check-prefix=LINK_TVOS_PROFILE %s < %t.log182// LINK_TVOS_PROFILE: {{ld(.exe)?"}}183// LINK_TVOS_PROFILE: libclang_rt.profile_tvos.a184// LINK_TVOS_PROFILE: libclang_rt.tvos.a185 186// RUN: %clang -target arm64-apple-tvos8.3 -fuse-ld= -mlinker-version=400 -mtvos-version-min=8.3 -resource-dir=%S/Inputs/resource_dir -### %t.o -lcc_kext 2> %t.log187// RUN: FileCheck -check-prefix=LINK_TVOS_KEXT %s < %t.log188// LINK_TVOS_KEXT: {{ld(.exe)?"}}189// LINK_TVOS_KEXT: libclang_rt.cc_kext_tvos.a190// LINK_TVOS_KEXT: libclang_rt.tvos.a191 192// RUN: %clang -target x86-64-apple-driverkit19.0 -fuse-ld= -mlinker-version=400 -resource-dir=%S/Inputs/resource_dir -### %t.o 2> %t.log193// RUN: FileCheck -check-prefix=LINK_DRIVERKIT %s < %t.log194// LINK_DRIVERKIT: {{ld(.exe)?"}}195// LINK_DRIVERKIT: -driverkit_version_min196// LINK_DRIVERKIT-NOT: crt197// LINK_DRIVERKIT-NOT: lgcc_s.1198// LINK_DRIVERKIT-NOT: lSystem199// LINK_DRIVERKIT: libclang_rt.driverkit.a200 201// RUN: %clang -target armv7k-apple-watchos2.0 -fuse-ld= -mlinker-version=400 -mwatchos-version-min=2.0 -resource-dir=%S/Inputs/resource_dir -### %t.o 2> %t.log202// RUN: FileCheck -check-prefix=LINK_WATCHOS_ARM %s < %t.log203// LINK_WATCHOS_ARM: {{ld(.exe)?"}}204// LINK_WATCHOS_ARM: -watchos_version_min205// LINK_WATCHOS_ARM-NOT: crt206// LINK_WATCHOS_ARM-NOT: lgcc_s.1207// LINK_WATCHOS_ARM: libclang_rt.watchos.a208 209// RUN: %clang -target armv7k-apple-watchos2.0 -fuse-ld= -mlinker-version=400 -mwatchos-version-min=2.0 -resource-dir=%S/Inputs/resource_dir -fprofile-instr-generate -### %t.o 2> %t.log210// RUN: FileCheck -check-prefix=LINK_WATCHOS_PROFILE %s < %t.log211// LINK_WATCHOS_PROFILE: {{ld(.exe)?"}}212// LINK_WATCHOS_PROFILE: libclang_rt.profile_watchos.a213// LINK_WATCHOS_PROFILE: libclang_rt.watchos.a214 215// RUN: %clang -target armv7k-apple-watchos2.0 -fuse-ld= -mlinker-version=400 -mwatchos-version-min=2.0 -resource-dir=%S/Inputs/resource_dir -### %t.o -lcc_kext 2> %t.log216// RUN: FileCheck -check-prefix=LINK_WATCHOS_KEXT %s < %t.log217// LINK_WATCHOS_KEXT: {{ld(.exe)?"}}218// LINK_WATCHOS_KEXT: libclang_rt.cc_kext_watchos.a219// LINK_WATCHOS_KEXT: libclang_rt.watchos.a220 221// RUN: %clang -target i386-apple-darwin12 -pg -### %t.o 2> %t.log222// RUN: FileCheck -check-prefix=LINK_PG %s < %t.log223// LINK_PG: -lgcrt1.o224// LINK_PG: -no_new_main225 226// RUN: not %clang -target i386-apple-darwin13 -pg -### %t.o 2> %t.log227// RUN: FileCheck -check-prefix=LINK_PG_NO_SUPPORT_OSX %s < %t.log228// LINK_PG_NO_SUPPORT_OSX: error: the clang compiler does not support -pg option on versions of OS X229 230// RUN: not %clang -target x86_64-apple-ios5.0 -pg -### %t.o 2> %t.log231// RUN: FileCheck -check-prefix=LINK_PG_NO_SUPPORT %s < %t.log232// LINK_PG_NO_SUPPORT: error: the clang compiler does not support -pg option on Darwin233 234// Check that clang links with libgcc_s.1 for iOS 4 and earlier, but not arm64.235// RUN: %clang -target armv7-apple-ios4.0 -miphoneos-version-min=4.0 -### %t.o 2> %t.log236// RUN: FileCheck -check-prefix=LINK_IOS_LIBGCC_S %s < %t.log237// LINK_IOS_LIBGCC_S: lgcc_s.1238 239// RUN: %clang -target arm64-apple-ios4.0 -miphoneos-version-min=4.0 -### %t.o 2> %t.log240// RUN: FileCheck -check-prefix=LINK_NO_IOS_ARM64_LIBGCC_S %s < %t.log241// LINK_NO_IOS_ARM64_LIBGCC_S-NOT: lgcc_s.1242 243// Check that clang links with libgcc_s.1 for Mac OS X 10.5 and earlier, but not arm64244// RUN: %clang -target x86_64-apple-macosx10.5 -mmacosx-version-min=10.5 -### %t.o 2> %t.log245// RUN: FileCheck -check-prefix=LINK_OSX_LIBGCC_S %s < %t.log246// LINK_OSX_LIBGCC_S: lgcc_s.1247 248// RUN: %clang -target arm64-apple-macosx10.5 -mmacosx-version-min=10.5 -### %t.o 2> %t.log249// RUN: FileCheck -check-prefix=LINK_NO_OSX_ARM64_LIBGCC_S %s < %t.log250// LINK_NO_OSX_ARM64_LIBGCC_S-NOT: lgcc_s.1251 252// RUN: %clang -target x86_64-apple-darwin12 -rdynamic -### %t.o \253// RUN:   -fuse-ld= -mlinker-version=100 2> %t.log254// RUN: FileCheck -check-prefix=LINK_NO_EXPORT_DYNAMIC %s < %t.log255// LINK_NO_EXPORT_DYNAMIC: {{ld(.exe)?"}}256// LINK_NO_EXPORT_DYNAMIC-NOT: "-export_dynamic"257 258// RUN: %clang -target x86_64-apple-darwin12 -rdynamic -### %t.o \259// RUN:   -fuse-ld= -mlinker-version=137 2> %t.log260// RUN: FileCheck -check-prefix=LINK_EXPORT_DYNAMIC %s < %t.log261// RUN: %clang -target x86_64-apple-darwin12 -rdynamic -### %t.o \262// RUN:   -fuse-ld=lld -B%S/Inputs/lld -mlinker-version=100 2> %t.log263// RUN: FileCheck -check-prefix=LINK_EXPORT_DYNAMIC %s < %t.log264// LINK_EXPORT_DYNAMIC: {{ld(.exe)?"}}265// LINK_EXPORT_DYNAMIC: "-export_dynamic"266 267// RUN: %clang -target x86_64h-apple-darwin -### %t.o 2> %t.log268// RUN: FileCheck -check-prefix=LINK_X86_64H_ARCH %s < %t.log269//270// LINK_X86_64H_ARCH: {{ld(.exe)?"}}271// LINK_X86_64H_ARCH: "x86_64h"272 273// RUN: %clang -target x86_64-apple-darwin -arch x86_64 -arch x86_64h -### %t.o 2> %t.log274// RUN: FileCheck -check-prefix=LINK_X86_64H_MULTIARCH %s < %t.log275//276// LINK_X86_64H_MULTIARCH: {{ld(.exe)?"}}277// LINK_X86_64H_MULTIARCH: "x86_64"278//279// LINK_X86_64H_MULTIARCH: {{ld(.exe)?"}}280// LINK_X86_64H_MULTIARCH: "x86_64h"281 282// Check for the linker options to specify the iOS version when the283// IPHONEOS_DEPLOYMENT_TARGET variable is used instead of the command-line284// deployment target options.285// RUN: env IPHONEOS_DEPLOYMENT_TARGET=7.0 \286// RUN:   %clang -target arm64-apple-darwin -fuse-ld= -mlinker-version=400 -### %t.o 2> %t.log287// RUN: FileCheck -check-prefix=LINK_IPHONEOS_VERSION_MIN %s < %t.log288// RUN: env IPHONEOS_DEPLOYMENT_TARGET=7.0 \289// RUN:   %clang -target i386-apple-darwin -fuse-ld= -mlinker-version=400 -### %t.o 2> %t.log290// RUN: FileCheck -check-prefix=LINK_IOS_SIMULATOR_VERSION_MIN %s < %t.log291// LINK_IPHONEOS_VERSION_MIN: -iphoneos_version_min292// LINK_IOS_SIMULATOR_VERSION_MIN: -ios_simulator_version_min293 294// Ditto for tvOS....295// RUN: env TVOS_DEPLOYMENT_TARGET=7.0 \296// RUN:   %clang -target armv7-apple-darwin -fuse-ld= -mlinker-version=400 -### %t.o 2> %t.log297// RUN: FileCheck -check-prefix=LINK_TVOS_VERSION_MIN %s < %t.log298// RUN: env TVOS_DEPLOYMENT_TARGET=7.0 \299// RUN:   %clang -target x86_64-apple-darwin -fuse-ld= -mlinker-version=400 -### %t.o 2> %t.log300// RUN: FileCheck -check-prefix=LINK_TVOS_SIMULATOR_VERSION_MIN %s < %t.log301// LINK_TVOS_VERSION_MIN: -tvos_version_min302// LINK_TVOS_SIMULATOR_VERSION_MIN: -tvos_simulator_version_min303 304// ...and for watchOS.305// RUN: env WATCHOS_DEPLOYMENT_TARGET=2.0 \306// RUN:   %clang -target armv7k-apple-darwin -fuse-ld= -mlinker-version=400 -### %t.o 2> %t.log307// RUN: FileCheck -check-prefix=LINK_WATCHOS_VERSION_MIN %s < %t.log308// RUN: env WATCHOS_DEPLOYMENT_TARGET=2.0 \309// RUN:   %clang -target i386-apple-darwin -fuse-ld= -mlinker-version=400 -### %t.o 2> %t.log310// RUN: FileCheck -check-prefix=LINK_WATCHOS_SIMULATOR_VERSION_MIN %s < %t.log311// LINK_WATCHOS_VERSION_MIN: -watchos_version_min312// LINK_WATCHOS_SIMULATOR_VERSION_MIN: -watchos_simulator_version_min313 314// Check -iframework gets forward to ld as -F315// RUN: %clang -target x86_64-apple-darwin %s -iframework Bar -framework Foo -### 2>&1 | \316// RUN:   FileCheck --check-prefix=LINK-IFRAMEWORK %s317// LINK-IFRAMEWORK: {{ld(.exe)?"}}318// LINK-IFRAMEWORK: "-FBar"319 320// Check ld64 accepts up to 5 digits with no extra characters321// RUN: %clang -target x86_64-apple-darwin12 %s -### -o %t \322// RUN:   -fuse-ld= -mlinker-version=133.3 2> %t.log323// RUN: %clang -target x86_64-apple-darwin12 %s -### -o %t \324// RUN:   -fuse-ld= -mlinker-version=133.3.0 2>> %t.log325// RUN: %clang -target x86_64-apple-darwin12 %s -### -o %t \326// RUN:   -fuse-ld= -mlinker-version=133.3.0.1 2>> %t.log327// RUN: not %clang -target x86_64-apple-darwin12 %s -### -o %t \328// RUN:   -fuse-ld= -mlinker-version=133.3.0.1.2 2>> %t.log329// RUN: not %clang -target x86_64-apple-darwin12 %s -### -o %t \330// RUN:   -fuse-ld= -mlinker-version=133.3.0.1.2.6 2>> %t.log331// RUN: not %clang -target x86_64-apple-darwin12 %s -### -o %t \332// RUN:   -fuse-ld= -mlinker-version=133.3.0.1.a 2>> %t.log333// RUN: not %clang -target x86_64-apple-darwin12 %s -### -o %t \334// RUN:   -fuse-ld= -mlinker-version=133.3.0.1a 2>> %t.log335// RUN: FileCheck -check-prefix=LINK_VERSION_DIGITS %s < %t.log336// LINK_VERSION_DIGITS-NOT: invalid version number in '-mlinker-version=133.3'337// LINK_VERSION_DIGITS-NOT: invalid version number in '-mlinker-version=133.3.0'338// LINK_VERSION_DIGITS-NOT: invalid version number in '-mlinker-version=133.3.0.1'339// LINK_VERSION_DIGITS: invalid version number in '-mlinker-version=133.3.0.1.2'340// LINK_VERSION_DIGITS: invalid version number in '-mlinker-version=133.3.0.1.2.6'341// LINK_VERSION_DIGITS: invalid version number in '-mlinker-version=133.3.0.1.a'342// LINK_VERSION_DIGITS: invalid version number in '-mlinker-version=133.3.0.1a'343 344// RUN: %clang -target x86_64-apple-darwin12 -fprofile-instr-generate -### %t.o 2> %t.log345// RUN: FileCheck -check-prefix=PROFILE_SECTALIGN %s < %t.log346// RUN: %clang -target arm64-apple-ios12 -fprofile-instr-generate -### %t.o 2> %t.log347// RUN: FileCheck -check-prefix=PROFILE_SECTALIGN %s < %t.log348// PROFILE_SECTALIGN: "-sectalign" "__DATA" "__llvm_prf_cnts" "0x4000" "-sectalign" "__DATA" "__llvm_prf_bits" "0x4000" "-sectalign" "__DATA" "__llvm_prf_data" "0x4000"349 350// RUN: %clang -target x86_64-apple-darwin12 -fprofile-instr-generate --coverage -### %t.o 2> %t.log351// RUN: FileCheck -check-prefix=NO_PROFILE_EXPORT %s < %t.log352// NO_PROFILE_EXPORT-NOT: "-exported_symbol"353//354// RUN: %clang -target x86_64-apple-darwin12 --coverage -exported_symbols_list /dev/null -### %t.o 2> %t.log355// RUN: FileCheck -check-prefix=GCOV_EXPORT %s < %t.log356// RUN: %clang -target x86_64-apple-darwin12 -fprofile-arcs -Wl,-exported_symbols_list,/dev/null -### %t.o 2> %t.log357// RUN: FileCheck -check-prefix=GCOV_EXPORT %s < %t.log358// RUN: %clang -target x86_64-apple-darwin12 -fprofile-arcs -Wl,-exported_symbol,foo -### %t.o 2> %t.log359// RUN: FileCheck -check-prefix=GCOV_EXPORT %s < %t.log360// RUN: %clang -target x86_64-apple-darwin12 -fprofile-arcs -Xlinker -exported_symbol -Xlinker foo -### %t.o 2> %t.log361// RUN: FileCheck -check-prefix=GCOV_EXPORT %s < %t.log362// RUN: %clang -target x86_64-apple-darwin12 -fprofile-arcs -Xlinker -exported_symbols_list -Xlinker /dev/null -### %t.o 2> %t.log363// RUN: FileCheck -check-prefix=GCOV_EXPORT %s < %t.log364// GCOV_EXPORT: "-exported_symbol" "___gcov_dump"365// GCOV_EXPORT: "-exported_symbol" "___gcov_reset"366//367// Check that we can pass the outliner down to the linker.368// RUN: env IPHONEOS_DEPLOYMENT_TARGET=7.0 \369// RUN:   %clang -target arm64-apple-darwin -moutline -### %t.o 2> %t.log370// RUN: FileCheck -check-prefix=ARM64-MOUTLINE %s < %t.log371// ARM64-MOUTLINE: {{ld(.exe)?"}}372// ARM64-MOUTLINE-SAME: "-mllvm" "-enable-machine-outliner" "-mllvm" "-enable-linkonceodr-outlining"373// RUN: env IPHONEOS_DEPLOYMENT_TARGET=7.0 \374// RUN:   %clang -target arm64e-apple-darwin -moutline -### %t.o 2> %t.log375// RUN: FileCheck -check-prefix=ARM64E-MOUTLINE %s < %t.log376// ARM64E-MOUTLINE: {{ld(.exe)?"}}377// ARM64E-MOUTLINE-SAME: "-mllvm" "-enable-linkonceodr-outlining"378// RUN: env IPHONEOS_DEPLOYMENT_TARGET=7.0 \379// RUN:   %clang -target armv7em-apple-darwin -moutline -### %t.o 2> %t.log380// RUN: FileCheck -check-prefix=ARMV7EM-MOUTLINE %s < %t.log381// ARMV7EM-MOUTLINE: {{ld(.exe)?"}}382// ARMV7EM-MOUTLINE-SAME: "-mllvm" "-enable-linkonceodr-outlining"383// RUN: env IPHONEOS_DEPLOYMENT_TARGET=7.0 \384// RUN:   %clang -target arm64-apple-darwin -mno-outline -### %t.o 2> %t.log385// RUN: FileCheck -check-prefix=ARM64-MNO_OUTLINE %s < %t.log386// ARM64-MNO_OUTLINE: {{ld(.exe)?"}}387// ARM64-MNO_OUTLINE-SAME: "-mllvm" "-enable-machine-outliner=never" "-mllvm" "-enable-linkonceodr-outlining"388// RUN: env IPHONEOS_DEPLOYMENT_TARGET=7.0 \389// RUN:   %clang -target arm64e-apple-darwin -mno-outline -### %t.o 2> %t.log390// RUN: FileCheck -check-prefix=ARM64E-MNO_OUTLINE %s < %t.log391// ARM64E-MNO_OUTLINE: {{ld(.exe)?"}}392// ARM64E-MNO_OUTLINE-SAME: "-mllvm" "-enable-machine-outliner=never" "-mllvm" "-enable-linkonceodr-outlining"393// RUN: env IPHONEOS_DEPLOYMENT_TARGET=7.0 \394// RUN:   %clang -target armv7em-apple-darwin -mno-outline -### %t.o 2> %t.log395// RUN: FileCheck -check-prefix=ARMV7EM-MNO_OUTLINE %s < %t.log396// ARMV7EM-MNO_OUTLINE: {{ld(.exe)?"}}397// ARMV7EM-MNO_OUTLINE-SAME: "-mllvm" "-enable-machine-outliner=never" "-mllvm" "-enable-linkonceodr-outlining"398