blob: 73847ab57479bc4510a484dcf3f00d41008c07ab [file] [log] [blame]
// RUN: %target-swift-frontend -emit-ir %s | %FileCheck %s --check-prefix=CHECK --check-prefix=CHECK-%target-runtime
// REQUIRES: executable_test
// REQUIRES: CPU=x86_64
sil_stage canonical
import Builtin
import Swift
class C {
required init()
}
// CHECK: [[C:%T6vtable1CC]] = type <{ %swift.refcounted }>
sil @$s6vtable1CCACycACmcfC : $@convention(method) (@thick C.Type) -> @owned C
sil @$s6vtable1CCfd : $@convention(method) (@owned C) -> @owned Builtin.NativeObject
sil @$s6vtable1CCfD : $@convention(method) (@owned C) -> ()
// CHECK-objc: @"$s6vtable1CCMf" = internal global [[C_METADATA_T:<{.*\* }>]] <{
// CHECK-objc: void ([[C]]*)* @"$s6vtable1CCfD",
// CHECK-objc: i8** {{@"\$sBoWV"|null}},
// CHECK-objc: i64 ptrtoint (%objc_class* @"$s6vtable1CCMm" to i64),
// CHECK-objc: %objc_class* @"OBJC_CLASS_$_{{(_TtCs12_)?}}SwiftObject",
// CHECK-objc: %swift.opaque* @_objc_empty_cache,
// CHECK-objc: %swift.opaque* null,
// CHECK-objc: i64 add (i64 ptrtoint ({ i32, i32, i32, i32, i8*, i8*, i8*, i8*, i8*, i8*, i8* }* @_DATA__TtC6vtable1C to i64), i64 {{1|2}}),
// CHECK-objc: i32 {{3|2}}, i32 0, i32 16, i16 7, i16 0,
// CHECK-objc: i32 104, i32 16,
// CHECK-objc: @"$s6vtable1CCMn"
// CHECK-objc: [[C]]* (%swift.type*)* @"$s6vtable1CCACycACmcfC"
// CHECK-objc: }>
// CHECK-native: @"$s6vtable1CCMf" = internal global [[C_METADATA_T:<{.*\* }>]] <{
// CHECK-native: void ([[C]]*)* @"$s6vtable1CCfD",
// CHECK-native: i8** {{@"\$sBoWV"|null}},
// CHECK-native: i64 0,
// CHECK-native: %swift.type* null,
// CHECK-native: %swift.opaque* null,
// CHECK-native: %swift.opaque* null,
// CHECK-native: i64 1,
// CHECK-native: i32 {{3|2}}, i32 0, i32 16, i16 7, i16 0,
// CHECK-native: i32 104, i32 16,
// CHECK-native: @"$s6vtable1CCMn"
// CHECK-native: [[C]]* (%swift.type*)* @"$s6vtable1CCACycACmcfC"
// CHECK-native: }>
sil_vtable C {
#C.init!allocator.1: @$s6vtable1CCACycACmcfC
}