Merge pull request #13844 from DougGregor/runtime-protocol-name-lookup

This commit is contained in:
swift-ci
2018-01-09 23:06:09 -08:00
committed by GitHub
18 changed files with 353 additions and 11 deletions

View File

@@ -147,6 +147,7 @@ IRGenModule::IRGenModule(IRGenerator &irgen,
Int8Ty = llvm::Type::getInt8Ty(getLLVMContext());
Int16Ty = llvm::Type::getInt16Ty(getLLVMContext());
Int32Ty = llvm::Type::getInt32Ty(getLLVMContext());
Int32PtrTy = Int32Ty->getPointerTo();
Int64Ty = llvm::Type::getInt64Ty(getLLVMContext());
Int8PtrTy = llvm::Type::getInt8PtrTy(getLLVMContext());
Int8PtrPtrTy = Int8PtrTy->getPointerTo(0);
@@ -281,6 +282,12 @@ IRGenModule::IRGenModule(IRGenerator &irgen,
OpaqueTy = llvm::StructType::create(LLVMContext, "swift.opaque");
OpaquePtrTy = OpaqueTy->getPointerTo(DefaultAS);
ProtocolRecordTy =
createStructType(*this, "swift.protocolref", {
RelativeAddressTy
});
ProtocolRecordPtrTy = ProtocolRecordTy->getPointerTo();
ProtocolConformanceRecordTy
= createStructType(*this, "swift.protocol_conformance", {
RelativeAddressTy,