in my asm code, i use _bss_begin as blew
adr x0, _bss_begin adr x1, _bss_end
which is defined in link.ld
SECTIONS { . = 0xffff000000000000; .text.boot : { *(.text.boot) } . = ALIGN(0x00001000); user_begin = .; .text.user : { build/user* (.text) } .rodata.user : { build/user* (.rodata) } .data.user : { build/user* (.data) } .bss.user : { build/user* (.bss) } user_end = .; .text : { *(.text) } .rodata : { *(.rodata) } .data : { *(.data) } . = ALIGN(0x8); _bss_begin = .; .bss : { *(.bss*) } _bss_end = .; . = ALIGN(0x00001000); pg_dir = .; .data.pgd : { . += (3 * (1 << 12)); } }
but when build , it post error msg
relocation truncated to fit: R_AARCH64_ADR_PREL_LO21 against symbol `_bss_end' defined in .bss section
any body can get some suggest about this error msg ?