avr-chat
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[avr-chat] debugging gdb/ddd: wrong assembler output with offset 0x80000


From: Klaus Rudolph
Subject: [avr-chat] debugging gdb/ddd: wrong assembler output with offset 0x800000
Date: Wed, 14 Dec 2011 09:14:59 +0100

Hi all,

after years of working only with pc programming I restart with avr projects.

I run a very little c program with gdb/ddd and run into the following trouble:

ddd window shows c listing correct. Step works fine.

If I open assembly window in ddd I get the correct output:
Dump of assembler code for function __vectors:
=> 0x00000000 <+0>:     rjmp    .+24            ;  0x1a <__trampolines_start>
   0x00000002 <+2>:     rjmp    .+78            ;  0x52 <__bad_interrupt>
   0x00000004 <+4>:     rjmp    .+76            ;  0x52 <__bad_interrupt>
   0x00000006 <+6>:     rjmp    .+74            ;  0x52 <__bad_interrupt>
   0x00000008 <+8>:     rjmp    .+72            ;  0x52 <__bad_interrupt>
   0x0000000a <+10>:    rjmp    .+70            ;  0x52 <__bad_interrupt>
   

if I now do a "stepi":
(gdb) stepi
0x0000001a in __trampolines_start ()

The assembler output now has an offset of 0x800000 ?????
Why?
Dump of assembler code from 0x80001a to 0x80011a:
   0x0080001a:  nop
   0x0080001c:  nop
   0x0080001e:  nop
   0x00800020:  nop
 

If I set display/i $pc:
(gdb) display/i $pc
(gdb) stepi
0x0000001c in __trampolines_start ()
1: x/i $pc
=> 0x1c <__trampolines_start+2>:        out     0x3f, r1        ; 63
(gdb) stepi
0x0000001e in __trampolines_start ()
1: x/i $pc
=> 0x1e <__trampolines_start+4>:        ldi     r28, 0x5F       ; 95
(gdb)   

looks fine. But the assembler window has still the offset to 0x800000.

Any ideas?



Thanks
 Klaus


-- 
Empfehlen Sie GMX DSL Ihren Freunden und Bekannten und wir
belohnen Sie mit bis zu 50,- Euro! https://freundschaftswerbung.gmx.de



reply via email to

[Prev in Thread] Current Thread [Next in Thread]