[Bug target/17993] Error in dwarf2 debug output of bitfield members
--- Comment #4 from rguenth at gcc dot gnu dot org 2008-03-14 16:37 --- Fixed then. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17993
[Bug target/17993] Error in dwarf2 debug output of bitfield members
--- Comment #3 from eweddington at cso dot atmel dot com 2007-08-22 17:48 --- Bug fixed in 4.3.0 20070817 snapshot. -- eweddington at cso dot atmel dot com changed: What|Removed |Added Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17993
[Bug target/17993] Error in dwarf2 debug output of bitfield members
-- eweddington at cso dot atmel dot com changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 GCC target triplet|AVR |avr-*-* Last reconfirmed|-00-00 00:00:00 |2007-04-28 17:26:32 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17993
[Bug target/17993] Error in dwarf2 debug output of bitfield members
--- Comment #2 from eweddington at cso dot atmel dot com 2007-03-10 19:40 --- From the link in comment #1, on the gcc list, from Jim Wilson: DW_AT_member_location seems to consequently equal -1 (ff ff ff ff) for the first member of a bitfield. FYI You can get descriptive assembly by using the -dA option. This adds comments that make the dwarf2 debug info readable. Gcc calls this DW_AT_data_member_location. The DWARF2 info comes from dwarf2out.c. Grepping for DW_AT_data_member_location shows that it comes from the function add_data_member_location_attribute. The offset comes from the function field_byte_offset. Looking at this code, it seems to have a general problem on targets where TYPE_ALIGN of int is smaller than TYPE_SIZE of int. This is true on avr where the size is 2 but the alignment is 1. The code computes the end of the bitfield, subtracts the type size, and then rounds up to the alignment, which gives -1 for the offset, which is not a useful number. I would think the code would work better if we started with the beginning of the bitfield, and then rounded down to the alignment. I'd suggest checking the history of the code to see if there is a reason why it was written this way. There may be an obscure reason why the code is like it is. The issue is in field_byte_offset() in dwarf2out.c. Can someone with Bugzilla permissions please mark this bug as NEW (confirmed)? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17993
[Bug target/17993] Error in dwarf2 debug output of bitfield members
-- Bug 17993 depends on bug 19885, which changed state. Bug 19885 Summary: [4.0/4.1 Regression] avr dwarf-2 support is broken for head 4.0/4.1 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19885 What|Old Value |New Value Status|NEW |WAITING Status|WAITING |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17993
[Bug target/17993] Error in dwarf2 debug output of bitfield members
-- What|Removed |Added BugsThisDependsOn||19885 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17993
[Bug target/17993] Error in dwarf2 debug output of bitfield members
-- What|Removed |Added CC||bjoern dot m dot haase at ||web dot de http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17993
[Bug target/17993] Error in dwarf2 debug output of bitfield members
-- What|Removed |Added CC||berndtrog at yahoo dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17993
[Bug target/17993] Error in dwarf2 debug output of bitfield members
-- What|Removed |Added Component|debug |target http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17993
[Bug target/17993] Error in dwarf2 debug output of bitfield members
-- What|Removed |Added CC||ericw at evcohs dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17993