[coldfire-gnu-discuss] Illegal Operand in libc-2.3.6.so
Nathan Sidwell
nathan at codesourcery.com
Thu May 3 14:28:53 UTC 2007
Mouawad, Tony wrote:
> Hi,
>
> We are currently experiencing Illegal Operand errors intermittently when
> a call is made to printf() or vfprintf(). In either case, the Illegal
> Operand occurs at the following line:
>
> 0x404391f4 <_IO_new_file_xsputn+110>: 034 /* Illegal Operand */
> 0x404391f6 <_IO_new_file_xsputn+112>: moveq #127,%d1
> 0x404391f8 <_IO_new_file_xsputn+114>: cmpl %d0,%d1
> 0x404391fa <_IO_new_file_xsputn+116>: bcsw 0x404392c8
> <_IO_new_file_xsputn+322>
> 0x404391fe <_IO_new_file_xsputn+120>: clrb %d1
> 0x40439200 <_IO_new_file_xsputn+122>: movel %d2,%d4
> 0x40439202 <_IO_new_file_xsputn+124>: subl %d1,%d4
> 0x40439204 <_IO_new_file_xsputn+126>: bnew 0x404392d6
> <_IO_new_file_xsputn+336>
> 0x40439208 <_IO_new_file_xsputn+130>: tstl %d2
> 0x4043920a <_IO_new_file_xsputn+132>: beqs 0x404391ca
> <_IO_new_file_xsputn+68>
> 0x4043920c <_IO_new_file_xsputn+134>: movel %d2,%sp at -
> 0x4043920e <_IO_new_file_xsputn+136>: pea %a4@(00000000,%d4:l)
If I understand what you're showing here, it's that somehow you're trying to
execute an instruction at 0x404391f4, which as the disassembler is showing, is
invalid. do you know how you arrived there (a jump from somewhere else entirely?)
Has the text image become corrupted somehow? What is the disassembly of that
region before your program starts?
The text image should be read only, so if it is becoming corrupted, that would
imply a kernel fault.
nathan
--
Nathan Sidwell :: http://www.codesourcery.com :: CodeSourcery
nathan at codesourcery.com :: http://www.planetfall.pwp.blueyonder.co.uk
More information about the coldfire-gnu-discuss
mailing list