[PATCH] D152921: [lld] Synthesize metadata for MTE globals
Peter Smith via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Jul 7 07:05:49 PDT 2023
peter.smith added a comment.
Thanks for the updates. One query about the R_AARCH64_PREL64 relocation as it looks like that needs to be separated out, but otherwise looks good to me. I'll be happy to approve, although I think it would be good to get MaskRay's approval as well.
================
Comment at: lld/ELF/Arch/AArch64.cpp:378
case R_AARCH64_ABS64:
case R_AARCH64_PREL64:
+ // AArch64 relocations to tagged symbols have extended semantics, as
----------------
Does R_AARCH64_PREL64 need this behaviour? It isn't a dynamic relocation, won't generate a R_AARCH64_RELATIVE and calculates an offset to symbol from the place. I can't see it in the spec either.
Does it need to be?
```
case R_AARCH64_PREL64:
write64(loc, val);
break;
case R_AARCH64_ABS64:
// As below
```
Just for clarification, an R_AARCH64_ABS64 static relocation can be either converted to a relative or can be a dynamic reloc itself
```
extern int foo;
int *bar = &foo;
```
Is it OK to encode the addend as for R_AARCH64_RELATIVE in both cases?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D152921/new/
https://reviews.llvm.org/D152921
More information about the llvm-commits
mailing list