The "stabs" debug format
Julia Menapace, Jim Kingdon, David MacKenzie
Cygnus Support
Overview of Stabs
Overview of Debugging Information Flow
Overview of Stab Format
The String Field
A Simple Example in C Source
The Simple Example at the Assembly Level
Encoding the Structure of the Program
Main Program
Paths and Names of the Source Files
Names of Include Files
Line Numbers
Procedures
Nested Procedures
Block Structure
Alternate Entry Points
Constants
Variables
Automatic Variables Allocated on the Stack
Global Variables
Register Variables
Common Blocks
Static Variables
Fortran Based Variables
Parameters
Passing Parameters in Registers
Storing Parameters as Local Variables
Passing Parameters by Reference
Passing Conformant Array Parameters
Defining Types
Builtin Types
Traditional Builtin Types
Traditional Integer Types
Traditional Other Types
Defining Builtin Types Using Builtin Type Descriptors
Negative Type Numbers
Miscellaneous Types
Cross-References to Other Types
Subrange Types
Array Types
Strings
Enumerations
Structures
Giving a Type a Name
Unions
Function Types
Symbol Information in Symbol Tables
Symbol Table Format
Transformations on Symbol Tables
Transformations on Static Variables
Transformations on Global Variables
Transformations of Stabs in separate sections
GNU C++ Stabs
C++ Class Names
Defining a Symbol Within Another Type
Basic Types For C++
Simple Class Definition
Class Instance
Method Definition
The
`#'
Type Descriptor
The
`@'
Type Descriptor
Protections
Method Modifiers (
const
,
volatile
,
const volatile
)
Virtual Methods
Inheritence
Virtual Base Classes
Static Members
Table of Stab Types
Non-Stab Symbol Types
Stab Symbol Types
Table of Symbol Descriptors
Table of Type Descriptors
Expanded Reference by Stab Type
N_PC
N_NSYMS
N_NOMAP
N_M2C
N_BROWS
N_DEFD
N_EHDECL
N_MOD2
N_CATCH
N_SSYM
N_SCOPE
Non-base registers on Gould systems
N_LENG
Questions and Anomalies
Differences Between GNU Stabs in a.out and GNU Stabs in XCOFF
Differences Between GNU Stabs and Sun Native Stabs
Using Stabs in Their Own Sections
How to Embed Stabs in Sections
Having the Linker Relocate Stabs in ELF
Symbol Types Index