1a0cacb60SJin Lin; RUN: llvm-link %s %p/Inputs/empty-objc.ll -S | FileCheck %s 2a0cacb60SJin Lin 3a0cacb60SJin Lin; It tests whether Swift bitcode can be successfully linked with Objecitive-C bitcode. 4a0cacb60SJin Lin; During the process, the IRUpgrader turns a i32 type "Objective-C Garbage Collection" 5a0cacb60SJin Lin; into i8 value. If the higher bits are set, it adds the module flag for swift info. 6a0cacb60SJin Lin 7a0cacb60SJin Lintarget triple = "x86_64-apple-macosx10.15.0" 8a0cacb60SJin Lin 9a0cacb60SJin Lin@__swift_reflection_version = linkonce_odr hidden constant i16 3 10*f2e868c5SNikita Popov@llvm.used = appending global [1 x ptr] [ptr @__swift_reflection_version], section "llvm.metadata", align 8 11a0cacb60SJin Lin 12*f2e868c5SNikita Popovdefine i32 @main(i32 %0, ptr %1) #0 { 13a0cacb60SJin Lin ret i32 0 14a0cacb60SJin Lin} 15a0cacb60SJin Lin 16a0cacb60SJin Linattributes #0 = { "frame-pointer"="all" "target-cpu"="penryn" "target-features"="+cx16,+fxsr,+mmx,+sahf,+sse,+sse2,+sse3,+sse4.1,+ssse3,+x87" } 17a0cacb60SJin Lin 18a0cacb60SJin Lin!llvm.module.flags = !{!0, !1, !2, !3, !4, !5, !6, !7, !8} 19a0cacb60SJin Lin!swift.module.flags = !{!9} 20a0cacb60SJin Lin!llvm.linker.options = !{!10, !11, !12} 21a0cacb60SJin Lin!llvm.asan.globals = !{!13} 22a0cacb60SJin Lin 23a0cacb60SJin Lin!0 = !{i32 2, !"SDK Version", [2 x i32] [i32 10, i32 15]} 24a0cacb60SJin Lin!1 = !{i32 1, !"Objective-C Version", i32 2} 25a0cacb60SJin Lin!2 = !{i32 1, !"Objective-C Image Info Version", i32 0} 26a0cacb60SJin Lin!3 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,__objc_imageinfo,regular,no_dead_strip"} 27a0cacb60SJin Lin!4 = !{i32 4, !"Objective-C Garbage Collection", i32 83953408} 28a0cacb60SJin Lin!5 = !{i32 1, !"Objective-C Class Properties", i32 64} 29a0cacb60SJin Lin!6 = !{i32 1, !"wchar_size", i32 4} 30a0cacb60SJin Lin!7 = !{i32 7, !"PIC Level", i32 2} 31a0cacb60SJin Lin!8 = !{i32 1, !"Swift Version", i32 7} 32a0cacb60SJin Lin!9 = !{!"standard-library", i1 false} 33a0cacb60SJin Lin!10 = !{!"-lswiftSwiftOnoneSupport"} 34a0cacb60SJin Lin!11 = !{!"-lswiftCore"} 35a0cacb60SJin Lin!12 = !{!"-lobjc"} 36*f2e868c5SNikita Popov!13 = !{ptr @llvm.used, null, null, i1 false, i1 true} 37a0cacb60SJin Lin 38a0cacb60SJin Lin; CHECK: !{{[0-9]+}} = !{i32 1, !"Objective-C Garbage Collection", i8 0} 39a0cacb60SJin Lin; CHECK: !{{[0-9]+}} = !{i32 1, !"Swift ABI Version", i32 7} 40a0cacb60SJin Lin; CHECK: !{{[0-9]+}} = !{i32 1, !"Swift Major Version", i8 5} 41a0cacb60SJin Lin; CHECK: !{{[0-9]+}} = !{i32 1, !"Swift Minor Version", i8 1} 42