aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Basic/SourceManager.cpp
diff options
context:
space:
mode:
authorAnatoly Trosinenko <atrosinenko@accesssoftek.com>2025-07-12 13:45:48 +0300
committerGitHub <noreply@github.com>2025-07-12 13:45:48 +0300
commitb71756852f5a41b35a74918374a11ae00365ee04 (patch)
tree533091ce7c320bac6f0a501ea43810d7886193f2 /clang/lib/Basic/SourceManager.cpp
parent007fc77cfc3c4ac629682ec9d81b212c683e97bc (diff)
downloadllvm-b71756852f5a41b35a74918374a11ae00365ee04.zip
llvm-b71756852f5a41b35a74918374a11ae00365ee04.tar.gz
llvm-b71756852f5a41b35a74918374a11ae00365ee04.tar.bz2
[AArch64] Fix the emission of WinCFI for pac-ret+leaf and SCS (#147518)
This commit fixes WinCFI opcodes being incorrectly emitted for test cases in sign-return-address.ll. Emit SEH_Nop opcode in emitShadowCallStackEpilogue the same way it is done in emitShadowCallStackPrologue function - this fixes 12 bytes of instructions in range, but .seh directives corresponding to 8 bytes error being reported for the epilogue of non_leaf_scs function. Emit SEH_PrologEnd on the code path in emitPrologue function that may be taken when pac-ret protection is emitted for a leaf function - this fixes errors like the following: starting epilogue (.seh_startepilogue) before prologue has ended (.seh_endprologue) in leaf_sign_all_v83 Stray .seh_endepilogue in leaf_sign_all_v83
Diffstat (limited to 'clang/lib/Basic/SourceManager.cpp')
0 files changed, 0 insertions, 0 deletions