Skip to content

Commit 42aab74

Browse files
committed
SIL: Remove swift3ImplicitObjCEntrypoint built-in.
With the removal of `-enable-swift3-objc-inference`, no calls to the `swift3ImplicitObjCEntrypoint` built-in should be generated anymore.
1 parent e5c6bb6 commit 42aab74

9 files changed

+0
-70
lines changed

include/swift/AST/Builtins.def

-3
Original file line numberDiff line numberDiff line change
@@ -764,9 +764,6 @@ BUILTIN_MISC_OPERATION(COWBufferForReading, "COWBufferForReading", "n", Special)
764764
// getObjCTypeEncoding has type <T> T.Type -> RawPointer
765765
BUILTIN_MISC_OPERATION(GetObjCTypeEncoding, "getObjCTypeEncoding", "n", Special)
766766

767-
// Swift3ImplicitObjCEntrypoint has type () -> ()
768-
BUILTIN_MISC_OPERATION(Swift3ImplicitObjCEntrypoint, "swift3ImplicitObjCEntrypoint", "", Special)
769-
770767
/// willThrow: Error -> ()
771768
BUILTIN_MISC_OPERATION(WillThrow, "willThrow", "", Special)
772769

lib/AST/Builtins.cpp

-5
Original file line numberDiff line numberDiff line change
@@ -2983,11 +2983,6 @@ ValueDecl *swift::getBuiltinValueDecl(ASTContext &Context, Identifier Id) {
29832983
case BuiltinValueKind::TSanInoutAccess:
29842984
return getTSanInoutAccess(Context, Id);
29852985

2986-
case BuiltinValueKind::Swift3ImplicitObjCEntrypoint:
2987-
return getBuiltinFunction(Id,
2988-
{},
2989-
TupleType::getEmpty(Context));
2990-
29912986
case BuiltinValueKind::TypePtrAuthDiscriminator:
29922987
return getTypePtrAuthDiscriminator(Context, Id);
29932988

lib/IRGen/GenBuiltin.cpp

-40
Original file line numberDiff line numberDiff line change
@@ -1399,46 +1399,6 @@ void irgen::emitBuiltinCall(IRGenFunction &IGF, const BuiltinInfo &Builtin,
13991399
out.add(result);
14001400
return;
14011401
}
1402-
1403-
if (Builtin.ID == BuiltinValueKind::Swift3ImplicitObjCEntrypoint) {
1404-
llvm::Value *entrypointArgs[7];
1405-
auto argIter = IGF.CurFn->arg_begin();
1406-
1407-
// self
1408-
entrypointArgs[0] = &*argIter++;
1409-
if (entrypointArgs[0]->getType() != IGF.IGM.ObjCPtrTy)
1410-
entrypointArgs[0] = IGF.Builder.CreateBitCast(entrypointArgs[0], IGF.IGM.ObjCPtrTy);
1411-
1412-
// _cmd
1413-
entrypointArgs[1] = &*argIter;
1414-
if (entrypointArgs[1]->getType() != IGF.IGM.ObjCSELTy)
1415-
entrypointArgs[1] = IGF.Builder.CreateBitCast(entrypointArgs[1], IGF.IGM.ObjCSELTy);
1416-
1417-
// Filename pointer
1418-
entrypointArgs[2] = args.claimNext();
1419-
// Filename length
1420-
entrypointArgs[3] = args.claimNext();
1421-
// Line
1422-
entrypointArgs[4] = args.claimNext();
1423-
// Column
1424-
entrypointArgs[5] = args.claimNext();
1425-
1426-
// Create a flag variable so that this invocation logs only once.
1427-
auto flagStorageTy = llvm::ArrayType::get(IGF.IGM.Int8Ty,
1428-
IGF.IGM.getAtomicBoolSize().getValue());
1429-
auto flag = new llvm::GlobalVariable(IGF.IGM.Module, flagStorageTy,
1430-
/*constant*/ false,
1431-
llvm::GlobalValue::PrivateLinkage,
1432-
llvm::ConstantAggregateZero::get(flagStorageTy));
1433-
flag->setAlignment(
1434-
llvm::MaybeAlign(IGF.IGM.getAtomicBoolAlignment().getValue()));
1435-
entrypointArgs[6] = llvm::ConstantExpr::getBitCast(flag, IGF.IGM.Int8PtrTy);
1436-
1437-
IGF.Builder.CreateCall(
1438-
IGF.IGM.getSwift3ImplicitObjCEntrypointFunctionPointer(),
1439-
entrypointArgs);
1440-
return;
1441-
}
14421402

14431403
if (Builtin.ID == BuiltinValueKind::TypePtrAuthDiscriminator) {
14441404
(void)args.claimAll();

lib/SIL/IR/OperandOwnership.cpp

-1
Original file line numberDiff line numberDiff line change
@@ -874,7 +874,6 @@ BUILTIN_OPERAND_OWNERSHIP(InstantaneousUse, GenericXor)
874874
BUILTIN_OPERAND_OWNERSHIP(InstantaneousUse, ZExt)
875875
BUILTIN_OPERAND_OWNERSHIP(InstantaneousUse, ZExtOrBitCast)
876876
BUILTIN_OPERAND_OWNERSHIP(InstantaneousUse, ZeroInitializer)
877-
BUILTIN_OPERAND_OWNERSHIP(InstantaneousUse, Swift3ImplicitObjCEntrypoint)
878877
BUILTIN_OPERAND_OWNERSHIP(InstantaneousUse, PoundAssert)
879878
BUILTIN_OPERAND_OWNERSHIP(InstantaneousUse, GlobalStringTablePointer)
880879
BUILTIN_OPERAND_OWNERSHIP(InstantaneousUse, TypePtrAuthDiscriminator)

lib/SIL/IR/ValueOwnership.cpp

-1
Original file line numberDiff line numberDiff line change
@@ -581,7 +581,6 @@ CONSTANT_OWNERSHIP_BUILTIN(None, AtomicStore)
581581
CONSTANT_OWNERSHIP_BUILTIN(None, Once)
582582
CONSTANT_OWNERSHIP_BUILTIN(None, OnceWithContext)
583583
CONSTANT_OWNERSHIP_BUILTIN(None, TSanInoutAccess)
584-
CONSTANT_OWNERSHIP_BUILTIN(None, Swift3ImplicitObjCEntrypoint)
585584
CONSTANT_OWNERSHIP_BUILTIN(None, PoundAssert)
586585
CONSTANT_OWNERSHIP_BUILTIN(None, TypePtrAuthDiscriminator)
587586
CONSTANT_OWNERSHIP_BUILTIN(None, TargetOSVersionAtLeast)

lib/SIL/Utils/InstructionUtils.cpp

-2
Original file line numberDiff line numberDiff line change
@@ -1008,8 +1008,6 @@ RuntimeEffect swift::getRuntimeEffect(SILInstruction *inst, SILType &impactType)
10081008
case BuiltinValueKind::AssignCopyArrayBackToFront:
10091009
case BuiltinValueKind::AssignTakeArray:
10101010
return RuntimeEffect::RefCounting | RuntimeEffect::Deallocating;
1011-
case BuiltinValueKind::Swift3ImplicitObjCEntrypoint:
1012-
return RuntimeEffect::ObjectiveC | RuntimeEffect::Allocating;
10131011
case BuiltinValueKind::BuildOrdinaryTaskExecutorRef:
10141012
case BuiltinValueKind::BuildOrdinarySerialExecutorRef:
10151013
case BuiltinValueKind::BuildComplexEqualitySerialExecutorRef:

lib/SIL/Utils/MemAccessUtils.cpp

-1
Original file line numberDiff line numberDiff line change
@@ -2623,7 +2623,6 @@ static void visitBuiltinAddress(BuiltinInst *builtin,
26232623
case BuiltinValueKind::Unreachable:
26242624
case BuiltinValueKind::CondUnreachable:
26252625
case BuiltinValueKind::DestroyArray:
2626-
case BuiltinValueKind::Swift3ImplicitObjCEntrypoint:
26272626
case BuiltinValueKind::PoundAssert:
26282627
case BuiltinValueKind::TSanInoutAccess:
26292628
case BuiltinValueKind::CancelAsyncTask:

lib/SILOptimizer/Transforms/AccessEnforcementReleaseSinking.cpp

-1
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,6 @@ static bool isBarrier(SILInstruction *inst) {
136136
case BuiltinValueKind::Once:
137137
case BuiltinValueKind::OnceWithContext:
138138
case BuiltinValueKind::GetObjCTypeEncoding:
139-
case BuiltinValueKind::Swift3ImplicitObjCEntrypoint:
140139
case BuiltinValueKind::WillThrow:
141140
case BuiltinValueKind::CondFailMessage:
142141
case BuiltinValueKind::PoundAssert:

test/IRGen/objc_deprecated_objc_thunks.swift

-16
This file was deleted.

0 commit comments

Comments
 (0)