aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp
diff options
context:
space:
mode:
authorMartin Storsjö <martin@martin.st>2021-11-23 00:44:58 +0200
committerMartin Storsjö <martin@martin.st>2022-05-18 10:14:33 +0300
commit92f1028ceb30dc8e7eda3f06a8c7aa8e8082ff65 (patch)
tree2b39f3e786e92288f76ff4b5c4c5d42f644518e9 /llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp
parentd81064949f41b95a5a2122889f07c9ffcc875834 (diff)
downloadllvm-92f1028ceb30dc8e7eda3f06a8c7aa8e8082ff65.zip
llvm-92f1028ceb30dc8e7eda3f06a8c7aa8e8082ff65.tar.gz
llvm-92f1028ceb30dc8e7eda3f06a8c7aa8e8082ff65.tar.bz2
[llvm-readobj] Fix printing of Windows ARM unwind opcodes, add tests
The existing code was essentially untested; in some cases, it used too narrow variable types to fit all the bits, in some cases the bit manipulation operations were incorrect. For the "ldr lr, [sp], #x" opcode, there's nothing in the documentation that says it cannot be used in a prologue. (In practice, it would probably seldom be used there, but technically there's nothing stopping it from being used.) The documentation only specifies the operation to replay for unwinding it, but the corresponding mirror instruction to be printed for a prologue is "str lr, [sp, #-x]!". Also improve printing of register masks, by aggregating registers into ranges where possible, and make the printing of the terminating branches clearer, as "bx <reg>" and "b.w <target>". Differential Revision: https://reviews.llvm.org/D125643
Diffstat (limited to 'llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp')
0 files changed, 0 insertions, 0 deletions