[coldfire-gnu-discuss] Illegal Instruction in libc?

Mouawad, Tony Tony.Mouawad at christiedigital.com
Thu Jul 5 15:25:42 UTC 2007


I have another instance of this issue... I investigated a core dump and
found that instructions at 0x404a0524 and 0x404a0528 reference valid
data according to the dump.  At the time we execute 0x404a052c, the
value in A0 should have been 0x404A2388 (pthread_thread_self) according
to the memory in the core dump.  Yet the actual value in A0 at the time
we execute 0x404a052c is 0x404a2388.  So, it looks like something is
going wrong with register A0.  The memory referenced to set A0 is fine.
Do you have any ideas as to what could be causing this kind of symptom?
I have a core dump, would that be useful for you?


(gdb) disass 0x404a0514
Dump of assembler code for function __librt_disable_asynccancel:
0x404a0514 <__librt_disable_asynccancel+0>:     linkw %fp,#0
0x404a0518 <__librt_disable_asynccancel+4>:     movel %a5,%sp at -
0x404a051a <__librt_disable_asynccancel+6>:     moveal #264956,%a5
0x404a0520 <__librt_disable_asynccancel+12>:    lea %pc@(0x404a051c
<__librt_disable_asynccancel+8>,%a5:l),%a5
0x404a0524 <__librt_disable_asynccancel+16>:    moveal %a5@(7704),%a0
0x404a0528 <__librt_disable_asynccancel+20>:    moveal %a0@(140),%a0
0x404a052c <__librt_disable_asynccancel+24>:    jsr %a0@
0x404a052e <__librt_disable_asynccancel+26>:    moveb %fp@(11),%a0@(129)
0x404a0534 <__librt_disable_asynccancel+32>:    moveal %fp@(-4),%a5
0x404a0538 <__librt_disable_asynccancel+36>:    unlk %fp
0x404a053a <__librt_disable_asynccancel+38>:    rts
End of assembler dump.

(gdb) info reg
d0             0x0      0
d1             0xbffffbb0       -1073742928
d2             0x0      0
d3             0xc      12
d4             0x0      0
d5             0xbf     191
d6             0x0      0
d7             0xc      12
a0             0x404a2388       0x404a2388
a1             0x0      0x0
a2             0x80228720       0x80228720
a3             0x0      0x0
a4             0x80007934       0x80007934
a5             0x404e1018       0x404e1018
fp             0xbffffb90       0xbffffb90
sp             0xbffffb88       0xbffffb88
ps             0x4      4
pc             0x404a238a       0x404a238a <skip_ws+68>
fpcontrol      0x0      0
fpstatus       0x0      0
fpiaddr        0x8      0x8
(gdb)



More information about the coldfire-gnu-discuss mailing list