Arm64: assembling adrp with operand involving .

Jan Beulich jbeulich@suse.com
Mon Feb 14 07:55:30 GMT 2022


Nick,

I would expect these two

	adrp	x0, .
1:	adrp	x0, 1b

to assemble to the same encoding with similar attached relocations.
The first, however, appears to have evaluation of . deferred until the
end of assembly, i.e. the resulting operand depends on the number of
subsequent insns in the same source file. At a guess this is fallout
from eac4eb8ecb26 "Fix a problem assembling AArch64 sources when a
relocation is generated against a..." (for some reason the title is
truncated). According to my observations other insns aren't affected,
yet the change to parse_adrp() doesn't really stand out in said commit.
Hence I'm neither really certain that's the one, nor how a possible fix
could look like. Do you have any thoughts?

Thanks, Jan



More information about the Binutils mailing list