This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
arm/thumb disassembler: display problem?
- From: Adrian von Bidder <avbidder at acter dot ch>
- To: binutils <binutils at sources dot redhat dot com>
- Date: 15 Jan 2002 16:50:41 +0100
- Subject: arm/thumb disassembler: display problem?
Hi!
snipped from my __uClibc_main, compiled with gcc-3.0.3 and objdumped
with binutils-2.11.2:
54: 1c0f mov r7, r1 (add r7, r1, #0)
56: 480b ldr r0, [pc, #44] (84 <__uClibc_main+0x34>)
58: 490b ldr r1, [pc, #44] (88 <__uClibc_main+0x38>)
5a: 1c14 mov r4, r2 (add r4, r2, #0)
...
7e: f805f000 bl 8c <exit>
82: 0000 lsl r0, r0, #0
84: 003c lsl r4, r7, #0
86: 0000 lsl r0, r0, #0
88: 0010 lsl r0, r2, #0
8a: 0000 lsl r0, r0, #0
Look at 0x56 and 0x58: they can't be both 'ldr rx, [pc, #44]', can they?
At least one of the loads would be misaligned. As the hardware executes
it without complaint and the address in parenthesis shows what really
happens I assume it's a simple bug in the display logic.
Is it obvious to those knowing the code or shall I try to produce a
boilt down testcase?
greets from Zürich
-- vbi