* config/tc-arm.h: Fix typo in comment. (ARM_IS_FUNC): New macro. (MD_APPLY_SYM_VALUE): Define.
* config/tc-arm.c (do_blx): Retain BFD_RELOC_ARM_PCREL_BLX for
all versions of EABI. (relax_branch): Do not relax for branches to ARM functions. (md_pcrel_from_section): Set up base correctly for BFD_RELOC_THUMB_PCREL_BLX, BFD_RELOC_THUMB_PCREL_CALL, BFD_RELOC_THUMB_PCREL_BRANCH23, BFD_RELOC_ARM_PCREL_BLX BFD_RELOC_ARM_PCREL_CALL. (md_apply_fix): Flip bl to blx where possible.
Flip blx to bl where possible. (arm_force_relocation): Force relocations for BFD_RELOC_ARM_PCREL_JUMP, BFD_RELOC_ARM_PCREL_JUMP, BFD_RELOC_ARM_PCREL_BLX, BFD_RELOC_THUMB_PCREL_BLX, BFD_RELOC_THUMB_PCREL_BRANCH20, BFD_RELOC_THUMB_PCREL_BRANCH23, BFD_RELOC_THUMB_PCREL_BRANCH25. (arm_apply_sym_value): New function.
may be caused by:
2009-05-05 Ramana Radhakrishnan <email address hidden>
* config/tc-arm.h: Fix typo in comment.
(ARM_IS_ FUNC): New macro.
(MD_APPLY_ SYM_VALUE) : Define.
* config/tc-arm.c (do_blx): Retain BFD_RELOC_ ARM_PCREL_ BLX for
(relax_ branch) : Do not relax for branches to ARM functions.
(md_pcrel_ from_section) : Set up base correctly for
BFD_RELOC_ THUMB_PCREL_ BLX, BFD_RELOC_ THUMB_PCREL_ CALL,
BFD_RELOC_ THUMB_PCREL_ BRANCH23, BFD_RELOC_ ARM_PCREL_ BLX
BFD_RELOC_ ARM_PCREL_ CALL.
(md_apply_ fix): Flip bl to blx where possible.
(arm_force_ relocation) : Force relocations for
BFD_RELOC_ ARM_PCREL_ JUMP, BFD_RELOC_ ARM_PCREL_ JUMP,
BFD_RELOC_ ARM_PCREL_ BLX, BFD_RELOC_ THUMB_PCREL_ BLX,
BFD_RELOC_ THUMB_PCREL_ BRANCH20, BFD_RELOC_ THUMB_PCREL_ BRANCH23,
BFD_RELOC_ THUMB_PCREL_ BRANCH25.
(arm_apply_ sym_value) : New function.
all versions of EABI.
Flip blx to bl where possible.