This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
RE: [Patch ARM] Fix branches and calls for local functions in the assembler.
- From: "Ramana Radhakrishnan" <ramana dot radhakrishnan at arm dot com>
- To: <binutils at sourceware dot org>
- Cc: "Richard Earnshaw" <Richard dot Earnshaw at arm dot com>
- Date: Tue, 31 Mar 2009 16:23:50 +0100
- Subject: RE: [Patch ARM] Fix branches and calls for local functions in the assembler.
- References: <000e01c9b20c$65d4db10$317e9130$@radhakrishnan@arm.com>
.
>
> Tested by building arm-none-eabi cross and verifying no regressions.
It was pointed out that I hadn't checked arm-coff and arm-wince-pe. I've now
tested arm-coff / arm-wince-pe and verified no extra regressions or
unexpected successes with the patch.
Ok to commit ?
Cheers
Ramana
>
>
>
> 2009-03-31 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
>
> * 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.
> (do_t_blx): Retain BFD_RELOC_THUMB_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.
>
> 2009-03-31 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
>
> * gas\arm\bl-local-v4t.d: New file.
> * gas\arm\bl-local-v4t.s: New file.
> * gas\arm\blx-local.s: Update for branches and calls to local
> functions.
> * gas\arm\blx-local.d: Likewise.
> * gas\arm\blx-local.l: New file.
> * gas\arm\blx-local-thumb.l: New file.
> * gas\arm\blx-local-thumb.s: New file.
> * gas\arm\blx-local-thumb.d: New file.
>
>
>
> Ramana Radhakrishnan
> GNU Tools Engineer
> ARM Ltd. (www.arm.com)
> Phone : +441223400495 (Direct || Voicemail)
>