aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Bitcode/Reader/BitcodeReader.cpp
diff options
context:
space:
mode:
authorLang Hames <lhames@gmail.com>2025-04-01 21:56:00 +1100
committerLang Hames <lhames@gmail.com>2025-04-01 22:18:00 +1100
commit191e0622e84a215c1d632412561c2fe6ccd86170 (patch)
treeed58ceaa11809a3cb7e7ea3ea2c8bb65e96ff98d /llvm/lib/Bitcode/Reader/BitcodeReader.cpp
parent13a313fe582a3c41fb5c50ca2325c0987c0af6d7 (diff)
downloadllvm-191e0622e84a215c1d632412561c2fe6ccd86170.zip
llvm-191e0622e84a215c1d632412561c2fe6ccd86170.tar.gz
llvm-191e0622e84a215c1d632412561c2fe6ccd86170.tar.bz2
[JITLink][MachO][arm64] Don't lower ptrauth edges in noalloc-lifetime sections.
Ptrauth relocations can only be fixed up in the executing process, but noalloc sections do not have any memory in the executing process. Failure to skip ptrauth edges results in signing instructions that operate on invalid addresses, leading to segfaults or data corruption. Ignoring noalloc sections for ptrauth lowering purposes allows the ptrauth edges to persist until they reach the applyFixup method, at which point they raise a useful error and cleanly terminate linking.
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
0 files changed, 0 insertions, 0 deletions