Subsections

DWARF Definition

This section3.18defines the Debug With Arbitrary Record Format (DWARF) debugging format for the AMD64 processor family. The AMD64 ABI does not define a debug format. However, all systems that do implement DWARF shall use the following definitions.

DWARF is a specification developed for symbolic, source-level debugging. The debugging information format does not favor the design of any compiler or debugger. For more information on DWARF, see DWARF Debugging Information Format, revision: Version 2.0.0, July 27, 1993, UNIX International, Program Languages SIG.

DWARF Release Number

The DWARF definition requires some machine-specific definitions. The register number mapping needs to be specified for the AMD64 registers. In addition, the DWARF Version 2 specification requires processor-specific address class codes to be defined.

DWARF Register Number Mapping

Table [*]3.19 outlines the register number mapping for the AMD64 processor family.3.20

Figure: DWARF Register Number Mapping
\begin{figure}\begin{center}
\begin{tabular}{l\vert r\vert l}
\multicolumn{1}{c}...
...mm0}}\xspace --{\texttt{\%mm7}}\xspace \\
\end{tabular}\end{center}\end{figure}



Footnotes

... section3.18
This section is structured in a way similar to the PowerPC psABI
...tbl-reg-num-map3.19
The table defines Return Address to have a register number, even though the address is stored in 0(%rsp) and not in a physical register.
...3.20
This document does not define mappings for privileged registers.
Jan Hubicka 2003-05-04