------- Additional Comments From bjoern dot m dot haase at web dot de 2005-05-30 21:16 ------- Hi, as a step towards resolving PR19885: After looking a bit into the code of other ports, I found out, that switching avr-gcc to the 4-byte dwarf convention should not be complicated at all. It seems that the only thing to be done is add the lines #undef DWARF2_ADDR_SIZE #define DWARF2_ADDR_SIZE 4 to avr.h . This is how it works for HC12, ip2k and other ports that override the default definition of 2 for these targets. For AVR, most probably, one should then expect the occurence of trailing 0x80 bytes indicating the memory space. Torleif has already prepared a new parser dll for avrstudio that is supposed to run with 4-Byte dwarf debugging info. Quote (Torleif Sandes): "My dwarf parser is composed of several dlls. The one governing low-level dwarf access (such as the size of pointers), is called libdwarf.dll and is a windows port of an LGPL licensed library. I have built this library with the required change and put it at http://www.atmel.no/beta_ware/as4/elfdwarfparser/libdwarf.dll" I will unfortunately not have time to look into details during the next two weeks. So in case that someone else volunteers (best would be someone who has access to a atmega128 board). Before implementing such a change, in case that it passes tests of course, one should probably carefully think about how to manage the transition: There is possibly quite a couple of object code out there that still has 2-Byte dwarf information included. I am mainly thinking about the WOE users working with avrstudio and Eric's precompiled winavr toolchain. Maybe one should do implement a simultaneous change of type "For avrstudio 3.4.1 always use winavr 6.2.8 or later." Possibly one should consider to implement the 2-Byte -> 4-Byte switching at the next 4.0 revision.? Yours, Bjoern
-- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19087