Re: AVR - invalid address used when evaluating a variable
Christo <[email protected]>
| Newsgroups | gmane.comp.gdb.devel |
|---|---|
| Message-ID | <[email protected]> |
On Tue, 2018-06-26 at 22:01 -0400, Simon Marchi wrote: > On 2018-06-26 16:32, Christo wrote: > > > > I have also tested an equivalent C program compiled with avr-gcc, with > > gdb reading the correct > > SRAM address for the value of i. This makes me wonder if the symbol > > information generated by > > Freepascal is correct? > Looking quickly, that's what I see. The variable "i" in your program is > described as: > > <1><ca>: Abbrev Number: 3 (DW_TAG_variable) > <cb> DW_AT_name : i > <cd> DW_AT_location : 3 byte block: 3 60 0 (DW_OP_addr: 60) > > In my C test program (compiled with -gdwarf-4), a global variable > appears as: > > <1><5e0>: Abbrev Number: 11 (DW_TAG_variable) > <5e1> DW_AT_name : foo > ... > <5ec> DW_AT_location : 5 byte block: 3 60 0 80 0 > (DW_OP_addr: 800060) > > So I guess Freepascal should do the same, map data addresses at > 0x800000. > > Simon Simon, Thank you very much for your feedback. I will take this issue to the Freepascal forum. Best regards, Christo