We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi Experts,
We are using address which is more than 32 bits with for example : 0x1000000000
when comes to adrp instruction it is giving following error.:
relocation truncated to fit: R_AARCH64_ADR_PREL_PG_HI21 against symbol `__BSS_START__' defined in .bss section in
ADRP Usage:
adrp x0, __BSS_START__add x0, x0, :lo12:__BSS_START__
what could be possible solution for this?
When I tried to replace adrp and add with ldr instruction it works fine but is there any way that we can continue with adrp instruction?
LDR Usage:
ldr x0, = __BSS_START__
We are using aarch64-linux-gnu-gcc (Linaro GCC 6.2-2016.11) 6.2.1 20161016 toolchain.
Thanks Stephen,
I posted same on community.arm.com/.../gnu-toolchain-forum . I tried with aarch64-linux-gnu-gcc (Linaro GCC 7.5-2019.12) 7.5.0 toolchain as well but no luck.
Regards,
Kishan