tree df73765bfae37808db79f30846151405bb177f1e
parent 1cbddcebb9a9f97ed04f35a859e31d55f6b9b824
author Akira Hatanaka <ahatanak@gmail.com> 1720714160 -0700
committer GitHub <noreply@github.com> 1720714160 -0700
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJmkAOwCRC1aQ7uu5UhlAAA3ukQABtWP+oIAEFZDfA1TSYT+7AN
 M316roWKv50eEGJ3l6pr30CcDBTdH2OywMgSlDczz75WK/XZ6yfVoJktiud06K4+
 cipgTGiXavReNZJJFDunrze4oV8WEbt/9fFWZ0gDqUZ6Tum903zUb/yefV2fq1Ml
 FKzLt8pkRy82CTermhTDz+WIIrjVnmSCvzMxqeDQQ375Y7hggTpeU3avQ1Awr0p4
 oSI8JV4DoEJwMCJMU3WhcNT4hPS5G+szh3Dev+C/D2uxcgzyHIKFGn/eeYLIN1fF
 31qfIWeu16srxpet+VdY7mfUKvOnlHAQHXYHPyUuNWTkZKSyaqlu+ZmutirVxpQL
 NIZg+5SeVGp22Cw3ySsX9bmf06lqgZKCCZCMy5NY1QbfwA0agxgnvztigyKiPC1w
 8nTUyqVcUkZ8jy2T/5FNI+jchgNTuOOxiSoiAHoeb17wCx0DKWmmHz+A2nodQJeq
 F+BSuLq9/0fnh66D+d/xYrl+g4w+6Tv5jMTYyG46xrII37rZ4OKO/iaVzA67zfWT
 +sBmhoEZeBhaVA5SC4JTeDJ0O0YF0xFujTywKrZw8ENGmm21zogZBiPE6GXz8uM8
 9IHhx73/SAe8bfF39uMvUuDYtV8stvwolxtlzwe9wjxlYvIQFlQuK8OUnMI4NZTc
 DFZCdLMcfykGqA/yuhJm
 =CM5r
 -----END PGP SIGNATURE-----
 

[PAC] Implement function pointer type discrimination (#96992)

Give users an option (-fptrauth-function-pointer-type-discrimination) to
sign a function pointer using a non-zero discriminator based on the
function type.

The discriminator is computed by first translating the function type to
a string and then computing the hash value of the string. Two function
types that are compatible in C must be translated to the same string
with the exception of function types that use typedefs of anonymous
structs in their return type or parameter types.

This patch doesn't have the code to resign function pointers, which is
needed when a function pointer is converted to a different function
type. That will be implemented in another patch.

Co-authored-by: John McCall <rjmccall@apple.com>

---------

Co-authored-by: John McCall <rjmccall@apple.com>