This is the mail archive of the
insight-prs@sources.redhat.com
mailing list for the Insight project.
insight/116: assembler instructions do not match the associated source lines
- From: oschiller at foni dot net
- To: insight-gnats at sourceware dot cygnus dot com
- Date: 4 Dec 2001 08:01:38 -0000
- Subject: insight/116: assembler instructions do not match the associated source lines
- Reply-to: oschiller at foni dot net
>Number: 116
>Category: insight
>Synopsis: assembler instructions do not match the associated source lines
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Tue Dec 04 00:03:00 PST 2001
>Closed-Date:
>Last-Modified:
>Originator: oschi
>Release: unknown-1.0
>Organization:
>Environment:
cygwin 1.3.3
gcc 3.0, binutils 2.11, newlib 1.9.0, insight 5.1 configured for arm-unknown-elf
>Description:
When stepping into a library function (e.g. printf()), the assembler instructions don't match the associated source lines. An example is shown below:
51 {
- 0xb0c4 <printf>: mov r12, sp
- 0xb0c8 <printf+4>: stmdb sp!, {r0, r1, r2, r3}
- 0xb0cc <printf+8>: stmdb sp!, {r11, r12, lr, pc}
- 0xb0e0 <printf+28>: sub r11, r12, #20 ; 0x14
52 int ret;
53 va_list ap;
54
55 va_start (ap, fmt);
56 _stdout_r (_REENT)->_data = _REENT;
- 0xb0d0 <printf+12>: ldr r2, [pc, #32] ; 0xb0f8 <printf+52>
- 0xb0d4 <printf+16>: ldr r3, [r2]
- 0xb0d8 <printf+20>: ldr r1, [r3, #8]
- 0xb0dc <printf+24>: str r3, [r1, #84]
57 ret = vfprintf (_stdout_r (_REENT), fmt, ap);
- 0xb0e4 <printf+32>: ldr r0, [r3, #8]
- 0xb0e8 <printf+36>: ldr r1, [r11, #4]
- 0xb0ec <printf+40>: add r2, r11, #8 ; 0x8
- 0xb0f0 <printf+44>: bl 0xbd48 <vfprintf>
- 0xb0f4 <printf+48>: ldmdb r11, {r11, sp, pc}
- 0xb0f8 <printf+52>: andeq r2, r1, r0, lsr #9
I am not quite sure whether this is a debugger problem.
I've tried with gcc 3.0.2 as well but this didn't solve the problem.
>How-To-Repeat:
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted: