There is a rgression with this patch in qemu aarch64-none-linux-gnu for pr38151.c.
pr38151.c:(.text+0x10c): relocation truncated to fit: R_AARCH64_LDST64_ABS_LO12_NC against `.rodata' collect2: error: ld returned 1 exit status
asm diff is as shown below.
< add x0, x0, :lo12:.LANCHOR0 < ldr x0, [x0] --- > ldr x0, [x0,#:lo12:.LANCHOR0]
If I however increase the alignment of .rodata where .LANCHOR0 is defined, this passes. Is alignment of BITS_PER_UNIT valid for SYMBOL_REF? If I change it as I am doing this attached patch, is there anything else I need to do. Any tips?
There is a rgression with this patch in qemu aarch64- none-linux- gnu for pr38151.c.
pr38151. c:(.text+ 0x10c): relocation truncated to fit: LDST64_ ABS_LO12_ NC against `.rodata'
R_AARCH64_
collect2: error: ld returned 1 exit status
asm diff is as shown below.
< add x0, x0, :lo12:.LANCHOR0 .LANCHOR0]
< ldr x0, [x0]
---
> ldr x0, [x0,#:lo12:
If I however increase the alignment of .rodata where .LANCHOR0 is
defined, this passes. Is alignment of BITS_PER_UNIT valid for
SYMBOL_REF? If I change it as I am doing this attached patch, is there
anything else I need to do. Any tips?