Merge pull request #36843 from nate-chandler/ptrauth-fixup-paf-callee-authinfo

[ptrauth] Adapted authinfo for async PAF callees.
This commit is contained in:
nate-chandler
2021-04-12 08:13:05 -07:00
committed by GitHub

View File

@@ -1169,9 +1169,14 @@ public:
return fnPtr;
}
llvm::CallInst *createCall(FunctionPointer &fnPtr) override {
PointerAuthInfo newAuthInfo;
if (auto authInfo = fnPtr.getAuthInfo()) {
newAuthInfo = PointerAuthInfo(authInfo.getCorrespondingCodeKey(),
authInfo.getDiscriminator());
}
auto newFnPtr = FunctionPointer(
FunctionPointer::Kind::Function, fnPtr.getPointer(subIGF),
fnPtr.getAuthInfo(), Signature::forAsyncAwait(subIGF.IGM, origType));
FunctionPointer::Kind::Function, fnPtr.getPointer(subIGF), newAuthInfo,
Signature::forAsyncAwait(subIGF.IGM, origType));
auto &Builder = subIGF.Builder;
auto argValues = args.claimAll();