[compiler-rt] [libcxx] [llvm] compiler-rt: Introduce runtime functions for emulated PAC. (PR #133530)
Anatoly Trosinenko via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 10 05:45:02 PDT 2025
atrosinenko wrote:
If I get the log posted by @pawosm-arm right, this test case should crash but it doesn't:
```c
case 3: {
// Test that a corrupted signature crashes the program.
uint64_t signed_ptr = __emupac_pacda(ptr1, ptr2);
__emupac_autda(signed_ptr + (1ULL << 48), ptr2);
break;
}
```
I guess the reason is that the CPU supports `FEAT_PAuth` (thus actual `autda` instruction is executed instead of the software emulation), but not `FEAT_FPAC` (so that `__emupac_autda` simply returns a corrupted pointer, which is never dereferenced). @pawosm-arm on what CPU model do you run the tests?
https://github.com/llvm/llvm-project/pull/133530
More information about the llvm-commits
mailing list