gdb/gdbserver uclibc illegal instruction
Paul Blacquiere
blacq@slingshot.co.nz
Tue Jan 24 10:37:00 GMT 2006
Hi,
session log:
1 #include <stdio.h>
2
3 int main( int argc, char *argv[] ) {
4 printf("Hello World....\n\n");
5
6 return 0;
7 }
Starting program: /home/blacq/src/bin/hello
Program received signal SIGILL, Illegal instruction.
0x40003360 in ?? ()
Dump of assembler code from 0x40003350 to 0x40003370:
0x40003350: str r6, [r1]
0x40003354: str r12, [r11, #-304]
0x40003358: str lr, [r11, #-280]
0x4000335c: bl 0x40000b60
0x40003360: bl 0x40001670
0x40003364: ldr r3, [pc, #2304] ; 0x40003c6c
0x40003368: ldr r3, [r10, r3]
0x4000336c: ldr r2, [r3]
End of assembler dump.
Dump of assembler code from 0x40001670 to 0x400016a0:
0x40001670: stmdb sp!, {r4, r5, r6, r7, r8, r10, lr}
0x40001674: ldr r10, [pc, #668] ; 0x40001918
0x40001678: ldr r6, [pc, #668] ; 0x4000191c
0x4000167c: add r10, pc, r10
0x40001680: ldr lr, [r10, r6]
0x40001684: ldr r0, [lr]
0x40001688: cmn r0, #1 ; 0x1
0x4000168c: sub sp, sp, #88 ; 0x58
0x40001690: beq 0x40001910
0x40001694: cmp r0, #0 ; 0x0
0x40001698: bne 0x400018ac
0x4000169c: ldr r7, [pc, #636] ; 0x40001920
End of assembler dump.
Hope this gives some insight.
PaulB.
Quoting Daniel Jacobowitz <drow@false.org>:
> On Mon, Jan 23, 2006 at 05:12:24PM +1300, Paul Blacquiere wrote:
>> Hi,
>>
>> I am attempting to run gdb/gdbserver on an Arm Linux board built using the
>> uclibc libraries.
>>
>> Attempting to run an app causes an illegal instruction error (the
>> simple hello
>> world app obviously runs normally). One oddity is that the address that it
>> reports seems to contain a valid arm instruction.
>
> And what instruction is it? What's around that instruction? Could you
> post a complete session log?
>
> There's not enough information here to help you, sorry.
>
> --
> Daniel Jacobowitz
> CodeSourcery
More information about the Gdb
mailing list