1 # Most targets will emit an R_*_RELATIVE reloc here, but RELATIVE 2 # relocs are superfluous. A target can do without them by simply 3 # defining an ADDR32 or ADDR64 style reloc without a symbol to behave 4 # like a RELATIVE reloc. GLOB_DAT relocs are similarly superfluous. 5 # In fact, a RELATIVE reloc can be wrong even if a target does have 6 # them, if the 32-bit or 64-bit field being relocated is unaligned. 7 # In that case the target ought to emit a UADDR32/64 or similar rather 8 # than a RELATIVE reloc. 9 # 10 # We also allow a dynamic reloc with a reference to .text as that 11 # should also resolve correctly. No reloc, or one referencing "fun" 12 # is incorrect. Also fail the test on finding a reloc at offset 0, 13 # typically a NONE reloc. 14 15 Relocation section.* 16 *Offset.* 17 0*[1-9a-f][0-9a-f]* +[^ ]+ +[^ ]+ +([0-9a-f]+( +\.text( \+ [0-9a-f]+)?)?)? 18 #pass 19