// RUN: %target-swift-frontend -enable-objc-interop -emit-ir %s | %FileCheck %s -DINT=i%target-ptrsize -check-prefix CHECK -check-prefix CHECK-%target-import-type
// RUN: %target-swift-frontend -Osize -enable-objc-interop -emit-ir %s | %FileCheck %s --check-prefix=OSIZE -DINT=i%target-ptrsize

// REQUIRES: CPU=x86_64

sil_stage canonical

import Builtin

struct S {}

class C {}
sil_vtable C {}

sil @_TFC12typemetadata1Cd : $@convention(method) (@owned C) -> @owned Builtin.NativeObject

sil @_TFC12typemetadata1CD : $@convention(method) (@owned C) -> ()

sil @test0 : $@convention(thin) () -> () {
bb0:
  %0 = metatype $@thin S.Type
  %1 = metatype $@thick C.Type
  %2 = metatype $@thick (S, C).Type
  %100 = tuple ()
  return %100 : $()
}

// CHECK-LABEL: define hidden swiftcc %swift.metadata_response @"$s12typemetadata1CCMa"
// CHECK-SAME:    ([[INT]])
// CHECK-DIRECT:    [[T0:%.*]] = load %swift.type*, %swift.type** @"$s12typemetadata1CCML", align 8
// CHECK-INDIRECT:  [[T0:%.*]] = load %swift.type*, %swift.type** getelementptr inbounds ({ %swift.type*, i8* }, { %swift.type*, i8* }* @"$s12typemetadata1CCMl", i32 0, i32 0), align 8
// CHECK-NEXT: [[T1:%.*]] = icmp eq %swift.type* [[T0]], null
// CHECK-NEXT: br i1 [[T1]]

// CHECK-DIRECT:      [[T0:%.*]] = call %objc_class* @swift_getInitializedObjCClass({{.*}} @"$s12typemetadata1CCMf", {{.*}})
// CHECK-DIRECT-NEXT: [[T1:%.*]] = bitcast %objc_class* [[T0]] to %swift.type*
// CHECK-DIRECT:      store atomic %swift.type* [[T1]], %swift.type** @"$s12typemetadata1CCML" release, align 8
// CHECK-DIRECT-NEXT: br label

// CHECK-INDIRECT:      [[T0:%.*]] = call swiftcc %swift.metadata_response
// @swift_getSingletonMetdata([[INT]] %0, %swift.type_descriptor* bitcast (<{ {{.*}} }>* @"$s12typemetadata1CCMn" to %swift.type_descriptor*))
// CHECK-INDIRECT-NEXT: [[T1:%.*]] = extractvalue %swift.metadata_response [[T0]], 0
// CHECK-INDIRECT-NEXT: [[T2:%.*]] = extractvalue %swift.metadata_response [[T0]], 1
// CHECK-INDIRECT-NEXT: br label

// CHECK:      [[RES:%.*]] = phi
// CHECK-INDIRECT:    [[T2:%.*]] = phi [[INT]]
// CHECK-NEXT: [[T0:%.*]] = insertvalue %swift.metadata_response undef, %swift.type* [[RES]], 0
// CHECK-DIRECT-NEXT:   [[T1:%.*]] = insertvalue %swift.metadata_response [[T0]], i64 0, 1
// CHECK-INDIRECT-NEXT: [[T1:%.*]] = insertvalue %swift.metadata_response [[T0]], i64 [[T2]], 1
// CHECK-NEXT: ret %swift.metadata_response [[T1]]

// CHECK-LABEL: define linkonce_odr hidden swiftcc %swift.metadata_response @"$s12typemetadata1SV_AA1CCtMa"
// CHECK-SAME:    ([[INT]])
// CHECK:      [[T0:%.*]] = load %swift.type*, %swift.type**  @"$s12typemetadata1SV_AA1CCtML", align 8
// CHECK-NEXT: [[T1:%.*]] = icmp eq %swift.type* [[T0]], null
// CHECK-NEXT: br i1 [[T1]]
// CHECK:      [[TMP:%.*]] = call swiftcc %swift.metadata_response @"$s12typemetadata1CCMa"([[INT]] 255)
// CHECK:      [[T0:%.*]] = extractvalue %swift.metadata_response [[TMP]], 0
// CHECK-NEXT: extractvalue %swift.metadata_response [[TMP]], 1
// CHECK-NEXT: [[T1:%.*]] = call swiftcc %swift.metadata_response @swift_getTupleTypeMetadata2([[INT]] %0, %swift.type* {{.*}} @"$s12typemetadata1SVMf", {{.*}} %swift.type* [[T0]], i8* null, i8** null)
// CHECK-NEXT: [[METADATA:%.*]] = extractvalue %swift.metadata_response [[T1]], 0
// CHECK-NEXT: [[STATE:%.*]] = extractvalue %swift.metadata_response [[T1]], 1
// CHECK-NEXT: [[T0:%.*]] = icmp eq [[INT]] [[STATE]], 0
// CHECK-NEXT: br i1 [[T0]],
// CHECK:      store atomic %swift.type* [[METADATA]], %swift.type** @"$s12typemetadata1SV_AA1CCtML" release, align 8
// CHECK-NEXT: br label
// CHECK:      [[RES:%.*]] = phi %swift.type*
// CHECK-NEXT: [[RES_STATE:%.*]] = phi [[INT]]
// CHECK-NEXT: [[T0:%.*]] = insertvalue %swift.metadata_response undef, %swift.type* [[RES]], 0
// CHECK-NEXT: [[T1:%.*]] = insertvalue %swift.metadata_response [[T0]], [[INT]] [[RES_STATE]], 1
// CHECK-NEXT: ret %swift.metadata_response [[T1]]

// OSIZE: define hidden swiftcc %swift.metadata_response @"$s12typemetadata1CCMa"
// OSIZE-SAME:   ([[INT]]) [[ATTR:#[0-9]+]] {
// OSIZE: [[ATTR]] = {{{.*}}noinline

