diff options
author | John Brawn <john.brawn@arm.com> | 2023-07-31 16:55:49 +0100 |
---|---|---|
committer | John Brawn <john.brawn@arm.com> | 2023-08-07 17:53:32 +0100 |
commit | f83ab2b3beb0303e0775ea187d9575faa4a048eb (patch) | |
tree | 3089fd787140a6915d9e08f62f631cfeb92a172e /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | a749b32a11055aa680db7cdcb68687345132abe5 (diff) | |
download | llvm-f83ab2b3beb0303e0775ea187d9575faa4a048eb.zip llvm-f83ab2b3beb0303e0775ea187d9575faa4a048eb.tar.gz llvm-f83ab2b3beb0303e0775ea187d9575faa4a048eb.tar.bz2 |
[ARM] Improve generation of thumb stack accesses
Currently when a stack access is out of range of an sp-relative ldr or
str then we jump straight to generating the offset with a literal pool
load or mov32 pseudo-instruction. This patch improves that in two
ways:
* If the offset is within range of sp-relative add plus an ldr then
use that.
* When we use the mov32 pseudo-instruction, if putting part of the
offset into the ldr will simplify the expansion of the mov32 then
do so.
Differential Revision: https://reviews.llvm.org/D156875
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions