// RUN: %target-swift-frontend -enable-objc-interop -emit-ir %s | %FileCheck %s --check-prefixes=CHECK,CHECK-objc,CHECK-%target-import-type-objc // RUN: %target-swift-frontend -disable-objc-interop -emit-ir %s | %FileCheck %s --check-prefixes=CHECK,CHECK-native // REQUIRES: CPU=x86_64 sil_stage canonical import Builtin import Swift class C { required init() } 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: ptr @"$s6vtable1CCfD", // CHECK-objc: ptr {{@"\$sBoWV"|null}}, // CHECK-objc: i64 ptrtoint (ptr @"$s6vtable1CCMm" to i64), // CHECK-DIRECT-objc: ptr @"OBJC_CLASS_$_{{(_TtCs12_)?}}SwiftObject", // CHECK-INDIRECT-objc: ptr null, // CHECK-objc: ptr @_objc_empty_cache, // CHECK-objc: ptr null, // CHECK-objc: i64 add (i64 ptrtoint (ptr @_DATA__TtC6vtable1C to i64), i64 {{1|2}}), // CHECK-objc: i32 {{3|2}}, i32 0, i32 16, i16 7, i16 0, // CHECK-objc: i32 112, i32 24, // CHECK-objc: @"$s6vtable1CCMn" // CHECK-objc: ptr @"$s6vtable1CCACycACmcfC" // CHECK-objc: }> // CHECK-native: @"$s6vtable1CCMf" = internal global [[C_METADATA_T:<{.*}>]] <{ // CHECK-native: ptr @"$s6vtable1CCfD", // CHECK-native: ptr {{@"\$sBoWV"|null}}, // CHECK-native: i64 0, // CHECK-native: ptr null, // CHECK-native: i32 {{3|2}}, i32 0, i32 16, i16 7, i16 0, // CHECK-native: i32 88, i32 24, // CHECK-native: @"$s6vtable1CCMn" // CHECK-native: ptr @"$s6vtable1CCACycACmcfC" // CHECK-native: }> sil_vtable C { #C.init!allocator: @$s6vtable1CCACycACmcfC }