Dwarf 3 Standard

 

The Dwarf Standards Committee has been meeting since November, 1999, to discuss revisions and extensions to the Dwarf 2 Standard.  The participants are people who are interested in debugging, both as compiler developers or as debugger developers.  Participation is open to anyone who is interested.  We plan to release a public review copy of the revised Dwarf specification in mid-2001.

The Dwarf Standards Committee has decided that the modifications and extensions to the Dwarf 2 standard make complete upward compatibility with Dwarf 2 difficult and are sufficient to warrant naming the new standard Dwarf 3.  The structure and organization of Dwarf 3 is the same as Dwarf 2.  It is anticipated that converting from Dwarf 2 to Dwarf 3 will not be a difficult task.

We have scheduled in person or teleconference meetings every two weeks at SGI in Mountain View, California, subject to cancelation if there are insufficient agenda items to warrant a meeting.  A significant amount of our discussion is held on email:  dwarf2@els.sgi.com.

If you have questions about the Dwarf 3 standard or the committee, please contact the committee chair, Michael Eager.

Documents:

Dwarf 2.0 base document.

Working Draft 7 (pdf) of the Dwarf 3 standard. 

Working Draft 7 (pdf) with differences from the Dwarf 2.0 base document highlighted. 


Important note: 
These are both internal working drafts.  They are subject to revision and modification and should not be relied on as standards.

Meeting minutes

November 9, 1999 January 11, 2000 June 13, 2000 November 28, 2000 June 12, 2001
December 7, 1999 February 22, 2000 June 27, 2000 January 9, 2001 July 10, 2001
February 8, 2000 March 21, 2000 September 19, 2000 February 20, 2001
March 7, 2000 April 18,2000 October 3, 2000 March 6, 2001
April 4, 2000 May 2, 2000 October 17, 2000 April 17, 2001
November 23,1999 May 16, 2000 October 31, 2000 May 1, 2001

       

Issues (proposal format)   Recent changes are in bold type.  Open Proposals, New Proposals, Accepted Proposals, Withdrawn or Rejected Proposals.

Proposals By Number
991007.1 991108.13 000330.1 000519.1 010228.1
991026.5 991110.1 000331.1 000519.2 010301.1
991026.3 991115.1 000403.1 000523.1 010301.2
991026.7 991118.1 000403.2 000531.1 010301.3
991102.1 991129.1 000403.3 000531.2 010301.4
991108.2 991204.1 000405.1 000914.1 010302.1
991108.3 000131.1 000406.1 000915.1 010302.2
991108.4 000217.1 000406.2 000929.1 010322.1
991108.5 000223.1 000410.1 001012.1 010322.2
991108.6 000302.1 000410.2 001016.1 010322.3
991108.7 000302.2 000410.3 001018.1 010503.1
991108.8 000305.1 000414.1 001113.1 010709.1
991108.9 000305.2 000428.1 001130.1 010710.1
991108.10 000314.1 000428.2 010205.1 010710.2
991108.11 000323.1 000517.1 010219.1 010812.1
991108.12 000323.2 000517.2 010221.1 010828.1

 

Open Proposals
ID Status Champion Category Descripton

 

New Proposals
ID Status Champion Category Descripton
         

 

