// RUN: %target-swift-frontend -emit-ir %s | %FileCheck %s -check-prefix=CHECK -check-prefix=CHECK-%target-ptrsize

class A {}

// CHECK:      [[A_NAME:@.*]] = private constant [2 x i8] c"A\00"
// CHECK-LABEL: @"$S14class_metadata1ACMn" =
//   Flags. -2147221424 == 0x8004_0050 == HasVTable | Reflectable | Unique | Class
// CHECK-SAME: i32 -2147221424,
//   Parent.
// CHECK-SAME: i32 {{.*}} @"$S14class_metadataMXM"
//   Name.
// CHECK-SAME: i32 {{.*}} [[A_NAME]]
//   Metadata access function.
// CHECK-SAME: i32 {{.*}} @"$S14class_metadata1ACMa"
//   Superclass.
// CHECK-SAME: i32 0,
//   Field count.
// CHECK-SAME: i32 0,
//   Field offset vector offset.
// CHECK-32-SAME: i32 14,
// CHECK-64-SAME: i32 11,
//   V-table offset.
// CHECK-32-SAME: i32 13,
// CHECK-64-SAME: i32 10,
//   V-table length.
// CHECK-SAME: i32 1,
//   V-table entry #1: invocation function.
// CHECK-SAME: @"$S14class_metadata1ACACycfc"
//   V-table entry #1: flags.
// CHECK-SAME: i32 1 } }>, section

class B : A {}

// CHECK:      [[B_NAME:@.*]] = private constant [2 x i8] c"B\00"
// CHECK-LABEL: @"$S14class_metadata1BCMn" =
//   Flags. 262224 == 0x0004_0050 == Reflectable | Unique | Class
// CHECK-SAME: i32 262224,
//   Parent.
// CHECK-SAME: i32 {{.*}} @"$S14class_metadataMXM"
//   Name.
// CHECK-SAME: i32 {{.*}} [[B_NAME]]
//   Metadata access function.
// CHECK-SAME: i32 {{.*}} @"$S14class_metadata1BCMa"
//   Superclass.
// CHECK-SAME: i32 {{.*}} @"$S14class_metadata1ACMn"
//   Field count.
// CHECK-SAME: i32 0,
//   Field offset vector offset.
// CHECK-32-SAME: i32 14 }>, section
// CHECK-64-SAME: i32 11 }>, section

class C<T> : B {}

// CHECK:      [[C_NAME:@.*]] = private constant [2 x i8] c"C\00"
// CHECK-LABEL: @"$S14class_metadata1CCMn" =
//   Flags. 262352 == 0x0004_00d0 == Reflectable | Generic | Unique | Class
// CHECK-SAME: i32 262352,
//   Parent.
// CHECK-SAME: i32 {{.*}} @"$S14class_metadataMXM"
//   Name.
// CHECK-SAME: i32 {{.*}} [[C_NAME]]
//   Metadata access function.
// CHECK-SAME: i32 {{.*}} @"$S14class_metadata1CCMa"
//   Superclass.
// CHECK-SAME: i32 {{.*}} @"$S14class_metadata1BCMn"
//   Negative size in words.
// CHECK-SAME: i32 2,
//   Positive size in words.
// CHECK-32-SAME: i32 15,
// CHECK-64-SAME: i32 12,
//   Num immediate members.
// CHECK-32-SAME: i32 1,
//   Field count.
// CHECK-SAME: i32 0,
//   Field offset vector offset.
// CHECK-32-SAME: i32 15,
// CHECK-64-SAME: i32 12,
//   Instantiation cache.
// CHECK-SAME: i32 {{.*}} @"$S14class_metadata1CCMI"
//   Instantiation pattern.
// CHECK-SAME: i32 {{.*}} @"$S14class_metadata1CCMP"
//   Generic parameter count.
// CHECK-SAME: i16 1,
//   Generic requirement count.
// CHECK-SAME: i16 0,
//   Key generic arguments count.
// CHECK-SAME: i16 1,
//   Extra generic arguments count.
// CHECK-SAME: i16 0,
//   Generic parameter descriptor #1: flags. -128 == 0x80 == Key
// CHECK-SAME: i8 -128,
///  Padding.
// CHECK-SAME: i8 0,
// CHECK-SAME: i8 0,
// CHECK-SAME: i8 0 }>, section

// CHECK-LABEL: @"$S14class_metadata1CCMP" =
//   Instantiation function.
// CHECK-SAME:  i32 {{.*}} @"$S14class_metadata1CCMi"

// For stupid reasons, when we declare the superclass after the subclass,
// we end up using an indirect reference to the nominal type descriptor.
class D : E {}

// CHECK:      [[D_NAME:@.*]] = private constant [2 x i8] c"D\00"
// CHECK-LABEL: @"$S14class_metadata1DCMn" =
//   Flags. 268697680 == 0x1004_0050 == Reflectable | IndirectSuperclass | Unique | Class
// CHECK-SAME: i32 268697680,
//   Parent.
// CHECK-SAME: i32 {{.*}} @"$S14class_metadataMXM"
//   Name.
// CHECK-SAME: i32 {{.*}} [[D_NAME]]
//   Metadata access function.
// CHECK-SAME: i32 {{.*}} @"$S14class_metadata1DCMa"
//   Superclass.
// CHECK-SAME: i32 {{.*}} @"got.$S14class_metadata1ECMn
//   Field count.
// CHECK-SAME: i32 0,
//   Field offset vector offset.
// CHECK-32-SAME: i32 14 }>, section
// CHECK-64-SAME: i32 11 }>, section

class E {}
