[PATCH] D112451: implemented R_AARCH64_ADR_PREL_PG_HI21, R_AARCH64_ADR_PREL_PG_HI21_NC, R_AARCH64_ADD_ABS_LO12_NC

Stefan Gränitz via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 25 12:07:49 PDT 2021


sgraenitz added a comment.

> it always fall into OutOfRangeError

I just fixed that with cdb335ffaff2 <https://reviews.llvm.org/rGcdb335ffaff224174271b8a23134c1b41de2cc61>. The issue didn't show up earlier, because the shift value was always smaller 32. I guess you want to either rebase on this commit or cherry-pick it to your development branch. Also, it would be good to do the same for your `extractBit` function.

Apart from that, I see two relocations in your test case, both for `g`: `R_AARCH64_ADD_ABS_LO12_NC` (offset 0x4) and `R_AARCH64_ADD_ABS_LO12_NC` (offset 0x8). Is this looking correct?

Eventually, your test still fails, because it has no CHECK lines. See inline comment.



================
Comment at: llvm/test/ExecutionEngine/JITLink/AArch64/ELF_aarch64_test1.s:3
+# RUN: llvm-mc -triple=aarch64 -filetype=obj -o %t %s
+# RUN: llvm-jitlink -debug-only=jitlink -noexec %t 2>&1 | FileCheck %s
+	.text
----------------
My initial recommendation to use FileCheck was not good. JITLink tests actually use `jitlink-check`, which accepts some limited expressions to aid validation. I have to look up the details again as well.

Maybe this example can give you some idea how it works: https://reviews.llvm.org/D90331#change-XdnNV6F7d9o7


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D112451



More information about the llvm-commits mailing list