ARM long branch stub fixes
Christophe LYON
christophe.lyon@st.com
Wed Jun 25 15:16:00 GMT 2008
Hi Daniel,
On 25.06.2008 00:03, Daniel Jacobowitz wrote:
> This patch corrects two bugs in ARM stubs I discovered. One was an
> incorrect offset (+20 instead of +16) for the v4t stubs; this caused
> lots of arm-none-eabi/arm-sim/-mthumb tests to time out. The other
> was use of 'b.n .' instead of 'bx r6'; if you write 'b r6' you'll get
> the former, and it's easy to miss that there's a relocation on the
> instruction.
>
Thanks for catching this.
BTW, is this 'b r6' -> 'b.n .' transformation documented somewhere?
> While I was staring at stubs, I added a local symbol in front of each
> one. This makes disassembly more intelligible but required a massive
> testsuite update.
Thanks.
> I tried to use the same naming scheme as bfd's other set of
> ARM-to-Thumb stubs, which really should be obsoleted by the new
> mechanism - a cleanup for another day.
>
> Any comments on this patch? Otherwise I'll check it in soon.
>
Could you remind me why you use 'addr + 1' when you add the local
symbols in thumb mode? (in arm_map_one_stub())
It's OK for me.
Christophe.
More information about the Binutils
mailing list