[RFA/ARM]: Patch to workaround ARM1176 BLX (immediate) Thumb to ARM issue

Matthew Gretton-Dann matthew.gretton-dann@arm.com
Fri Jul 29 13:34:00 GMT 2011


Hi,

Please find an updated patch attached following comments from Joesph 
Myers & Nick Clifton.

The following changes have been made:
  * Command line option name changed to --fix-arm1176
    This carries on the naming scheme use for previous fixes (like 
--fix-cortex-a8)
  * Added documentation for this option[1]
  * Used symbolic constants and not magic numbers

Pleae can someone review, comment, and if appropriate approve.

Thanks,

Matt


ChangeLog:

bfd/ChangeLog:
2011-07-29  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>

	* bfd-in.h (bfd_elf32_arm_set_target_relocs): Update prototype.
	* bfd-in2.h (bfd_elf32_arm_set_target_relocs): Likewise.
	* elf32-arm.c (elf32_arm_link_hash_table): New field.
	(elf232_arm_link_hash_table_create): Initialise new field.
	(check_use_blx): Change test depending on fix_arm1176.
	(bfd_elf32_arm_set_target_relocs): Set fix_arm1176 from
	command line options.

ld/ChangeLog:
2011-07-29  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>

	* emultempl/armelf.em (fix_arm1176): New variable.
	(arm_elf_create_output_section_statements): Pass
	fix_arm1176 option to bfd backend.
	(OPTION_FIX_ARM1176): New define.
	(OPTION_NO_FIX_ARM1176): Likewise.
	(PARSE_AND_LIST_LONGOPTS): Add new command line options.
	(PARSE_AND_LIST_OPTIONS): Likewise.
	(PARSE_AND_LIST_ARGS_CASES): Likewise.
	* ld.texinfo: Document new command line options.

ld/testsuite/ChangeLog:
2011-07-29  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>

	* ld-arm/arm-elf.exp (armelftests): Update for new command-line
	options.
	(armeabitests): Update for new command-line options, and add
	new test cases.
	* ld-arm/fix-arm1176.s: Add test case.
	* ld-arm/fix-arm1176-off.d: Likewise.
	* ld-arm/fix-arm1176-on.d: Likewise.

-- 
Matthew Gretton-Dann
Principal Engineer, PD Software - Tools, ARM Ltd
-------------- next part --------------
A non-text attachment was scrubbed...
Name: fix-arm1176.patch
Type: text/x-patch
Size: 16826 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20110729/8ff29337/attachment.bin>


More information about the Binutils mailing list