Files
clang-p2996/llvm/lib/Target/ARM/ARMFrameLowering.cpp
Eleanor Bonnici c12bc57e23 Do not use R12 for indirect tail calls with PACBTI (#82661)
When compiling for thumbv8.1m with +pacbti and making an indirect tail
call, the compiler was free to put the function pointer into R12.

This is incorrect because R12 is restored to contain authentication code
for the caller's return address.

This patch excludes R12 from the set of registers the compiler can put
the function pointer in.

Fixes https://github.com/llvm/llvm-project/issues/75998
2024-04-30 15:29:07 +01:00

131 KiB