Accepted Proposals
ID Status Champion Category Descripton
991102.1 A D. Anderson 64-bit Modify field definitions for 64-bit arch
991108.3 A D. Anderson Editorial Attribute spelling
991108.4 A D. Anderson Editorial DW_form_ref ambiguous
991108.5 A D. Anderson Editorial Lookup by address
991108.6 A D. Anderson Editorial DW_OP_add
991108.7 A D. Anderson Editorial DW_AT_const_value
991108.9 A D. Anderson Editorial DW_OP_bregx
991108.10 A J. Merrill Editorial Array bounds
991108.11 A R. Brender Fortran Fortran90 arrays
991110.1 A J. Merrill C++ Namespace support
991118.1 A F. Burton Language Unicode support
991129.1 A D. Anderson Editorial Pubnames and aranges headers
991204.1 A D. Anderson Editorial Line operator clarification
000131.1 A D. Anderson Processor Prolog identification
000217.1 A F. Burton Processor Dwarf procedures
000302.1 A R. Brender Representation Class constant FORM
000305.1 A D. Anderson C Imaginary float
000305.2 A D. Anderson C Restrict type
000314.1 A R. Brender Editorial Dwarf vs Location expressions
000323.1 A F. Burton Java Java LANG definition
000323.2 A F. Burton Java Java Interface definition
000330.1 A F. Burton Representation Call Frame extension
000403.3 A R. Brender Editorial Statement prolog header
000405.1 A J. Cownie C++ Global types section
000406.1 A R. Brender Editorial Remove "Future Directions"
000406.2 A R. Brender Language Add new C variant definitions
000410.3 A D. Weatherford Editorial Add aliases "loclist", "lineptr", "macptr"
000414.1 A R. Brender Language Add Ada & Cobol definitions
000517.1 A D. Anderson Editorial .debug_pubnames definition
000519.2 A R. Brender Representation Location list for data member
000523.1 A R. Brender Representation Reconsider 991118.1 re UTF-8
000531.2 A R. Brender Representation Add DW_AT_entry_pc attribute
000914.1 A R. Brender Representation Discontinuous Ranges
000915.1 A R. Brender Representation Source Files
000929.1 A R. Brender Fortran Fortran 90/95 Module Support
001016.1 A R. Brender Representation Interludes (aka trampolines)
001018.1 A R. Brender Representation Unspecified type
001012.1 A D. Anderson Representation Factored Offset
001113.1 A M. Eager Processor Mulitple ISA Support
010219.1 A D. Anderson Compression Duplicate Dwarf elimination
010221.1 A R. Brender Representation Multisection Location and Range Lists
010322.1 A M. Eager Representation Permit AT_location with AT_declaration
010228.1 A T. Allen Representation Generalize DW_AT_specification
010301.1 A T. Allen Ada Out-of-line package initialization
010301.3 A T. Allen Representation Thin inlines
010301.2 A T. Allen Ada Nested inlines
010322.2 A T. Allen Ada DW_FORM_ref_addr cross shared lib boundaries
010302.1 A T. Allen Ada DW_AT_description attribute
010302.2 A T. Allen Ada Byte size and bit offset as object attributes
010503.1 A T. Allen Representation Call references between shared library
010709.1 A M. Eager Language Add DW_TAG_mutable_type
010710.1 A R. Brender Representation Eliminate DW_OP_calli
010710.2 A D. Anderson Representation Change return reg CIE to LEB
010812.1 A D. Anderson Representation .debug_frame, SP recovery
010828.1 A A. Dunsmuir Lanuage DW_LANG for PL/I
         
         
         

 

Withdrawn or Rejected Proposals
ID Status Champion Category Descripton
991007.1 W F. Burton   Decompose Dwarf2 compilation units
991026.3 W Dehnert/Anderson Compression Duplicate Dwarf data deletion
991026.5 W   Optimized Register overloading
991026.7 W   C++/Java Name demangling
991115.1 R J. Merrill C++ Template support
991108.1 W M. Eager Processor Multiple instruction set support
991108.2 R F. Burton C++ Virtual functions
991108.8 W D. Anderson Editorial Attribute Encodings
991108.12 W D. Anderson Fortran Fortran90 allocatable arrays
991108.13 R M. Eager Processor Unwinding stacks
000223.1 R J. Merrill Editorial DW_AT_data_member_location
000302.2 R J. Cownie Representation Attribute extensibility
000331.1 W R. Brender 64-bit Dwarf files over 4Gb
000403.1 W F. Burton Processor Call frame return register
000410.1 W D. Weatherford Editorial FORM_ref_addr
000410.2 W D. Weatherford Representation New FORMs DW_AT_linep, locp, macp
000428.1 R R. Brender Editorial Rename DW_FORM_ref_addr
000428.2 W R. Brender Representation Add DW_ATE_wchar_t
000517.2 W B. Nettleton Representation Line Number Table Is_Stmt
000519.1 W Brender/Walker Representation Factored offset
000531.1 W R. Brender Representation Add DW_AT_pc_ranges attribute
001101.1 W R. Brender Representation Discontiguous scopes
001130.1 W R. Brender Representation Discontiguous scopes
001213.1 W R. Brender Representation Default location attribute
010205.1 W R. Brender Representation Discontiguous scopes
010301.4 W T. Allen Ada Calling nested subroutines
010322.3 W T. Allen Ada DW_OP_calli across shared library boundaries
         

 

 

Return to Eager Consulting home page.