From 301d9f0cf33a7002ddcb4a08a4c6e3f41da2d25f Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Wed, 18 Jul 2018 16:13:52 -0700 Subject: [PATCH] AST: Give destructors a second parameter list Constructors and methods had two parameter lists, one for self and one for the formal parameters. Destructors only had one parameter list, which introduced an annoying corner case. --- include/swift/AST/Decl.h | 11 +++--- lib/AST/Decl.cpp | 9 +++-- lib/SIL/SILDeclRef.cpp | 2 - lib/SIL/TypeLowering.cpp | 3 +- lib/Sema/TypeCheckGeneric.cpp | 10 ----- test/IRGen/exactcast.sil | 6 +-- test/IRGen/nonatomic_reference_counting.sil | 2 +- test/IRGen/objc_dealloc.sil | 2 +- test/IRGen/readonly.sil | 2 +- test/Profiler/coverage_deinit.swift | 2 +- test/SIL/Parser/SILDeclRef.sil | 4 +- .../Parser/nonatomic_reference_counting.sil | 2 +- test/SIL/Serialization/vtable.sil | 10 ++--- .../vtable_deserialization.swift | 4 +- test/SILGen/SILDeclRef.swift | 2 +- test/SILGen/addressors.swift | 4 +- test/SILGen/class_resilience.swift | 2 +- test/SILGen/deinit_in_vtable.swift | 4 +- test/SILGen/dynamic.swift | 6 +-- test/SILGen/errors.swift | 4 +- test/SILGen/objc_attr_NSManaged.swift | 4 +- test/SILGen/objc_dealloc.swift | 2 +- test/SILGen/objc_generic_class.swift | 2 +- .../objc_required_designated_init.swift | 6 +-- test/SILGen/testable-multifile.swift | 6 +-- test/SILGen/vtable_thunks_reabstraction.swift | 38 +++++++++---------- test/SILGen/vtables.swift | 2 +- test/SILGen/vtables_objc.swift | 4 +- test/SILOptimizer/Inputs/TestMod.sil | 2 +- test/SILOptimizer/assume_single_threaded.sil | 2 +- test/SILOptimizer/basic-callee-printer.sil | 4 +- .../closure_lifetime_fixup_objc.swift | 2 +- ...pagation_castopt_analysis_invalidation.sil | 4 +- test/SILOptimizer/cse.sil | 4 +- test/SILOptimizer/cse_objc.sil | 4 +- test/SILOptimizer/devirt_release.sil | 2 +- test/SILOptimizer/devirt_try_apply.sil | 10 ++--- test/SILOptimizer/eager_specialize.sil | 2 +- test/SILOptimizer/escape_analysis.sil | 4 +- .../inlinecaches_invalidate_failure.sil | 2 +- test/SILOptimizer/optimize_never.sil | 4 +- test/sil-nm/basic.sil | 2 +- 42 files changed, 96 insertions(+), 107 deletions(-) diff --git a/include/swift/AST/Decl.h b/include/swift/AST/Decl.h index ec6247233c6..46c599bc0da 100644 --- a/include/swift/AST/Decl.h +++ b/include/swift/AST/Decl.h @@ -6096,21 +6096,20 @@ public: /// } /// \endcode class DestructorDecl : public AbstractFunctionDecl { - ParameterList *SelfParameter; + ParameterList *ParameterLists[2]; + public: DestructorDecl(SourceLoc DestructorLoc, ParamDecl *selfDecl, DeclContext *Parent); - + void setSelfDecl(ParamDecl *selfDecl); MutableArrayRef getParameterLists() { - return { &SelfParameter, 1 }; + return { ParameterLists, 2 }; } ArrayRef getParameterLists() const { - return { &SelfParameter, 1 }; + return { ParameterLists, 2 }; } - - SourceLoc getDestructorLoc() const { return getNameLoc(); } SourceLoc getStartLoc() const { return getDestructorLoc(); } diff --git a/lib/AST/Decl.cpp b/lib/AST/Decl.cpp index 3f86048602c..2e103c458ad 100644 --- a/lib/AST/Decl.cpp +++ b/lib/AST/Decl.cpp @@ -5379,16 +5379,17 @@ DestructorDecl::DestructorDecl(SourceLoc DestructorLoc, ParamDecl *selfDecl, : AbstractFunctionDecl(DeclKind::Destructor, Parent, DeclBaseName::createDestructor(), DestructorLoc, /*Throws=*/false, /*ThrowsLoc=*/SourceLoc(), - /*NumParameterLists=*/1, nullptr) { + /*NumParameterLists=*/2, nullptr) { setSelfDecl(selfDecl); + ParameterLists[1] = ParameterList::createEmpty(Parent->getASTContext()); } void DestructorDecl::setSelfDecl(ParamDecl *selfDecl) { if (selfDecl) { - SelfParameter = ParameterList::createWithoutLoc(selfDecl); - SelfParameter->setDeclContextOfParamDecls(this); + ParameterLists[0] = ParameterList::createWithoutLoc(selfDecl); + ParameterLists[0]->setDeclContextOfParamDecls(this); } else { - SelfParameter = nullptr; + ParameterLists[0] = nullptr; } } diff --git a/lib/SIL/SILDeclRef.cpp b/lib/SIL/SILDeclRef.cpp index cc07bc9dc21..d21c890d13d 100644 --- a/lib/SIL/SILDeclRef.cpp +++ b/lib/SIL/SILDeclRef.cpp @@ -813,8 +813,6 @@ unsigned SILDeclRef::getParameterListCount() const { return func->getParameterLists().size(); } else if (auto *ed = dyn_cast(vd)) { return ed->hasAssociatedValues() ? 2 : 1; - } else if (isa(vd)) { - return 1; } else if (isa(vd)) { return 2; } else if (isa(vd)) { diff --git a/lib/SIL/TypeLowering.cpp b/lib/SIL/TypeLowering.cpp index 0898424d537..0d8befb9ea5 100644 --- a/lib/SIL/TypeLowering.cpp +++ b/lib/SIL/TypeLowering.cpp @@ -1673,9 +1673,10 @@ static CanAnyFunctionType getDestructorInterfaceType(TypeConverter &TC, CanType resultTy = (isDeallocating ? TupleType::getEmpty(C) : C.TheNativeObjectType); + CanType methodTy = CanFunctionType::get(TupleType::getEmpty(C), resultTy); auto sig = TC.getEffectiveGenericSignature(dd); - return CanAnyFunctionType::get(sig, classType, resultTy, extInfo); + return CanAnyFunctionType::get(sig, classType, methodTy, extInfo); } /// Retrieve the type of the ivar initializer or destroyer method for diff --git a/lib/Sema/TypeCheckGeneric.cpp b/lib/Sema/TypeCheckGeneric.cpp index ce32c6a247e..9cc76f0b765 100644 --- a/lib/Sema/TypeCheckGeneric.cpp +++ b/lib/Sema/TypeCheckGeneric.cpp @@ -923,16 +923,6 @@ void TypeChecker::configureInterfaceType(AbstractFunctionDecl *func, } auto paramLists = func->getParameterLists(); - SmallVector storedParamLists; - - // FIXME: Destructors don't have the '()' pattern in their signature, so - // paste it here. - if (isa(func)) { - assert(paramLists.size() == 1 && "Only the self paramlist"); - storedParamLists.push_back(paramLists[0]); - storedParamLists.push_back(ParameterList::createEmpty(Context)); - paramLists = storedParamLists; - } bool hasSelf = func->getDeclContext()->isTypeContext(); for (unsigned i = 0, e = paramLists.size(); i != e; ++i) { diff --git a/test/IRGen/exactcast.sil b/test/IRGen/exactcast.sil index ceb55d09d7e..f41d41cb84b 100644 --- a/test/IRGen/exactcast.sil +++ b/test/IRGen/exactcast.sil @@ -109,15 +109,15 @@ sil @$S5test110DerivedIntCfD : $@convention(method) (@owned DerivedInt) -> () sil_vtable BaseBase { #BaseBase.foo!1: (BaseBase) -> () -> () : @$S5test104BaseB0C3fooyyF - #BaseBase.deinit!deallocator: @$S5test104BaseB0CfD + #BaseBase.deinit!deallocator.1: @$S5test104BaseB0CfD } sil_vtable Base { #BaseBase.foo!1: (BaseBase) -> () -> () : @$S5test104BaseB0C3fooyyF [inherited] - #Base.deinit!deallocator: @$S5test14BaseCfD + #Base.deinit!deallocator.1: @$S5test14BaseCfD } sil_vtable DerivedInt { #BaseBase.foo!1: (BaseBase) -> () -> () : @$S5test110DerivedIntC3fooyyF [override] - #DerivedInt.deinit!deallocator: @$S5test110DerivedIntCfD + #DerivedInt.deinit!deallocator.1: @$S5test110DerivedIntCfD } diff --git a/test/IRGen/nonatomic_reference_counting.sil b/test/IRGen/nonatomic_reference_counting.sil index a3238c56915..3e7393c7c92 100644 --- a/test/IRGen/nonatomic_reference_counting.sil +++ b/test/IRGen/nonatomic_reference_counting.sil @@ -220,6 +220,6 @@ bb0(%0 : $C): } sil_vtable C { - #C.deinit!deallocator: @_TFC28nonatomic_reference_counting1CD // C.__deallocating_deinit + #C.deinit!deallocator.1: @_TFC28nonatomic_reference_counting1CD // C.__deallocating_deinit } diff --git a/test/IRGen/objc_dealloc.sil b/test/IRGen/objc_dealloc.sil index c5491cfcfb8..92d7bf188ed 100644 --- a/test/IRGen/objc_dealloc.sil +++ b/test/IRGen/objc_dealloc.sil @@ -109,7 +109,7 @@ bb0(%0 : @unowned $SwiftGizmo): // CHECK-NEXT: store %objc_class* [[T1]], %objc_class** [[OBJC_SUPER_CLASS]], align 8 // CHECK-NEXT: [[DEALLOC_SEL:%[a-zA-Z0-9]+]] = load i8*, i8** @"\01L_selector(dealloc)", align 8 // CHECK-NEXT: call void bitcast (void ()* @objc_msgSendSuper2 to void (%objc_super*, i8*)*)(%objc_super* [[OBJC_SUPER]], i8* [[DEALLOC_SEL]]) - %5 = objc_super_method %0 : $SwiftGizmo, #Gizmo.deinit!deallocator.foreign : (Gizmo) -> () -> (), $@convention(objc_method) (Gizmo) -> () // user: %7 + %5 = objc_super_method %0 : $SwiftGizmo, #Gizmo.deinit!deallocator.1.foreign : (Gizmo) -> () -> (), $@convention(objc_method) (Gizmo) -> () // user: %7 %6 = upcast %0 : $SwiftGizmo to $Gizmo // user: %7 %7 = apply %5(%6) : $@convention(objc_method) (Gizmo) -> () diff --git a/test/IRGen/readonly.sil b/test/IRGen/readonly.sil index 32b54e464f2..350153add4a 100644 --- a/test/IRGen/readonly.sil +++ b/test/IRGen/readonly.sil @@ -62,6 +62,6 @@ bb0(%0 : $*Any): } sil_vtable XXX { - #XXX.deinit!deallocator: @XXX_dtor + #XXX.deinit!deallocator.1: @XXX_dtor #XXX.init!initializer.1: @XXX_ctor } diff --git a/test/Profiler/coverage_deinit.swift b/test/Profiler/coverage_deinit.swift index 86183baa892..9701d503fb7 100644 --- a/test/Profiler/coverage_deinit.swift +++ b/test/Profiler/coverage_deinit.swift @@ -6,7 +6,7 @@ import Foundation public class Derived: NSString { // CHECK-LABEL: sil @$S15coverage_deinit7DerivedCfD // CHECK: builtin "int_instrprof_increment" - // CHECK-NEXT: super_method {{.*}} : $Derived, #NSString.deinit!deallocator.foreign + // CHECK-NEXT: super_method {{.*}} : $Derived, #NSString.deinit!deallocator.1.foreign deinit { } } diff --git a/test/SIL/Parser/SILDeclRef.sil b/test/SIL/Parser/SILDeclRef.sil index 991964d1a35..f4d5ee11a8a 100644 --- a/test/SIL/Parser/SILDeclRef.sil +++ b/test/SIL/Parser/SILDeclRef.sil @@ -122,7 +122,7 @@ sil_vtable Derived1 { #Base.foo!1: (Base) -> (Int32) -> () : @_TFC10SILDeclRef8Derived13foofT1nVs5Int32_T_ // Derived1.foo(n : Int32) -> () #Base.foo!1: (Base) -> (Float) -> Int32 : @_TFC10SILDeclRef8Derived13foofT1fSf_Vs5Int32 // Derived1.foo(f : Float) -> Int32 #Base.init!initializer.1: (Base.Type) -> () -> Base : @_TFC10SILDeclRef8Derived1cfT_S0_ // Derived1.init() -> Derived1 - #Derived1.deinit!deallocator: (Derived1) -> () -> () : @_TFC10SILDeclRef8Derived1D // Derived1.__deallocating_deinit + #Derived1.deinit!deallocator.1: (Derived1) -> () -> () : @_TFC10SILDeclRef8Derived1D // Derived1.__deallocating_deinit } sil_vtable Derived2 { @@ -130,7 +130,7 @@ sil_vtable Derived2 { #Base.foo!1: (Base) -> (Int32) -> () : @_TFC10SILDeclRef8Derived23foofT1nVs5Int32_T_ // Derived2.foo(n : Int32) -> () #Base.foo!1: (Base) -> (Float) -> Int32 : @_TFC10SILDeclRef8Derived23foofT1fSf_Vs5Int32 // Derived2.foo(f : Float) -> Int32 #Base.init!initializer.1: (Base.Type) -> () -> Base : @_TFC10SILDeclRef8Derived2cfT_S0_ // Derived2.init() -> Derived2 - #Derived2.deinit!deallocator: (Derived2) -> () -> () : @_TFC10SILDeclRef8Derived2D // Derived2.__deallocating_deinit + #Derived2.deinit!deallocator.1: (Derived2) -> () -> () : @_TFC10SILDeclRef8Derived2D // Derived2.__deallocating_deinit } sil_witness_table [serialized] Base: P module SILDeclRef { diff --git a/test/SIL/Parser/nonatomic_reference_counting.sil b/test/SIL/Parser/nonatomic_reference_counting.sil index 31c4097f60a..1e1b4dd3f19 100644 --- a/test/SIL/Parser/nonatomic_reference_counting.sil +++ b/test/SIL/Parser/nonatomic_reference_counting.sil @@ -91,6 +91,6 @@ bb0(%0 : $C): } sil_vtable C { - #C.deinit!deallocator: @_TFC28nonatomic_reference_counting1CD // C.__deallocating_deinit + #C.deinit!deallocator.1: @_TFC28nonatomic_reference_counting1CD // C.__deallocating_deinit } diff --git a/test/SIL/Serialization/vtable.sil b/test/SIL/Serialization/vtable.sil index 175d14edf9a..d26fbbb1e46 100644 --- a/test/SIL/Serialization/vtable.sil +++ b/test/SIL/Serialization/vtable.sil @@ -44,14 +44,14 @@ sil_vtable Base { #Base.m1!1: (Base) -> () -> () : @$S1x4BaseC2m1yyF #Base.m2!1: (Base) -> () -> () : @$S1x4BaseC2m2yyF #Base.init!initializer.1: (Base.Type) -> () -> Base : @$S1x4BaseCACycfc - #Base.deinit!deallocator: @$S1x4BaseCfD + #Base.deinit!deallocator.1: @$S1x4BaseCfD } // CHECK-LABEL: sil_vtable Base { // CHECK-NEXT: #Base.m1!1: (Base) -> () -> () : @$S1x4BaseC2m1yyF // CHECK-NEXT: #Base.m2!1: (Base) -> () -> () : @$S1x4BaseC2m2yyF // CHECK-NEXT: #Base.init!initializer.1: (Base.Type) -> () -> Base : @$S1x4BaseCACycfc -// CHECK-NEXT: #Base.deinit!deallocator: @$S1x4BaseCfD +// CHECK-NEXT: #Base.deinit!deallocator.1: @$S1x4BaseCfD // CHECK-NEXT: } sil_vtable Derived { @@ -59,7 +59,7 @@ sil_vtable Derived { #Base.m2!1: (Base) -> () -> () : @$S1x7DerivedC2m2yyF [override] #Base.init!initializer.1: (Base.Type) -> () -> Base : @$S1x7DerivedCACycfc [override] #Derived.m3!1: (Derived) -> () -> () : @$S1x7DerivedC2m3yyF - #Derived.deinit!deallocator: @$S1x7DerivedCfD + #Derived.deinit!deallocator.1: @$S1x7DerivedCfD } // CHECK-LABEL: sil_vtable Derived { @@ -67,5 +67,5 @@ sil_vtable Derived { // CHECK-NEXT: #Base.m2!1: (Base) -> () -> () : @$S1x7DerivedC2m2yyF [override] // CHECK-NEXT: #Base.init!initializer.1: (Base.Type) -> () -> Base : @$S1x7DerivedCACycfc [override] // CHECK-NEXT: #Derived.m3!1: (Derived) -> () -> () : @$S1x7DerivedC2m3yyF -// CHECK-NEXT: #Derived.deinit!deallocator: @$S1x7DerivedCfD -// CHECK-NEXT: } \ No newline at end of file +// CHECK-NEXT: #Derived.deinit!deallocator.1: @$S1x7DerivedCfD +// CHECK-NEXT: } diff --git a/test/SIL/Serialization/vtable_deserialization.swift b/test/SIL/Serialization/vtable_deserialization.swift index 8efc0eb92a1..85727e3d3c6 100644 --- a/test/SIL/Serialization/vtable_deserialization.swift +++ b/test/SIL/Serialization/vtable_deserialization.swift @@ -28,12 +28,12 @@ Class.firstMethod() // CHECK-NEXT: #Class.firstMethod!1: (Class.Type) -> () -> () : @$S28vtable_deserialization_input5ClassC11firstMethodyyFZ // CHECK-NEXT: #Class.secondMethod!1: (Class.Type) -> () -> () : @$S28vtable_deserialization_input5ClassC12secondMethodyyFZ // CHECK-NEXT: #Class.thirdMethod!1: (Class.Type) -> () -> () : @$S28vtable_deserialization_input5ClassC11thirdMethodyyFZ -// CHECK-NEXT: #Class.deinit!deallocator: @$S28vtable_deserialization_input5ClassCfD +// CHECK-NEXT: #Class.deinit!deallocator.1: @$S28vtable_deserialization_input5ClassCfD // CHECK-NEXT: } // OPT: sil_vtable Class { // OPT-NEXT: #Class.firstMethod!1: (Class.Type) -> () -> () : @$S28vtable_deserialization_input5ClassC11firstMethodyyFZ // OPT-NEXT: #Class.secondMethod!1: (Class.Type) -> () -> () : @$S28vtable_deserialization_input5ClassC12secondMethodyyFZ // OPT-NEXT: #Class.thirdMethod!1: (Class.Type) -> () -> () : @$S28vtable_deserialization_input5ClassC11thirdMethodyyFZ -// OPT-NEXT: #Class.deinit!deallocator: @$S28vtable_deserialization_input5ClassCfD +// OPT-NEXT: #Class.deinit!deallocator.1: @$S28vtable_deserialization_input5ClassCfD // OPT-NEXT: } diff --git a/test/SILGen/SILDeclRef.swift b/test/SILGen/SILDeclRef.swift index 5104f53aa0e..33d467390f2 100644 --- a/test/SILGen/SILDeclRef.swift +++ b/test/SILGen/SILDeclRef.swift @@ -59,7 +59,7 @@ public func testBase(b: Base) -> Int32 { // CHECK-NEXT: #Base.foo!1: (Base) -> (Int32) -> () : @$S10SILDeclRef4BaseC3foo1nys5Int32V_tF // Base.foo(n:) // CHECK-NEXT: #Base.foo!1: (Base) -> (Float) -> Int32 : @$S10SILDeclRef4BaseC3foo1fs5Int32VSf_tF // Base.foo(f:) // CHECK-NEXT: #Base.init!initializer.1: (Base.Type) -> () -> Base : @$S10SILDeclRef4BaseCACycfc // Base.init() -// CHECK-NEXT: #Base.deinit!deallocator: @$S10SILDeclRef4BaseCfD // Base.__deallocating_deinit +// CHECK-NEXT: #Base.deinit!deallocator.1: @$S10SILDeclRef4BaseCfD // Base.__deallocating_deinit // CHECK-NEXT: } // CHECK:sil_witness_table [serialized] Base: P module SILDeclRef { diff --git a/test/SILGen/addressors.swift b/test/SILGen/addressors.swift index 27119c5cf01..a4d83ef3139 100644 --- a/test/SILGen/addressors.swift +++ b/test/SILGen/addressors.swift @@ -587,7 +587,7 @@ class Sub : Base { // CHECK-NEXT: #Base.value!setter.1: (Base) -> (Int32) -> () : @$S10addressors4BaseC5values5Int32Vvs // CHECK-NEXT: #Base.value!materializeForSet.1: (Base) -> (Builtin.RawPointer, inout Builtin.UnsafeValueBuffer) -> (Builtin.RawPointer, Builtin.RawPointer?) : @$S10addressors4BaseC5values5Int32Vvm // CHECK-NEXT: #Base.init!initializer.1: (Base.Type) -> () -> Base : @$S10addressors4BaseCACycfc -// CHECK-NEXT: #Base.deinit!deallocator: @$S10addressors4BaseCfD +// CHECK-NEXT: #Base.deinit!deallocator.1: @$S10addressors4BaseCfD // CHECK-NEXT: } // CHECK-LABEL: sil_vtable Sub { @@ -598,5 +598,5 @@ class Sub : Base { // CHECK-NEXT: #Base.value!setter.1: (Base) -> (Int32) -> () : @$S10addressors3SubC5values5Int32Vvs // CHECK-NEXT: #Base.value!materializeForSet.1: (Base) -> (Builtin.RawPointer, inout Builtin.UnsafeValueBuffer) -> (Builtin.RawPointer, Builtin.RawPointer?) : @$S10addressors3SubC5values5Int32Vvm // CHECK-NEXT: #Base.init!initializer.1: (Base.Type) -> () -> Base : @$S10addressors3SubCACycfc -// CHECK-NEXT: #Sub.deinit!deallocator: @$S10addressors3SubCfD +// CHECK-NEXT: #Sub.deinit!deallocator.1: @$S10addressors3SubCfD // CHECK-NEXT: } diff --git a/test/SILGen/class_resilience.swift b/test/SILGen/class_resilience.swift index 5b02bc21d3e..529ad8c2347 100644 --- a/test/SILGen/class_resilience.swift +++ b/test/SILGen/class_resilience.swift @@ -44,5 +44,5 @@ class SubclassOfOutsideChild : ResilientOutsideChild { // CHECK-NEXT: #ResilientOutsideParent.init!initializer.1: (ResilientOutsideParent.Type) -> () -> ResilientOutsideParent : @$S16class_resilience22SubclassOfOutsideChildCACycfc [override] // CHECK-NEXT: #ResilientOutsideParent.method!1: (ResilientOutsideParent) -> () -> () : @$S16class_resilience22SubclassOfOutsideChildC6methodyyF [override] // CHECK-NEXT: #SubclassOfOutsideChild.newMethod!1: (SubclassOfOutsideChild) -> () -> () : @$S16class_resilience22SubclassOfOutsideChildC9newMethodyyF -// CHECK-NEXT: #SubclassOfOutsideChild.deinit!deallocator: @$S16class_resilience22SubclassOfOutsideChildCfD +// CHECK-NEXT: #SubclassOfOutsideChild.deinit!deallocator.1: @$S16class_resilience22SubclassOfOutsideChildCfD // CHECK-NEXT: } diff --git a/test/SILGen/deinit_in_vtable.swift b/test/SILGen/deinit_in_vtable.swift index 4cd2af3b4af..9ea7119d4a8 100644 --- a/test/SILGen/deinit_in_vtable.swift +++ b/test/SILGen/deinit_in_vtable.swift @@ -31,9 +31,9 @@ public func testmain() { // function elimination // CHECK-LABEL: sil_vtable A -// CHECK: A.deinit!deallocator: @[[A]] +// CHECK: A.deinit!deallocator.1: @[[A]] // CHECK-LABEL: sil_vtable B // CHECK-NOT: A.deinit -// CHECK: B.deinit!deallocator: @[[B]] +// CHECK: B.deinit!deallocator.1: @[[B]] diff --git a/test/SILGen/dynamic.swift b/test/SILGen/dynamic.swift index b25842c1afd..558a183bc9c 100644 --- a/test/SILGen/dynamic.swift +++ b/test/SILGen/dynamic.swift @@ -516,7 +516,7 @@ public class ConcreteDerived : GenericBase { // CHECK-NEXT: #Foo.subscript!setter.1: {{.*}} : @$S7dynamic3FooC4objcSiyXl_tcis // dynamic.Foo.subscript.setter : (objc: Swift.AnyObject) -> Swift.Int // CHECK-NEXT: #Foo.subscript!materializeForSet // CHECK-NEXT: #Foo.overriddenByDynamic!1: {{.*}} : @$S7dynamic3FooC19overriddenByDynamic{{[_0-9a-zA-Z]*}} -// CHECK-NEXT: #Foo.deinit!deallocator: {{.*}} +// CHECK-NEXT: #Foo.deinit!deallocator.1: {{.*}} // CHECK-NEXT: } // Vtable uses a dynamic thunk for dynamic overrides @@ -545,12 +545,12 @@ public class ConcreteDerived : GenericBase { // No vtable entry for override of @objc extension property // CHECK-LABEL: sil_vtable [serialized] SubExt { -// CHECK-NEXT: #SubExt.deinit!deallocator: @$S7dynamic6SubExtCfD // dynamic.SubExt.__deallocating_deinit +// CHECK-NEXT: #SubExt.deinit!deallocator.1: @$S7dynamic6SubExtCfD // dynamic.SubExt.__deallocating_deinit // CHECK-NEXT: } // Dynamic thunk + vtable re-abstraction // CHECK-LABEL: sil_vtable [serialized] ConcreteDerived { // CHECK-NEXT: #GenericBase.method!1: (GenericBase) -> (T) -> () : public @$S7dynamic15ConcreteDerivedC6methodyySiFAA11GenericBaseCADyyxFTV [override] // vtable thunk for dynamic.GenericBase.method(A) -> () dispatching to dynamic.ConcreteDerived.method(Swift.Int) -> () // CHECK-NEXT: #GenericBase.init!initializer.1: (GenericBase.Type) -> () -> GenericBase : @$S7dynamic15ConcreteDerivedCACycfc [override] // dynamic.ConcreteDerived.init() -> dynamic.ConcreteDerived -// CHECK-NEXT: #ConcreteDerived.deinit!deallocator: @$S7dynamic15ConcreteDerivedCfD // dynamic.ConcreteDerived.__deallocating_deinit +// CHECK-NEXT: #ConcreteDerived.deinit!deallocator.1: @$S7dynamic15ConcreteDerivedCfD // dynamic.ConcreteDerived.__deallocating_deinit // CHECK-NEXT: } diff --git a/test/SILGen/errors.swift b/test/SILGen/errors.swift index a84f825acc8..967dd4d2bfa 100644 --- a/test/SILGen/errors.swift +++ b/test/SILGen/errors.swift @@ -965,12 +965,12 @@ class SomeErrorClass : Error { } // CHECK-LABEL: sil_vtable SomeErrorClass // CHECK-NEXT: #SomeErrorClass.init!initializer.1: {{.*}} : @$S6errors14SomeErrorClassCACycfc -// CHECK-NEXT: #SomeErrorClass.deinit!deallocator: @$S6errors14SomeErrorClassCfD +// CHECK-NEXT: #SomeErrorClass.deinit!deallocator.1: @$S6errors14SomeErrorClassCfD // CHECK-NEXT: } class OtherErrorSub : OtherError { } // CHECK-LABEL: sil_vtable OtherErrorSub { // CHECK-NEXT: #OtherError.init!initializer.1: {{.*}} : @$S6errors13OtherErrorSubCACycfc [override] // OtherErrorSub.init() -// CHECK-NEXT: #OtherErrorSub.deinit!deallocator: @$S6errors13OtherErrorSubCfD // OtherErrorSub.__deallocating_deinit +// CHECK-NEXT: #OtherErrorSub.deinit!deallocator.1: @$S6errors13OtherErrorSubCfD // OtherErrorSub.__deallocating_deinit // CHECK-NEXT:} diff --git a/test/SILGen/objc_attr_NSManaged.swift b/test/SILGen/objc_attr_NSManaged.swift index dbb4f7c8e40..043faf6783e 100644 --- a/test/SILGen/objc_attr_NSManaged.swift +++ b/test/SILGen/objc_attr_NSManaged.swift @@ -119,13 +119,13 @@ class FinalEntity: NSObject, EntityIDProto { // CHECK-LABEL: sil_vtable SwiftGizmo { // CHECK-NEXT: #SwiftGizmo.modifyX!1: {{.*}} : @$S19objc_attr_NSManaged10SwiftGizmoC7modifyXyyF // CHECK-NEXT: #SwiftGizmo.testFunc!1: {{.*}} : @$S19objc_attr_NSManaged10SwiftGizmoC8testFuncyyF -// CHECK-NEXT: #SwiftGizmo.deinit!deallocator: @$S19objc_attr_NSManaged10SwiftGizmoCfD +// CHECK-NEXT: #SwiftGizmo.deinit!deallocator.1: @$S19objc_attr_NSManaged10SwiftGizmoCfD // CHECK-NEXT: } // CHECK-LABEL: sil_vtable FinalGizmo { // CHECK-NEXT: #SwiftGizmo.modifyX!1: {{.*}} : @$S19objc_attr_NSManaged10SwiftGizmoC7modifyX{{[_0-9a-zA-Z]*}}F // CHECK-NEXT: #SwiftGizmo.testFunc!1: {{.*}} : @$S19objc_attr_NSManaged10SwiftGizmoC8testFunc{{[_0-9a-zA-Z]*}}F -// CHECK-NEXT: #FinalGizmo.deinit!deallocator: @$S19objc_attr_NSManaged10FinalGizmoCfD +// CHECK-NEXT: #FinalGizmo.deinit!deallocator.1: @$S19objc_attr_NSManaged10FinalGizmoCfD // CHECK-NEXT: } // CHECK-LABEL: sil_vtable ProtoAdopter { diff --git a/test/SILGen/objc_dealloc.swift b/test/SILGen/objc_dealloc.swift index 8073a5d62c7..b7f4b8c2506 100644 --- a/test/SILGen/objc_dealloc.swift +++ b/test/SILGen/objc_dealloc.swift @@ -44,7 +44,7 @@ class SwiftGizmo : Gizmo { // CHECK-NOT: ref_element_addr // Call super -dealloc. - // CHECK: [[SUPER_DEALLOC:%[0-9]+]] = objc_super_method [[SELF]] : $SwiftGizmo, #Gizmo.deinit!deallocator.foreign : (Gizmo) -> () -> (), $@convention(objc_method) (Gizmo) -> () + // CHECK: [[SUPER_DEALLOC:%[0-9]+]] = objc_super_method [[SELF]] : $SwiftGizmo, #Gizmo.deinit!deallocator.1.foreign : (Gizmo) -> () -> (), $@convention(objc_method) (Gizmo) -> () // CHECK: [[SUPER:%[0-9]+]] = upcast [[SELF]] : $SwiftGizmo to $Gizmo // CHECK: [[SUPER_DEALLOC_RESULT:%[0-9]+]] = apply [[SUPER_DEALLOC]]([[SUPER]]) : $@convention(objc_method) (Gizmo) -> () // CHECK: end_lifetime [[SUPER]] diff --git a/test/SILGen/objc_generic_class.swift b/test/SILGen/objc_generic_class.swift index 0c5efd8342d..24839834eb2 100644 --- a/test/SILGen/objc_generic_class.swift +++ b/test/SILGen/objc_generic_class.swift @@ -35,7 +35,7 @@ class Generic: NSObject { // CHECK-LABEL: sil hidden @$S18objc_generic_class11SubGeneric1CfD : $@convention(method) (@owned SubGeneric1) -> () { // CHECK: bb0([[SELF:%.*]] : @owned $SubGeneric1): -// CHECK: [[SUPER_DEALLOC:%.*]] = objc_super_method [[SELF]] : $SubGeneric1, #Generic.deinit!deallocator.foreign : (Generic) -> () -> (), $@convention(objc_method) <τ_0_0> (Generic<τ_0_0>) -> () +// CHECK: [[SUPER_DEALLOC:%.*]] = objc_super_method [[SELF]] : $SubGeneric1, #Generic.deinit!deallocator.1.foreign : (Generic) -> () -> (), $@convention(objc_method) <τ_0_0> (Generic<τ_0_0>) -> () // CHECK: [[SUPER:%.*]] = upcast [[SELF:%.*]] : $SubGeneric1 to $Generic // CHECK: apply [[SUPER_DEALLOC]]([[SUPER]]) class SubGeneric1: Generic { diff --git a/test/SILGen/objc_required_designated_init.swift b/test/SILGen/objc_required_designated_init.swift index 5aa400be674..a3545ee995a 100644 --- a/test/SILGen/objc_required_designated_init.swift +++ b/test/SILGen/objc_required_designated_init.swift @@ -25,15 +25,15 @@ class Root { // CHECK-LABEL: sil_vtable Baboom { // CHECK: #Boom.init!allocator.1: (Boom.Type) -> () -> Boom : @$S29objc_required_designated_init6BaboomCACycfC [override] -// CHECK: #Baboom.deinit!deallocator: @$S29objc_required_designated_init6BaboomCfD +// CHECK: #Baboom.deinit!deallocator.1: @$S29objc_required_designated_init6BaboomCfD // CHECK: } // CHECK-LABEL: sil_vtable BigBadaBoom { // CHECK: #Badaboom.init!allocator.1: (Badaboom.Type) -> () -> Badaboom : @$S29objc_required_designated_init11BigBadaBoomCACyxGycfC [override] -// CHECK: #BigBadaBoom.deinit!deallocator: @$S29objc_required_designated_init11BigBadaBoomCfD +// CHECK: #BigBadaBoom.deinit!deallocator.1: @$S29objc_required_designated_init11BigBadaBoomCfD // CHECK: } // CHECK-LABEL: sil_vtable Root { // CHECK: #Root.init!allocator.1: (Root.Type) -> () -> Root : @$S29objc_required_designated_init4RootCACycfC -// CHECK: #Root.deinit!deallocator: @$S29objc_required_designated_init4RootCfD +// CHECK: #Root.deinit!deallocator.1: @$S29objc_required_designated_init4RootCfD // CHECK: } diff --git a/test/SILGen/testable-multifile.swift b/test/SILGen/testable-multifile.swift index 0fe518560fa..87af0f8faa3 100644 --- a/test/SILGen/testable-multifile.swift +++ b/test/SILGen/testable-multifile.swift @@ -41,19 +41,19 @@ public class PublicSub: Base { // CHECK-LABEL: sil_vtable PrivateSub { // CHECK-NEXT: #Base.foo!1: {{.*}} : @$S4main10PrivateSub33_F1525133BD493492AD72BF10FBCB1C52LLC3fooyyF // CHECK-NEXT: #Base.init!initializer.1: {{.*}} : @$S4main10PrivateSub33_F1525133BD493492AD72BF10FBCB1C52LLCADycfc -// CHECK-NEXT: #PrivateSub.deinit!deallocator: @$S4main10PrivateSub33_F1525133BD493492AD72BF10FBCB1C52LLCfD +// CHECK-NEXT: #PrivateSub.deinit!deallocator.1: @$S4main10PrivateSub33_F1525133BD493492AD72BF10FBCB1C52LLCfD // CHECK-NEXT: } // CHECK-LABEL: sil_vtable Sub { // CHECK-NEXT: #Base.foo!1: {{.*}} : @$S4main3SubC3fooyyF // CHECK-NEXT: #Base.init!initializer.1: {{.*}} : @$S4main3SubCACycfc -// CHECK-NEXT: #Sub.deinit!deallocator: @$S4main3SubCfD +// CHECK-NEXT: #Sub.deinit!deallocator.1: @$S4main3SubCfD // CHECK-NEXT: } // CHECK-LABEL: sil_vtable [serialized] PublicSub { // CHECK-NEXT: #Base.foo!1: {{.*}} : @$S4main9PublicSubC3fooyyF // CHECK-NEXT: #Base.init!initializer.1: {{.*}} : @$S4main9PublicSubCACycfc -// CHECK-NEXT: #PublicSub.deinit!deallocator: @$S4main9PublicSubCfD +// CHECK-NEXT: #PublicSub.deinit!deallocator.1: @$S4main9PublicSubCfD // CHECK-NEXT: } diff --git a/test/SILGen/vtable_thunks_reabstraction.swift b/test/SILGen/vtable_thunks_reabstraction.swift index fd5285cf210..8fb023329db 100644 --- a/test/SILGen/vtable_thunks_reabstraction.swift +++ b/test/SILGen/vtable_thunks_reabstraction.swift @@ -173,7 +173,7 @@ class Opaque { // CHECK-NEXT: #Opaque.variantOptionalityFunctions!1: (Opaque) -> (@escaping (T) -> T) -> ((T) -> T)? : @$S27vtable_thunks_reabstraction6OpaqueC27variantOptionalityFunctions1xxxcSgxxc_tF // Opaque.variantOptionalityFunctions(x:) // CHECK-NEXT: #Opaque.variantOptionalityTuples!1: (Opaque) -> ((T, (T.Type, (T) -> T))) -> (T, (T.Type, (T) -> T))? : @$S27vtable_thunks_reabstraction6OpaqueC24variantOptionalityTuples1xx_xm_xxcttSgx_xm_xxctt_tF // Opaque.variantOptionalityTuples(x:) // CHECK-NEXT: #Opaque.init!initializer.1: (Opaque.Type) -> () -> Opaque : @$S27vtable_thunks_reabstraction6OpaqueCACyxGycfc // Opaque.init() -// CHECK-NEXT: #Opaque.deinit!deallocator: @$S27vtable_thunks_reabstraction6OpaqueCfD // Opaque.__deallocating_deinit +// CHECK-NEXT: #Opaque.deinit!deallocator.1: @$S27vtable_thunks_reabstraction6OpaqueCfD // Opaque.__deallocating_deinit // CHECK-NEXT: } class StillOpaque: Opaque { @@ -196,7 +196,7 @@ class StillOpaque: Opaque { // CHECK-NEXT: #StillOpaque.variantOptionalityTuples!1: (StillOpaque) -> ((T, (T.Type, (T) -> T))?) -> (T, (T.Type, (T) -> T)) : @$S27vtable_thunks_reabstraction11StillOpaqueC24variantOptionalityTuples1xx_xm_xxcttx_xm_xxcttSg_tF // StillOpaque.variantOptionalityTuples(x:) -// CHECK-NEXT: #StillOpaque.deinit!deallocator: @$S27vtable_thunks_reabstraction11StillOpaqueCfD // StillOpaque.__deallocating_deinit +// CHECK-NEXT: #StillOpaque.deinit!deallocator.1: @$S27vtable_thunks_reabstraction11StillOpaqueCfD // StillOpaque.__deallocating_deinit // CHECK-NEXT: } class ConcreteValue: Opaque { @@ -230,7 +230,7 @@ class ConcreteValue: Opaque { // CHECK-NEXT: #ConcreteValue.variantOptionalityFunctions!1: (ConcreteValue) -> (((S) -> S)?) -> (S) -> S : @$S27vtable_thunks_reabstraction13ConcreteValueC27variantOptionalityFunctions1xAA1SVAGcA2GcSg_tF // ConcreteValue.variantOptionalityFunctions(x:) // CHECK-NEXT: #ConcreteValue.variantOptionalityTuples!1: (ConcreteValue) -> ((S, (S.Type, (S) -> S))?) -> (S, (S.Type, (S) -> S)) : @$S27vtable_thunks_reabstraction13ConcreteValueC24variantOptionalityTuples1xAA1SV_AGm_A2GcttAG_AGm_A2GcttSg_tF // ConcreteValue.variantOptionalityTuples(x:) -// CHECK-NEXT: #ConcreteValue.deinit!deallocator: @$S27vtable_thunks_reabstraction13ConcreteValueCfD // ConcreteValue.__deallocating_deinit +// CHECK-NEXT: #ConcreteValue.deinit!deallocator.1: @$S27vtable_thunks_reabstraction13ConcreteValueCfD // ConcreteValue.__deallocating_deinit // CHECK-NEXT: } class ConcreteClass: Opaque { @@ -265,7 +265,7 @@ class ConcreteClass: Opaque { // CHECK-NEXT: #ConcreteClass.variantOptionalityFunctions!1: (ConcreteClass) -> (((C) -> C)?) -> (C) -> C : @$S27vtable_thunks_reabstraction13ConcreteClassC27variantOptionalityFunctions1xAA1CCAGcA2GcSg_tF // ConcreteClass.variantOptionalityFunctions(x:) // CHECK-NEXT: #ConcreteClass.variantOptionalityTuples!1: (ConcreteClass) -> ((C, (C.Type, (C) -> C))?) -> (C, (C.Type, (C) -> C)) : @$S27vtable_thunks_reabstraction13ConcreteClassC24variantOptionalityTuples1xAA1CC_AGm_A2GcttAG_AGm_A2GcttSg_tF // ConcreteClass.variantOptionalityTuples(x:) -// CHECK-NEXT: #ConcreteClass.deinit!deallocator: @$S27vtable_thunks_reabstraction13ConcreteClassCfD // ConcreteClass.__deallocating_deinit +// CHECK-NEXT: #ConcreteClass.deinit!deallocator.1: @$S27vtable_thunks_reabstraction13ConcreteClassCfD // ConcreteClass.__deallocating_deinit // CHECK-NEXT: } class ConcreteClassVariance: Opaque { @@ -288,7 +288,7 @@ class ConcreteClassVariance: Opaque { // No new vtable entries -- class references are ABI compatible with // optional class references. -// CHECK-NEXT: #ConcreteClassVariance.deinit!deallocator: @$S27vtable_thunks_reabstraction21ConcreteClassVarianceCfD // ConcreteClassVariance.__deallocating_deinit +// CHECK-NEXT: #ConcreteClassVariance.deinit!deallocator.1: @$S27vtable_thunks_reabstraction21ConcreteClassVarianceCfD // ConcreteClassVariance.__deallocating_deinit // CHECK-NEXT: } class OpaqueTuple: Opaque<(U, U)> { @@ -312,7 +312,7 @@ class OpaqueTuple: Opaque<(U, U)> { // CHECK-NEXT: #OpaqueTuple.variantOptionality!1: (OpaqueTuple) -> ((U, U)?) -> (U, U) : @$S27vtable_thunks_reabstraction11OpaqueTupleC18variantOptionality1xx_xtx_xtSg_tF // OpaqueTuple.variantOptionality(x:) -// CHECK-NEXT: #OpaqueTuple.deinit!deallocator: @$S27vtable_thunks_reabstraction11OpaqueTupleCfD // OpaqueTuple.__deallocating_deinit +// CHECK-NEXT: #OpaqueTuple.deinit!deallocator.1: @$S27vtable_thunks_reabstraction11OpaqueTupleCfD // OpaqueTuple.__deallocating_deinit // CHECK-NEXT: } class ConcreteTuple: Opaque<(S, S)> { @@ -336,7 +336,7 @@ class ConcreteTuple: Opaque<(S, S)> { // CHECK-NEXT: #ConcreteTuple.variantOptionality!1: (ConcreteTuple) -> ((S, S)?) -> (S, S) : @$S27vtable_thunks_reabstraction13ConcreteTupleC18variantOptionality1xAA1SV_AGtAG_AGtSg_tF // ConcreteTuple.variantOptionality(x:) -// CHECK-NEXT: #ConcreteTuple.deinit!deallocator: @$S27vtable_thunks_reabstraction13ConcreteTupleCfD // ConcreteTuple.__deallocating_deinit +// CHECK-NEXT: #ConcreteTuple.deinit!deallocator.1: @$S27vtable_thunks_reabstraction13ConcreteTupleCfD // ConcreteTuple.__deallocating_deinit // CHECK-NEXT: } class OpaqueFunction: Opaque<(U) -> V> { @@ -360,7 +360,7 @@ class OpaqueFunction: Opaque<(U) -> V> { // CHECK-NEXT: #OpaqueFunction.variantOptionality!1: (OpaqueFunction) -> (((U) -> V)?) -> (U) -> V : @$S27vtable_thunks_reabstraction14OpaqueFunctionC18variantOptionality1xq_xcq_xcSg_tF // OpaqueFunction.variantOptionality(x:) -// CHECK-NEXT: #OpaqueFunction.deinit!deallocator: @$S27vtable_thunks_reabstraction14OpaqueFunctionCfD // OpaqueFunction.__deallocating_deinit +// CHECK-NEXT: #OpaqueFunction.deinit!deallocator.1: @$S27vtable_thunks_reabstraction14OpaqueFunctionCfD // OpaqueFunction.__deallocating_deinit // CHECK-NEXT: } class ConcreteFunction: Opaque<(S) -> S> { @@ -384,7 +384,7 @@ class ConcreteFunction: Opaque<(S) -> S> { // CHECK-NEXT: #ConcreteFunction.variantOptionality!1: (ConcreteFunction) -> (((S) -> S)?) -> (S) -> S : @$S27vtable_thunks_reabstraction16ConcreteFunctionC18variantOptionality1xAA1SVAGcA2GcSg_tF // ConcreteFunction.variantOptionality(x:) -// CHECK-NEXT: #ConcreteFunction.deinit!deallocator: @$S27vtable_thunks_reabstraction16ConcreteFunctionCfD // ConcreteFunction.__deallocating_deinit +// CHECK-NEXT: #ConcreteFunction.deinit!deallocator.1: @$S27vtable_thunks_reabstraction16ConcreteFunctionCfD // ConcreteFunction.__deallocating_deinit // CHECK-NEXT: } class OpaqueMetatype: Opaque { @@ -408,7 +408,7 @@ class OpaqueMetatype: Opaque { // CHECK-NEXT: #OpaqueMetatype.variantOptionality!1: (OpaqueMetatype) -> (U.Type?) -> U.Type : @$S27vtable_thunks_reabstraction14OpaqueMetatypeC18variantOptionality1xxmxmSg_tF // OpaqueMetatype.variantOptionality(x:) -// CHECK-NEXT: #OpaqueMetatype.deinit!deallocator: @$S27vtable_thunks_reabstraction14OpaqueMetatypeCfD // OpaqueMetatype.__deallocating_deinit +// CHECK-NEXT: #OpaqueMetatype.deinit!deallocator.1: @$S27vtable_thunks_reabstraction14OpaqueMetatypeCfD // OpaqueMetatype.__deallocating_deinit // CHECK-NEXT: } class ConcreteValueMetatype: Opaque { @@ -432,7 +432,7 @@ class ConcreteValueMetatype: Opaque { // CHECK-NEXT: #ConcreteValueMetatype.variantOptionality!1: (ConcreteValueMetatype) -> (S.Type?) -> S.Type : @$S27vtable_thunks_reabstraction21ConcreteValueMetatypeC18variantOptionality1xAA1SVmAGmSg_tF // ConcreteValueMetatype.variantOptionality(x:) -// CHECK-NEXT: #ConcreteValueMetatype.deinit!deallocator: @$S27vtable_thunks_reabstraction21ConcreteValueMetatypeCfD // ConcreteValueMetatype.__deallocating_deinit +// CHECK-NEXT: #ConcreteValueMetatype.deinit!deallocator.1: @$S27vtable_thunks_reabstraction21ConcreteValueMetatypeCfD // ConcreteValueMetatype.__deallocating_deinit // CHECK-NEXT: } class ConcreteClassMetatype: Opaque { @@ -454,7 +454,7 @@ class ConcreteClassMetatype: Opaque { // Class metatypes are ABI compatible with optional class metatypes. -// CHECK-NEXT: #ConcreteClassMetatype.deinit!deallocator: @$S27vtable_thunks_reabstraction21ConcreteClassMetatypeCfD // ConcreteClassMetatype.__deallocating_deinit +// CHECK-NEXT: #ConcreteClassMetatype.deinit!deallocator.1: @$S27vtable_thunks_reabstraction21ConcreteClassMetatypeCfD // ConcreteClassMetatype.__deallocating_deinit // CHECK-NEXT: } class ConcreteOptional: Opaque { @@ -475,7 +475,7 @@ class ConcreteOptional: Opaque { // CHECK-NEXT: #Opaque.variantOptionalityFunctions!1: (Opaque) -> (@escaping (T) -> T) -> ((T) -> T)? : @$S27vtable_thunks_reabstraction6OpaqueC27variantOptionalityFunctions1xxxcSgxxc_tF [inherited] // Opaque.variantOptionalityFunctions(x:) // CHECK-NEXT: #Opaque.variantOptionalityTuples!1: (Opaque) -> ((T, (T.Type, (T) -> T))) -> (T, (T.Type, (T) -> T))? : @$S27vtable_thunks_reabstraction6OpaqueC24variantOptionalityTuples1xx_xm_xxcttSgx_xm_xxctt_tF [inherited] // Opaque.variantOptionalityTuples(x:) // CHECK-NEXT: #Opaque.init!initializer.1: (Opaque.Type) -> () -> Opaque : @$S27vtable_thunks_reabstraction16ConcreteOptionalCACycfc [override] // ConcreteOptional.init() -// CHECK-NEXT: #ConcreteOptional.deinit!deallocator: @$S27vtable_thunks_reabstraction16ConcreteOptionalCfD // ConcreteOptional.__deallocating_deinit +// CHECK-NEXT: #ConcreteOptional.deinit!deallocator.1: @$S27vtable_thunks_reabstraction16ConcreteOptionalCfD // ConcreteOptional.__deallocating_deinit // CHECK-NEXT: } // Make sure we remap the method's innermost generic parameters @@ -488,7 +488,7 @@ class GenericBase { // CHECK-LABEL: sil_vtable GenericBase { // CHECK-NEXT: #GenericBase.doStuff!1: (GenericBase) -> (T, U) -> () : @$S27vtable_thunks_reabstraction11GenericBaseC7doStuff1t1uyx_qd__tlF // GenericBase.doStuff(t:u:) // CHECK-NEXT: #GenericBase.init!initializer.1: (GenericBase.Type) -> (T, U) -> GenericBase : @$S27vtable_thunks_reabstraction11GenericBaseC1t1uACyxGx_qd__tclufc // GenericBase.init(t:u:) -// CHECK-NEXT: #GenericBase.deinit!deallocator: @$S27vtable_thunks_reabstraction11GenericBaseCfD // GenericBase.__deallocating_deinit +// CHECK-NEXT: #GenericBase.deinit!deallocator.1: @$S27vtable_thunks_reabstraction11GenericBaseCfD // GenericBase.__deallocating_deinit // CHECK-NEXT: } class ConcreteSub : GenericBase { @@ -503,7 +503,7 @@ class ConcreteSub : GenericBase { // CHECK-LABEL: sil_vtable ConcreteSub { // CHECK-NEXT: #GenericBase.doStuff!1: (GenericBase) -> (T, U) -> () : hidden @$S27vtable_thunks_reabstraction11ConcreteSubC7doStuff1t1uySi_xtlFAA11GenericBaseCAdeFyx_qd__tlFTV [override] // vtable thunk for GenericBase.doStuff(t:u:) dispatching to ConcreteSub.doStuff(t:u:) // CHECK-NEXT: #GenericBase.init!initializer.1: (GenericBase.Type) -> (T, U) -> GenericBase : hidden @$S27vtable_thunks_reabstraction11ConcreteSubC1t1uACSi_xtclufcAA11GenericBaseCAdeGyxGx_qd__tclufcTV [override] // vtable thunk for GenericBase.init(t:u:) dispatching to ConcreteSub.init(t:u:) -// CHECK-NEXT: #ConcreteSub.deinit!deallocator: @$S27vtable_thunks_reabstraction11ConcreteSubCfD // ConcreteSub.__deallocating_deinit +// CHECK-NEXT: #ConcreteSub.deinit!deallocator.1: @$S27vtable_thunks_reabstraction11ConcreteSubCfD // ConcreteSub.__deallocating_deinit // CHECK-NEXT: } class ConcreteBase { @@ -514,7 +514,7 @@ class ConcreteBase { // CHECK-LABEL: sil_vtable ConcreteBase { // CHECK-NEXT: #ConcreteBase.init!initializer.1: (ConcreteBase.Type) -> (Int, U) -> ConcreteBase : @$S27vtable_thunks_reabstraction12ConcreteBaseC1t1uACSi_xtclufc // ConcreteBase.init(t:u:) // CHECK-NEXT: #ConcreteBase.doStuff!1: (ConcreteBase) -> (Int, U) -> () : @$S27vtable_thunks_reabstraction12ConcreteBaseC7doStuff1t1uySi_xtlF // ConcreteBase.doStuff(t:u:) -// CHECK-NEXT: #ConcreteBase.deinit!deallocator: @$S27vtable_thunks_reabstraction12ConcreteBaseCfD // ConcreteBase.__deallocating_deinit +// CHECK-NEXT: #ConcreteBase.deinit!deallocator.1: @$S27vtable_thunks_reabstraction12ConcreteBaseCfD // ConcreteBase.__deallocating_deinit // CHECK-NEXT: } class GenericSub : ConcreteBase { @@ -529,7 +529,7 @@ class GenericSub : ConcreteBase { // CHECK-LABEL: sil_vtable GenericSub { // CHECK-NEXT: #ConcreteBase.init!initializer.1: (ConcreteBase.Type) -> (Int, U) -> ConcreteBase : @$S27vtable_thunks_reabstraction10GenericSubC1t1uACyxGSi_qd__tclufc [override] // GenericSub.init(t:u:) // CHECK-NEXT: #ConcreteBase.doStuff!1: (ConcreteBase) -> (Int, U) -> () : @$S27vtable_thunks_reabstraction10GenericSubC7doStuff1t1uySi_qd__tlF [override] // GenericSub.doStuff(t:u:) -// CHECK-NEXT: #GenericSub.deinit!deallocator: @$S27vtable_thunks_reabstraction10GenericSubCfD // GenericSub.__deallocating_deinit +// CHECK-NEXT: #GenericSub.deinit!deallocator.1: @$S27vtable_thunks_reabstraction10GenericSubCfD // GenericSub.__deallocating_deinit // CHECK-NEXT: } // Issue with generic parameter index @@ -542,7 +542,7 @@ class MoreGenericSub1 : GenericBase { // CHECK-LABEL: sil_vtable MoreGenericSub1 { // CHECK-NEXT: #GenericBase.doStuff!1: (GenericBase) -> (T, U) -> () : @$S27vtable_thunks_reabstraction15MoreGenericSub1C7doStuff1t1uyx_qd__tlF [override] // MoreGenericSub1.doStuff(t:u:) // CHECK-NEXT: #GenericBase.init!initializer.1: (GenericBase.Type) -> (T, U) -> GenericBase : @$S27vtable_thunks_reabstraction15MoreGenericSub1C1t1uACyxq_Gx_qd__tclufc [override] // MoreGenericSub1.init(t:u:) -// CHECK-NEXT: #MoreGenericSub1.deinit!deallocator: @$S27vtable_thunks_reabstraction15MoreGenericSub1CfD // MoreGenericSub1.__deallocating_deinit +// CHECK-NEXT: #MoreGenericSub1.deinit!deallocator.1: @$S27vtable_thunks_reabstraction15MoreGenericSub1CfD // MoreGenericSub1.__deallocating_deinit // CHECK-NEXT: } class MoreGenericSub2 : GenericBase { @@ -554,5 +554,5 @@ class MoreGenericSub2 : GenericBase { // CHECK-LABEL: sil_vtable MoreGenericSub2 { // CHECK-NEXT: #GenericBase.doStuff!1: (GenericBase) -> (T, U) -> () : @$S27vtable_thunks_reabstraction15MoreGenericSub2C7doStuff1t1uyq__qd__tlF [override] // MoreGenericSub2.doStuff(t:u:) // CHECK-NEXT: #GenericBase.init!initializer.1: (GenericBase.Type) -> (T, U) -> GenericBase : @$S27vtable_thunks_reabstraction15MoreGenericSub2C1t1uACyxq_Gq__qd__tclufc [override] // MoreGenericSub2.init(t:u:) -// CHECK-NEXT: #MoreGenericSub2.deinit!deallocator: @$S27vtable_thunks_reabstraction15MoreGenericSub2CfD // MoreGenericSub2.__deallocating_deinit +// CHECK-NEXT: #MoreGenericSub2.deinit!deallocator.1: @$S27vtable_thunks_reabstraction15MoreGenericSub2CfD // MoreGenericSub2.__deallocating_deinit // CHECK-NEXT: } diff --git a/test/SILGen/vtables.swift b/test/SILGen/vtables.swift index 2aa4c1f278d..d5c978df200 100644 --- a/test/SILGen/vtables.swift +++ b/test/SILGen/vtables.swift @@ -69,7 +69,7 @@ class B : A { // CHECK: sil_vtable RequiredInitDerived { // CHECK-NEXT: #SimpleInitBase.init!initializer.1: {{.*}} : @$S7vtables19RequiredInitDerivedC{{[_0-9a-zA-Z]*}}fc // CHECK-NEXT: #RequiredInitDerived.init!allocator.1: {{.*}} : @$S7vtables19RequiredInitDerivedC -// CHECK-NEXT: #RequiredInitDerived.deinit!deallocator: @$S7vtables19RequiredInitDerivedCfD +// CHECK-NEXT: #RequiredInitDerived.deinit!deallocator.1: @$S7vtables19RequiredInitDerivedCfD // CHECK-NEXT: } class SimpleInitBase { } diff --git a/test/SILGen/vtables_objc.swift b/test/SILGen/vtables_objc.swift index 726b4d34dcf..8d631a04e99 100644 --- a/test/SILGen/vtables_objc.swift +++ b/test/SILGen/vtables_objc.swift @@ -59,13 +59,13 @@ func callWotsit(_ w: Wotsit) { // CHECK: sil_vtable Hoozit { // CHECK-NEXT: #Hoozit.anse!1: {{.*}} : @$S12vtables_objc6HoozitC4anse{{[_0-9a-zA-Z]*}}F // CHECK-NEXT: #Hoozit.incorrige!1: {{.*}} : @$S12vtables_objc6HoozitC9incorrige{{[_0-9a-zA-Z]*}}F -// CHECK-NEXT: #Hoozit.deinit!deallocator: @$S12vtables_objc6HoozitCfD +// CHECK-NEXT: #Hoozit.deinit!deallocator.1: @$S12vtables_objc6HoozitCfD // CHECK-NEXT: } // CHECK: sil_vtable Wotsit { // CHECK-NEXT: #Hoozit.anse!1: {{.*}} : @$S12vtables_objc6HoozitC4anse{{[_0-9a-zA-Z]*}}F // CHECK-NEXT: #Hoozit.incorrige!1: {{.*}} : @$S12vtables_objc6WotsitC9incorrige{{[_0-9a-zA-Z]*}}F -// CHECK-NEXT: #Wotsit.deinit!deallocator: @$S12vtables_objc6WotsitCfD +// CHECK-NEXT: #Wotsit.deinit!deallocator.1: @$S12vtables_objc6WotsitCfD // CHECK-NEXT: } // diff --git a/test/SILOptimizer/Inputs/TestMod.sil b/test/SILOptimizer/Inputs/TestMod.sil index baba2d741c1..bfb08b42a19 100644 --- a/test/SILOptimizer/Inputs/TestMod.sil +++ b/test/SILOptimizer/Inputs/TestMod.sil @@ -59,6 +59,6 @@ bb0(%0 : $*X, %1 : $*X): sil_vtable MyClass { #MyClass.init!initializer.1: @_TFC7TestMod7MyClasscfMS0_FT_S0_ // TestMod.MyClass.init (TestMod.MyClass.Type)() -> TestMod.MyClass #MyClass.mymethod!1: @_TFC7TestMod7MyClass8mymethodurfS0_Fq_q_ // TestMod.MyClass.mymethod (TestMod.MyClass)(A) -> A - #MyClass.deinit!deallocator: @_TFC7TestMod7MyClassD // TestMod.MyClass.__deallocating_deinit + #MyClass.deinit!deallocator.1: @_TFC7TestMod7MyClassD // TestMod.MyClass.__deallocating_deinit } diff --git a/test/SILOptimizer/assume_single_threaded.sil b/test/SILOptimizer/assume_single_threaded.sil index 1fc7e2f08d0..096e55c9ca0 100644 --- a/test/SILOptimizer/assume_single_threaded.sil +++ b/test/SILOptimizer/assume_single_threaded.sil @@ -46,6 +46,6 @@ bb0(%0 : $C): } sil_vtable C { - #C.deinit!deallocator: @_TFC28nonatomic_reference_counting1CD // C.__deallocating_deinit + #C.deinit!deallocator.1: @_TFC28nonatomic_reference_counting1CD // C.__deallocating_deinit } diff --git a/test/SILOptimizer/basic-callee-printer.sil b/test/SILOptimizer/basic-callee-printer.sil index 44ac6123a3e..598e9fcefca 100644 --- a/test/SILOptimizer/basic-callee-printer.sil +++ b/test/SILOptimizer/basic-callee-printer.sil @@ -666,13 +666,13 @@ sil @SomeChildItem_destructor : $@convention(method) (@owned SomeChildItem) -> ( sil_vtable SomeItem { #SomeItem.init!allocator.1: @SomeItem_allocator #SomeItem.init!initializer.1: @SomeItem_initializer - #SomeItem.deinit!deallocator: @SomeItem_destructor + #SomeItem.deinit!deallocator.1: @SomeItem_destructor } sil_vtable SomeChildItem { #SomeItem.init!allocator.1: @SomeChildItem_allocator #SomeItem.init!initializer.1: @SomeChildItem_initializer - #SomeChildItem.deinit!deallocator: @SomeChildItem_destructor + #SomeChildItem.deinit!deallocator.1: @SomeChildItem_destructor } public protocol PublicProtocol { diff --git a/test/SILOptimizer/closure_lifetime_fixup_objc.swift b/test/SILOptimizer/closure_lifetime_fixup_objc.swift index 69bb05018f4..0967c04960e 100644 --- a/test/SILOptimizer/closure_lifetime_fixup_objc.swift +++ b/test/SILOptimizer/closure_lifetime_fixup_objc.swift @@ -89,7 +89,7 @@ func getDispatchQueue() -> DispatchQueue // CHECK: [[F:%.*]] = function_ref @$S27closure_lifetime_fixup_objc1CCfdyyXEfU_ // CHECK: [[PA:%.*]] = partial_apply [callee_guaranteed] [[F]](%0) // CHECK: [[OPT:%.*]] = enum $Optional<@callee_guaranteed () -> ()>, #Optional.some!enumelt.1, [[PA]] -// CHECK: [[DEINIT:%.*]] = objc_super_method [[SELF]] : $C, #NSObject.deinit!deallocator.foreign +// CHECK: [[DEINIT:%.*]] = objc_super_method [[SELF]] : $C, #NSObject.deinit!deallocator.1.foreign // CHECK: release_value [[OPT]] : $Optional<@callee_guaranteed () -> ()> // CHECK: [[SUPER:%.*]] = upcast [[SELF]] : $C to $NSObject // user: %34 // CHECK-NEXT: apply [[DEINIT]]([[SUPER]]) : $@convention(objc_method) (NSObject) -> () diff --git a/test/SILOptimizer/constant_propagation_castopt_analysis_invalidation.sil b/test/SILOptimizer/constant_propagation_castopt_analysis_invalidation.sil index 4db50359ec3..076811a153a 100644 --- a/test/SILOptimizer/constant_propagation_castopt_analysis_invalidation.sil +++ b/test/SILOptimizer/constant_propagation_castopt_analysis_invalidation.sil @@ -226,12 +226,12 @@ bb0: sil_vtable Foo { #Foo.speak!1: @_TFC4mainP33_9ACC0692747077F216D14C36CD9276713Foo5speakfS0_FT_T_ // main.(Foo in _9ACC0692747077F216D14C36CD927671).speak (main.(Foo in _9ACC0692747077F216D14C36CD927671))() -> () - #Foo.deinit!deallocator: @_TFC4mainP33_9ACC0692747077F216D14C36CD9276713FooD // main.(Foo in _9ACC0692747077F216D14C36CD927671).__deallocating_deinit + #Foo.deinit!deallocator.1: @_TFC4mainP33_9ACC0692747077F216D14C36CD9276713FooD // main.(Foo in _9ACC0692747077F216D14C36CD927671).__deallocating_deinit #Foo.init!initializer.1: @_TFC4mainP33_9ACC0692747077F216D14C36CD9276713FoocfMS0_FT_S0_ // main.(Foo in _9ACC0692747077F216D14C36CD927671).init (main.(Foo in _9ACC0692747077F216D14C36CD927671).Type)() -> main.(Foo in _9ACC0692747077F216D14C36CD927671) } sil_vtable Foo2 { #Foo.speak!1: @_TFC4mainP33_9ACC0692747077F216D14C36CD9276714Foo25speakfS0_FT_T_ // main.(Foo2 in _9ACC0692747077F216D14C36CD927671).speak (main.(Foo2 in _9ACC0692747077F216D14C36CD927671))() -> () #Foo.init!initializer.1: @_TFC4mainP33_9ACC0692747077F216D14C36CD9276714Foo2cfMS0_FT_S0_ // main.(Foo2 in _9ACC0692747077F216D14C36CD927671).init (main.(Foo2 in _9ACC0692747077F216D14C36CD927671).Type)() -> main.(Foo2 in _9ACC0692747077F216D14C36CD927671) - #Foo2.deinit!deallocator: @_TFC4mainP33_9ACC0692747077F216D14C36CD9276714Foo2D // main.(Foo2 in _9ACC0692747077F216D14C36CD927671).__deallocating_deinit + #Foo2.deinit!deallocator.1: @_TFC4mainP33_9ACC0692747077F216D14C36CD9276714Foo2D // main.(Foo2 in _9ACC0692747077F216D14C36CD927671).__deallocating_deinit } diff --git a/test/SILOptimizer/cse.sil b/test/SILOptimizer/cse.sil index 5dc623751e1..ab5d141c145 100644 --- a/test/SILOptimizer/cse.sil +++ b/test/SILOptimizer/cse.sil @@ -948,7 +948,7 @@ bb0(%0 : $Ping): sil_vtable Ping { #Ping.ping!1: @_TFC4main4Ping4pingfS0_FT_S0_ // main.Ping.ping (main.Ping)() -> main.Ping - #Ping.deinit!deallocator: @_TFC4main4PingD // main.Ping.__deallocating_deinit + #Ping.deinit!deallocator.1: @_TFC4main4PingD // main.Ping.__deallocating_deinit #Ping.init!initializer.1: @_TFC4main4PingcfMS0_FT_S0_ // main.Ping.init (main.Ping.Type)() -> main.Ping } @@ -1040,7 +1040,7 @@ bb0(%0 : $*T, %1 : $Int): sil_vtable T { #T.reach!1: @_TFC1p1T5reachfS0_FT_T_ // p.T.reach (p.T)() -> () - #T.deinit!deallocator: @_TFC1p1TD // p.T.__deallocating_deinit + #T.deinit!deallocator.1: @_TFC1p1TD // p.T.__deallocating_deinit #T.init!initializer.1: @_TFC1p1TcfMS0_FT_S0_ // p.T.init (p.T.Type)() -> p.T } diff --git a/test/SILOptimizer/cse_objc.sil b/test/SILOptimizer/cse_objc.sil index 6e7a34177c2..24e30da6f54 100644 --- a/test/SILOptimizer/cse_objc.sil +++ b/test/SILOptimizer/cse_objc.sil @@ -89,7 +89,7 @@ bb0(%0 : $Bar): sil hidden @_TFC4test3BarD : $@convention(method) (@owned Bar) -> () { bb0(%0 : $Bar): debug_value %0 : $Bar, let, name "self" // id: %1 - %2 = objc_super_method %0 : $Bar, #NSObject.deinit!deallocator.foreign : (NSObject) -> () -> (), $@convention(objc_method) (NSObject) -> () // user: %4 + %2 = objc_super_method %0 : $Bar, #NSObject.deinit!deallocator.1.foreign : (NSObject) -> () -> (), $@convention(objc_method) (NSObject) -> () // user: %4 %3 = upcast %0 : $Bar to $NSObject // user: %4 %4 = apply %2(%3) : $@convention(objc_method) (NSObject) -> () %5 = tuple () // user: %6 @@ -269,5 +269,5 @@ bb0(%0 : $@objc_metatype XXX.Type): sil_vtable Bar { #Bar.init!initializer.1: @_TFC4test3BarcfMS0_FT_S0_ // test.Bar.init (test.Bar.Type)() -> test.Bar #Bar.walk!1: @_TFC4test3Bar4walkfS0_FT_T_ // test.Bar.walk (test.Bar)() -> () - #Bar.deinit!deallocator: @_TFC4test3BarD // test.Bar.__deallocating_deinit + #Bar.deinit!deallocator.1: @_TFC4test3BarD // test.Bar.__deallocating_deinit } diff --git a/test/SILOptimizer/devirt_release.sil b/test/SILOptimizer/devirt_release.sil index 25cb670b10e..7e637884097 100644 --- a/test/SILOptimizer/devirt_release.sil +++ b/test/SILOptimizer/devirt_release.sil @@ -128,7 +128,7 @@ bb0(%0 : $B): } sil_vtable B { - #B.deinit!deallocator: @$S4test1BCfD // test.B.__deallocating_deinit + #B.deinit!deallocator.1: @$S4test1BCfD // test.B.__deallocating_deinit #B.init!initializer.1: @$S4test1BCACycfc // test.B.init () -> test.B } diff --git a/test/SILOptimizer/devirt_try_apply.sil b/test/SILOptimizer/devirt_try_apply.sil index 06c73911930..08ec9e3d63c 100644 --- a/test/SILOptimizer/devirt_try_apply.sil +++ b/test/SILOptimizer/devirt_try_apply.sil @@ -856,7 +856,7 @@ sil_vtable Base { #Base.foo!1: @_TFC16devirt_try_apply4Base3foofS0_FzT_GSqVs5Int32_ #Base.boo1!1: @_TFC16devirt_try_apply4Base4boo1fS0_FzT_S0_ #Base.boo2!1: @_TFC16devirt_try_apply4Base4boo2fS0_FzT_GSqS0__ - #Base.deinit!deallocator: @_TFC16devirt_try_apply4BaseD + #Base.deinit!deallocator.1: @_TFC16devirt_try_apply4BaseD #Base.init!initializer.1: @_TFC16devirt_try_apply4BasecfMS0_FT_S0_ } @@ -865,7 +865,7 @@ sil_vtable Derived1 { #Base.boo1!1: @_TFC16devirt_try_apply8Derived14boo1fS0_FzT_S0_ #Base.boo2!1: @_TFC16devirt_try_apply8Derived14boo2fS0_FzT_GSqS0__ #Base.init!initializer.1: @_TFC16devirt_try_apply8Derived1cfMS0_FT_S0_ - #Derived1.deinit!deallocator: @_TFC16devirt_try_apply8Derived1D + #Derived1.deinit!deallocator.1: @_TFC16devirt_try_apply8Derived1D } sil_vtable Derived2 { @@ -873,19 +873,19 @@ sil_vtable Derived2 { #Base.boo1!1: @_TFC16devirt_try_apply8Derived24boo1fS0_FzT_S0_ #Base.boo2!1: @_TFC16devirt_try_apply8Derived24boo2fS0_FzT_S0_ #Base.init!initializer.1: @_TFC16devirt_try_apply8Derived2cfMS0_FT_S0_ - #Derived2.deinit!deallocator: @_TFC16devirt_try_apply8Derived2D + #Derived2.deinit!deallocator.1: @_TFC16devirt_try_apply8Derived2D } sil_vtable CP1 { #CP1.foo!1: @_TFC16devirt_try_apply3CP13foofS0_FzT_Vs5Int32 - #CP1.deinit!deallocator: @_TFC16devirt_try_apply3CP1D + #CP1.deinit!deallocator.1: @_TFC16devirt_try_apply3CP1D #CP1.init!initializer.1: @_TFC16devirt_try_apply3CP1cfMS0_FT_S0_ } sil_vtable CP2 { #CP1.foo!1: @_TFC16devirt_try_apply3CP23foofS0_FzT_Vs5Int32 #CP1.init!initializer.1: @_TFC16devirt_try_apply3CP2cfMS0_FT_S0_ - #CP2.deinit!deallocator: @_TFC16devirt_try_apply3CP2D + #CP2.deinit!deallocator.1: @_TFC16devirt_try_apply3CP2D } sil_witness_table CP1: P module devirt_try_apply { diff --git a/test/SILOptimizer/eager_specialize.sil b/test/SILOptimizer/eager_specialize.sil index e9cebc6ccfb..941b783ba14 100644 --- a/test/SILOptimizer/eager_specialize.sil +++ b/test/SILOptimizer/eager_specialize.sil @@ -853,7 +853,7 @@ bb0(%0 : $*T): sil_vtable ClassUsingThrowingP { #ClassUsingThrowingP.init!allocator.1: (ClassUsingThrowingP.Type) -> () -> ClassUsingThrowingP : @$S34eager_specialize_throwing_function19ClassUsingThrowingPCACycfC // ClassUsingThrowingP.__allocating_init() #ClassUsingThrowingP.init!initializer.1: (ClassUsingThrowingP.Type) -> () -> ClassUsingThrowingP : @$S34eager_specialize_throwing_function19ClassUsingThrowingPCACycfc // ClassUsingThrowingP.init() - #ClassUsingThrowingP.deinit!deallocator: @$S34eager_specialize_throwing_function19ClassUsingThrowingPCfD // ClassUsingThrowingP.__deallocating_deinit + #ClassUsingThrowingP.deinit!deallocator.1: @$S34eager_specialize_throwing_function19ClassUsingThrowingPCfD // ClassUsingThrowingP.__deallocating_deinit } sil_witness_table hidden Int64: ThrowingP module eager_specialize_throwing_function { diff --git a/test/SILOptimizer/escape_analysis.sil b/test/SILOptimizer/escape_analysis.sil index 4473d5ab5b4..15adf8a4102 100644 --- a/test/SILOptimizer/escape_analysis.sil +++ b/test/SILOptimizer/escape_analysis.sil @@ -1471,11 +1471,11 @@ bb0(%0 : $Z): } sil_vtable X { - #X.deinit!deallocator: @$S4main1XCfD + #X.deinit!deallocator.1: @$S4main1XCfD } sil_vtable Z { - #Z.deinit!deallocator: @$S4main1ZCfD + #Z.deinit!deallocator.1: @$S4main1ZCfD } diff --git a/test/SILOptimizer/inlinecaches_invalidate_failure.sil b/test/SILOptimizer/inlinecaches_invalidate_failure.sil index 5c9e1c251bd..ec3c153e4f4 100644 --- a/test/SILOptimizer/inlinecaches_invalidate_failure.sil +++ b/test/SILOptimizer/inlinecaches_invalidate_failure.sil @@ -104,5 +104,5 @@ bb0(%0 : $Foo): sil_vtable Foo2 { #Foo.doSomething!1: @_TFC4test4Foo211doSomethingfS0_FT_CS_3Foo // test.Foo2.doSomething (test.Foo2)() -> test.Foo #Foo.init!initializer.1: @_TFC4test4Foo2cfMS0_FT_S0_ // test.Foo2.init (test.Foo2.Type)() -> test.Foo2 - #Foo2.deinit!deallocator: @_TFC4test4Foo2D // test.Foo2.__deallocating_deinit + #Foo2.deinit!deallocator.1: @_TFC4test4Foo2D // test.Foo2.__deallocating_deinit } diff --git a/test/SILOptimizer/optimize_never.sil b/test/SILOptimizer/optimize_never.sil index 14d1ed87863..c95556f4625 100644 --- a/test/SILOptimizer/optimize_never.sil +++ b/test/SILOptimizer/optimize_never.sil @@ -469,14 +469,14 @@ bb0(%0 : $Base): sil_vtable C { #C.foo!1: @$S14optimize_never1CC3foos5Int32VyF - #C.deinit!deallocator: @$S14optimize_never1CCfD + #C.deinit!deallocator.1: @$S14optimize_never1CCfD #C.init!initializer.1: @$S14optimize_never1CCACycfc } sil_vtable D { #C.foo!1: @$S14optimize_never1DC3foos5Int32VyF #C.init!initializer.1: @$S14optimize_never1DCACycfc - #D.deinit!deallocator: @$S14optimize_never1DCfD + #D.deinit!deallocator.1: @$S14optimize_never1DCfD } sil_vtable Base { diff --git a/test/sil-nm/basic.sil b/test/sil-nm/basic.sil index d65325c27e3..c4c3ae0b0f9 100644 --- a/test/sil-nm/basic.sil +++ b/test/sil-nm/basic.sil @@ -60,7 +60,7 @@ sil_witness_table [serialized] ConformingGenericStruct : ResilientProtoco // vtables cannot be serialized from SIL. // SIL-NM: V C sil_vtable [serialized] C { - #C.deinit!deallocator: @c_deinit + #C.deinit!deallocator.1: @c_deinit }