aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Bitcode/Reader
diff options
context:
space:
mode:
authorOliver Stannard <oliver.stannard@arm.com>2024-11-28 10:37:57 +0100
committerGitHub <noreply@github.com>2024-11-28 09:37:57 +0000
commit0c0f765cab4b16eb0342d514584cdf64cabc433a (patch)
tree1f250a63a5ed1bd7e8928df2e943a59f66549bf7 /llvm/lib/Bitcode/Reader
parent3b8426d340ab730ee3303257ea204ee083b1273a (diff)
downloadllvm-0c0f765cab4b16eb0342d514584cdf64cabc433a.zip
llvm-0c0f765cab4b16eb0342d514584cdf64cabc433a.tar.gz
llvm-0c0f765cab4b16eb0342d514584cdf64cabc433a.tar.bz2
[ARM] Fix llvm.returnaddress for Thumb1 with R11 frame-pointer (#117735)
When the llvm.returnaddress intrinsic is used, the LR is marked as live-in to the function, so it must be preserved through the prologue. This is normally fine, but there is one case for Thumb1 where we use LR as a temporary in the prologue to set up a frame chain using r11 as the frame pointer. There are no other registers guaranteed to be free to do this, so we have to re-load LR from the stack after pushing the callee saved registers.
Diffstat (limited to 'llvm/lib/Bitcode/Reader')
0 files changed, 0 insertions, 0 deletions