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