[PATCH] D134999: AArch64: PAC: Do not attempt ICP on authenticating calls.

Ahmed Bougacha via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Oct 20 06:58:36 PDT 2022


ab added a comment.

To make sure I follow: would it make sense to have the legality check compare the ptrauth bits, and if they match, remove the bundle and promote?  We'd have to pass the pointer (not the Function) around.  And I don't see how we'd get a signed pointer in the SampleProfile case, so we wouldn't promote there anyway (without a much more interesting target check at least?)  But it seems like the other users would generate a direct ptrauth-bundle call to ptrauth-signed target;  InstCombine should handle that.

But in the meantime this does seem reasonable, though  I'll defer to Teresa on tests.



================
Comment at: llvm/lib/Transforms/Utils/CallPromotionUtils.cpp:389
+  if (CB.countOperandBundlesOfType(LLVMContext::OB_ptrauth)) {
+    if (*FailureReason)
+      *FailureReason = "Authenticating calls are unsupported";
----------------



Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D134999/new/

https://reviews.llvm.org/D134999



More information about the llvm-commits mailing list