Merge remote-tracking branch 'origin/main' into next

This commit is contained in:
swift_jenkins
2021-05-21 03:41:35 -07:00
120 changed files with 123 additions and 4037 deletions

View File

@@ -355,29 +355,6 @@ void irgen::emitBuiltinCall(IRGenFunction &IGF, const BuiltinInfo &Builtin,
return;
}
if (Builtin.ID == BuiltinValueKind::InitializeDistributedRemoteActor) {
auto fn = IGF.IGM.getDistributedActorInitializeRemoteFn();
auto actor = args.claimNext();
actor = IGF.Builder.CreateBitCast(actor, IGF.IGM.RefCountedPtrTy);
// init(resolve address, using transport)
auto call = IGF.Builder.CreateCall(fn, {
actor
// TODO: might have to carry `address, transport` depending on how we implement the resolve initializers
});
call->setCallingConv(IGF.IGM.SwiftCC);
return;
}
if (Builtin.ID == BuiltinValueKind::DestroyDistributedActor) {
auto fn = IGF.IGM.getDistributedActorDestroyFn();
auto actor = args.claimNext();
actor = IGF.Builder.CreateBitCast(actor, IGF.IGM.RefCountedPtrTy);
auto call = IGF.Builder.CreateCall(fn, {actor});
call->setCallingConv(IGF.IGM.SwiftCC);
call->setDoesNotThrow();
return;
}
// If this is an LLVM IR intrinsic, lower it to an intrinsic call.
const IntrinsicInfo &IInfo = IGF.getSILModule().getIntrinsicInfo(FnId);
llvm::Intrinsic::ID IID = IInfo.ID;