Related articles |
---|
Debugging Information Format specification available for review ahby@ui.org (1992-05-04) |
Newsgroups: | comp.lang.c,comp.lang.c++,comp.lang.fortran,comp.compilers |
From: | ahby@ui.org (Shane P. McCarron) |
Followup-To: | comp.lang.c |
Keywords: | Fortran, C, C++, debug, standards |
Organization: | UNIX International |
Date: | Mon, 4 May 1992 20:50:10 GMT |
The UNIX International Programming Languages Special Interest Group has
completed a draft of the DWARF debugger format specification, and is
making it available for industry review. As with all UNIX International
developed specifications, this document is available for distribution
without restriction under an X Window System-like copyright.
Attached below is the Foreword and Introduction from the document. If you
would like to receive a copy, send mail to archive@ui.org containing the
following:
path yourname@your.site
send PUBLIC/dwarf.v1.mm
for the troff source, or
send PUBLIC/dwarf.v1.ps
for the postscript. If you system supports uncompress and uudecode, you
can request that the data be compressed by placing the command 'compress'
in the message.
If you have any questions about the archive service, please contact me.
If you have questions about the Programming Languages SIG or the DWARF
specification, please contact the SIG chair, Dan Oldman, at
d.oldman@ui.org. If you are interested in participating in the ongoing
discussions of the Programming Languages SIG, please send a message
containing your fully qualified internet address and company name to
plsig-request@ui.org.
--
Shane P. McCarron ATT: +1 201 263-8400 x232
Project Manager UUCP: s.mccarron@ui.org
DWARF Debugging Information Format
FOREWORD
This document specifies a new generation of symbolic
debugging information that has been developed by the UNIX
International Programming Languages Special Interest Group
(SIG), and is being circulated for industry review. We
started from the document DWARF Debugging Information
Requirements - Issue 2, dated April 4, 1990, made available
by AT&T to its source licensees, and added a significant
amount of material to clarify what was originally specified
and to support additional language constructs that were not
in the original specification.
At this point, the SIG believes that this document
sufficiently supports the debugging needs of C, C++, and
FORTRAN 77, and we have released it for public comment. We
will accept comments on this document until June 15, 1992.
Comments may be directed via email to me or posted to the
SIG mailing list (plsig@ui.org). If you are unable to send
email, paper mail, FAX, or machine readable copy on UNIX,
MS-DOS, or Macintosh compatible media can be sent to me, and
I will post it for you.
Tony D'Annunzio
Vice President of Technology
UNIX International
Waterview Corporate Center
20 Waterview Boulevard
Parsippany, NJ 07054
Phone: +1 201-263-8400
Fax: +1 201-263-8401
Revision: 1.0.0 Page 1 January 20, 1992
Industry Review Draft
Programming Languages SIG
1. INTRODUCTION
This document defines the format for the information
generated by compilers, assemblers and linkage editors that
is necessary for symbolic, source-level debugging. The
debugging information format does not favor the design of
any compiler or debugger. Instead, the goal is to create a
method of communicating an accurate picture of the source
program to any debugger in a form that is economically
extensible to different languages while retaining backward
compatibility.
The design of the debugging information format is open-
ended, allowing for the addition of new debugging
information to accommodate new languages or debugger
capabilities while remaining compatible with other languages
or different debuggers.
1.1 Purpose and Scope
The debugging information format described in this document
is designed to meet the symbolic, source-level debugging
needs of different languages in a unified fashion by
requiring language independent debugging information
whenever possible. Individual needs, such as C++ virtual
functions or Fortran common blocks are accommodated by
creating attributes that are used only for those languages.
This document describes DWARF Version 1, which is designed
to be binary compatible with the debugging information that
is described in the document DWARF Debugging Information
Requirements - Issue 2, dated April 4, 1990, and made
available by AT&T to its source licencess. The April 4,
1990, document describes the debugging information that is
generated by the UNIX System V Release 4 C compiler and
consumed by the System V Release 4 debugger, sdb.
By ``binary compatibility'' we mean that
1. All features intended to support C and Fortran
described in the April 4, 1990, document are included
in this document, and
2. DWARF produced according to this (DWARF Version 1)
specification should be considered well formed by a
System V Release 4 compatible DWARF consumer, but may
contain information that such a consumer is unable to
interpret. Consumers are expected to ignore such
information.
Revision: 1.0.0 Page 3 January 20, 1992
Industry Review Draft
DWARF Debugging Information Format
The intended audience for this document are the developers
of both producers and consumers of debugging information,
typically language compilers, debuggers and other tools that
need to interpret a binary program in terms of its original
source.
This version of the document is a draft for industry review.
Vendors developing products based on this draft should be
aware that the review process may produce changes.
1.2 Overview
There are two major pieces to the description of the DWARF
format in this document. The first piece is the debugging
information, itself. Section two describes the overall
structure of that information. Section three describes the
specific debugging information entries and how they
communicate the necessary information about the source
program to a debugger.
The second piece of the DWARF description is the way the
debugging information is encoded and represented in an
object file. The DWARF encoding is presented in section
four.
Section five describes compatibility constraints on the
format. Finally, section six describes external
dependencies.
In the following sections, text in normal font describes
required aspects of the DWARF format. Text in italics is
explanatory or supplementary material, and not part of the
format definition itself.
1.3 Vendor Extensibility
This document describes only the features of DWARF that have
been implemented and tested by at least one vendor (with a
very few exceptions). It does not attempt to cover all
languages or even to cover all of the interesting debugging
information needs for its primary target languages (C, C++,
Fortran). Therefore the document provides vendors a way to
define their own debugging information tags, attributes,
fundamental types, type modifiers, location atoms and
language names, by reserving a portion of the name space and
valid values for these constructs for vendor specific
additions. Future versions of this document will not use
names or values reserved for vendor specific additions. All
names and values not reserved for vendor additions, however,
are reserved for future versions of this document. See
section 4 for details.
Revision: 1.0.0 Page 4 January 20, 1992
Industry Review Draft
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.