[PATCH] D139888: [lld][ARM] support absolute thunks for Armv4T Thumb and interworking

Ties Stuij via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 20 05:28:32 PST 2022


stuij marked an inline comment as done.
stuij added inline comments.


================
Comment at: lld/ELF/Thunks.cpp:795
+      0x1c, 0xff, 0x2f, 0xe1, //     bx ip
+      0x00, 0x00, 0x00, 0x00, // L2: .word S - (P + (L1 - P) + 8)
+  };
----------------
MaskRay wrote:
> `S - (P + (L1 - P) + 8)` can be simplified
This is Peter's comment. I assume he went for descriptive, rather than succinct. He's on vacation for a couple of weeks, but I'll ask him when he gets back.


================
Comment at: lld/test/ELF/arm-bl-v4t.s:2
+// REQUIRES: arm
+// RUN: llvm-mc -arm-add-build-attributes -filetype=obj -triple=armv4t-none-linux-gnueabi %s -o %t
+// RUN: echo "SECTIONS { \
----------------
MaskRay wrote:
> Use `split-file %s %t`. See some new tests
Ah, I like that. Thanks, and thanks for implementing it :) Much cleaner and easier to debug.


================
Comment at: lld/test/ELF/arm-bx-v4t.s:59
+  bx lr
+// FAR: 06000000 <target>:
+// FAR-NEXT: 6000000: f000 f802    	bl	0x6000008 <__Thumbv4ABSLongBXThunk__start> @ imm = #0x4
----------------
MaskRay wrote:
> `FAR-LABEL: <target>:` (omit addresses so that diagnostics will be better in case of an error)
Thanks, fixed. I took aarch64-thunk-reuse.s as a model for how this should look.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D139888/new/

https://reviews.llvm.org/D139888



More information about the llvm-commits mailing list