readelf: Don't change the symbol table

1. Update dump_relr_relocations not to change the symbol table.
2. Update count_relr_relocations and dump_relr_relocations not to
retrieve the same data twice.

binutils/

	PR binutils/33328
	* readelf.c (count_relr_relocations): Add an argument to return
	the retrieved data and remove the FIXME in comments.
	(dump_relr_relocations): Add an argument for the retrieved data.
	Retrieve the data if needed.  Don't change the symbol table and
	remove the FIXME in comments.
	(display_relocations): Get the data from count_relr_relocations
	and pass it to dump_relr_relocations call.
	(process_relocs): Pass NULL to dump_relr_relocations.

ld/

	PR binutils/33328
	* testsuite/ld-i386/dt-relr-2.d: New file.
	* testsuite/ld-i386/dt-relr-2.s: Likewise.
	* testsuite/ld-x86-64/dt-relr-2-x32.d: Likewise.
	* testsuite/ld-x86-64/dt-relr-2.d: Likewise.
	* testsuite/ld-x86-64/dt-relr-2.s: Likewise.
	* testsuite/ld-i386/i386.exp: Run dt-relr-2.
	* testsuite/ld-x86-64/x86-64.exp: Run dt-relr-2 and dt-relr-2-x32.

Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
8 files changed