diff options
Diffstat (limited to 'clang/test/Modules')
-rw-r--r-- | clang/test/Modules/Inputs/autolink-sub3.h | 1 | ||||
-rw-r--r-- | clang/test/Modules/Inputs/autolink-sub3.pch | 1 | ||||
-rw-r--r-- | clang/test/Modules/Inputs/module.map | 5 | ||||
-rw-r--r-- | clang/test/Modules/autolink.m | 12 |
4 files changed, 16 insertions, 3 deletions
diff --git a/clang/test/Modules/Inputs/autolink-sub3.h b/clang/test/Modules/Inputs/autolink-sub3.h new file mode 100644 index 00000000000..132c72976cd --- /dev/null +++ b/clang/test/Modules/Inputs/autolink-sub3.h @@ -0,0 +1 @@ +int autolink_sub3(void); diff --git a/clang/test/Modules/Inputs/autolink-sub3.pch b/clang/test/Modules/Inputs/autolink-sub3.pch new file mode 100644 index 00000000000..f63b2d5b25b --- /dev/null +++ b/clang/test/Modules/Inputs/autolink-sub3.pch @@ -0,0 +1 @@ +@import autolink.sub3; diff --git a/clang/test/Modules/Inputs/module.map b/clang/test/Modules/Inputs/module.map index cf8a298ccee..c0cdf76cdc3 100644 --- a/clang/test/Modules/Inputs/module.map +++ b/clang/test/Modules/Inputs/module.map @@ -166,6 +166,11 @@ module autolink { header "autolink-sub2.h" link framework "autolink_framework" } + + explicit module sub3 { + header "autolink-sub3.h" + link "autolink_from_pch" + } } module weird_objc { diff --git a/clang/test/Modules/autolink.m b/clang/test/Modules/autolink.m index 077aac5374a..883a2f52e50 100644 --- a/clang/test/Modules/autolink.m +++ b/clang/test/Modules/autolink.m @@ -1,6 +1,7 @@ // RUN: rm -rf %t -// RUN: %clang_cc1 -emit-llvm -o - -fmodules-cache-path=%t -fmodules -F %S/Inputs -I %S/Inputs %s | FileCheck %s -// RUN: %clang_cc1 -emit-llvm -fno-autolink -o - -fmodules-cache-path=%t -fmodules -F %S/Inputs -I %S/Inputs %s | FileCheck --check-prefix=CHECK-AUTOLINK-DISABLED %s +// RUN: %clang_cc1 -emit-pch -fmodules-cache-path=%t -fmodules -o %t.pch -I %S/Inputs -x objective-c-header %S/Inputs/autolink-sub3.pch +// RUN: %clang_cc1 -emit-llvm -o - -fmodules-cache-path=%t -fmodules -F %S/Inputs -I %S/Inputs -include-pch %t.pch %s | FileCheck %s +// RUN: %clang_cc1 -emit-llvm -fno-autolink -o - -fmodules-cache-path=%t -fmodules -F %S/Inputs -I %S/Inputs -include-pch %t.pch %s | FileCheck --check-prefix=CHECK-AUTOLINK-DISABLED %s @import autolink.sub2; @@ -29,11 +30,16 @@ int use_no_umbrella() { return no_umbrella_A; } +int use_autolink_sub3() { + return autolink_sub3(); +} + // NOTE: "autolink_sub" is intentionally not linked. // CHECK: !llvm.module.flags = !{!0, !1, !2, !3, !4} // CHECK: !4 = metadata !{i32 6, metadata !"Linker Options", metadata ![[AUTOLINK_OPTIONS:[0-9]+]]} -// CHECK: ![[AUTOLINK_OPTIONS]] = metadata !{metadata ![[AUTOLINK_FRAMEWORK:[0-9]+]], metadata ![[AUTOLINK:[0-9]+]], metadata ![[DEPENDSONMODULE:[0-9]+]], metadata ![[MODULE:[0-9]+]], metadata ![[NOUMBRELLA:[0-9]+]]} +// CHECK: ![[AUTOLINK_OPTIONS]] = metadata !{metadata ![[AUTOLINK_PCH:[0-9]+]], metadata ![[AUTOLINK_FRAMEWORK:[0-9]+]], metadata ![[AUTOLINK:[0-9]+]], metadata ![[DEPENDSONMODULE:[0-9]+]], metadata ![[MODULE:[0-9]+]], metadata ![[NOUMBRELLA:[0-9]+]]} +// CHECK: ![[AUTOLINK_PCH]] = metadata !{metadata !"{{(-l|/DEFAULTLIB:)}}autolink_from_pch{{(\.lib)?}}"} // CHECK: ![[AUTOLINK_FRAMEWORK]] = metadata !{metadata !"-framework", metadata !"autolink_framework"} // CHECK: ![[AUTOLINK]] = metadata !{metadata !"{{(-l|/DEFAULTLIB:)}}autolink{{(\.lib)?}}"} // CHECK: ![[DEPENDSONMODULE]] = metadata !{metadata !"-framework", metadata !"DependsOnModule"} |