@@ -38,8 +38,8 @@ static SILValue emitConstructorMetatypeArg(SILGenFunction &gen,
3838 AC.getIdentifier (" $metatype" ), SourceLoc (),
3939 AC.getIdentifier (" $metatype" ), metatype,
4040 ctor->getDeclContext ());
41- gen.AllocatorMetatype = new (gen. F . getModule ()) SILArgument (gen. F . begin (),
42- gen.getLoweredType (metatype), VD);
41+ gen.AllocatorMetatype =
42+ gen. F . begin ()-> createArgument ( gen.getLoweredType (metatype), VD);
4343 return gen.AllocatorMetatype ;
4444}
4545
@@ -60,9 +60,7 @@ static RValue emitImplicitValueConstructorArg(SILGenFunction &gen,
6060 AC.getIdentifier (" $implicit_value" ),
6161 SourceLoc (),
6262 AC.getIdentifier (" $implicit_value" ), ty, DC);
63- SILValue arg = new (gen.F .getModule ()) SILArgument (gen.F .begin (),
64- gen.getLoweredType (ty),
65- VD);
63+ SILValue arg = gen.F .begin ()->createArgument (gen.getLoweredType (ty), VD);
6664 return RValue (gen, loc, ty, gen.emitManagedRValueWithCleanup (arg));
6765 }
6866}
@@ -85,7 +83,7 @@ static void emitImplicitValueConstructor(SILGenFunction &gen,
8583 SourceLoc (),
8684 AC.getIdentifier (" $return_value" ), selfTyCan,
8785 ctor);
88- resultSlot = new ( gen.F .getModule ()) SILArgument (gen. F . begin (), selfTy, VD);
86+ resultSlot = gen.F .begin ()-> createArgument ( selfTy, VD);
8987 }
9088
9189 // Emit the elementwise arguments.
@@ -237,8 +235,8 @@ void SILGenFunction::emitValueConstructor(ConstructorDecl *ctor) {
237235 B.createReturn (ctor, emitEmptyTuple (ctor));
238236 } else {
239237 // Pass 'nil' as the return value to the exit BB.
240- failureExitArg = new (F. getModule ())
241- SILArgument (failureExitBB, resultLowering.getLoweredType ());
238+ failureExitArg =
239+ failureExitBB-> createArgument ( resultLowering.getLoweredType ());
242240 SILValue nilResult =
243241 B.createEnum (ctor, {}, getASTContext ().getOptionalNoneDecl (),
244242 resultLowering.getLoweredType ());
@@ -365,9 +363,7 @@ void SILGenFunction::emitEnumConstructor(EnumElementDecl *element) {
365363 AC.getIdentifier (" $return_value" ),
366364 CanInOutType::get (enumTy),
367365 element->getDeclContext ());
368- auto resultSlot = new (SGM.M ) SILArgument (F.begin (),
369- enumTI.getLoweredType (),
370- VD);
366+ auto resultSlot = F.begin ()->createArgument (enumTI.getLoweredType (), VD);
371367 dest = std::unique_ptr<Initialization>(
372368 new KnownAddressInitialization (resultSlot));
373369 }
@@ -563,7 +559,7 @@ void SILGenFunction::emitClassConstructorInitializer(ConstructorDecl *ctor) {
563559 TupleType::getEmpty (F.getASTContext ()), ctor, ctor->hasThrows ());
564560
565561 SILType selfTy = getLoweredLoadableType (selfDecl->getType ());
566- SILValue selfArg = new (SGM. M ) SILArgument ( F.begin (), selfTy, selfDecl);
562+ SILValue selfArg = F.begin ()-> createArgument ( selfTy, selfDecl);
567563
568564 if (!NeedsBoxForSelf) {
569565 SILLocation PrologueLoc (selfDecl);
@@ -612,8 +608,8 @@ void SILGenFunction::emitClassConstructorInitializer(ConstructorDecl *ctor) {
612608 SavedInsertionPoint savedIP (*this , failureBB, FunctionSection::Postmatter);
613609
614610 failureExitBB = createBasicBlock ();
615- failureExitArg = new (F. getModule ())
616- SILArgument (failureExitBB, resultLowering.getLoweredType ());
611+ failureExitArg =
612+ failureExitBB-> createArgument ( resultLowering.getLoweredType ());
617613
618614 Cleanups.emitCleanupsForReturn (ctor);
619615 SILValue nilResult = B.createEnum (loc, {},
@@ -942,7 +938,7 @@ void SILGenFunction::emitIVarInitializer(SILDeclRef ivarInitializer) {
942938 // Emit 'self', then mark it uninitialized.
943939 auto selfDecl = cd->getDestructor ()->getImplicitSelfDecl ();
944940 SILType selfTy = getLoweredLoadableType (selfDecl->getType ());
945- SILValue selfArg = new (SGM. M ) SILArgument ( F.begin (), selfTy, selfDecl);
941+ SILValue selfArg = F.begin ()-> createArgument ( selfTy, selfDecl);
946942 SILLocation PrologueLoc (selfDecl);
947943 PrologueLoc.markAsPrologue ();
948944 B.createDebugValue (PrologueLoc, selfArg);
0 commit comments