You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[InstCombine] Combine ptrauth intrin. callee into diff. key bundle.
Try to optimize a call to the result of a ptrauth intrinsic, potentially
into the ptrauth call bundle:
- call(ptrauth.resign(p)), ["ptrauth"()] -> call p, ["ptrauth"()]
- call(ptrauth.sign(p)), ["ptrauth"()] -> call p
- call(ptrauth.auth(p)) -> call p, ["ptrauth"()]
as long as the key/discriminator are the same in sign and auth-bundle.
This relaxes the existing combine in one major way: it can generate calls
with ptrauth bundles with a different key from the existing call.
Without knowledge of the target keys, this may be unsound.
That also allows folding ptrauth.auth into the call bundle: we can't
generally do that if we don't know whether the auth key is valid for
calls.
0 commit comments