<?xml version="1.0"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
          "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">

<!-- $Id: yasm_dbgfmts.xml,v 1.1.1.1 2012/03/29 17:21:01 uid42307 Exp $ -->     

<refentry id="yasm_dbgfmts">

 <refentryinfo>
  <title>Yasm Supported Debug Formats</title>
  <date>October 2006</date>
  <productname>Yasm</productname>
  <author>
   <firstname>Peter</firstname>
   <surname>Johnson</surname>
   <affiliation>
    <address><email>peter@tortall.net</email></address>
   </affiliation>
  </author>

  <copyright>
   <year>2006</year>
   <holder>Peter Johnson</holder>
  </copyright>
 </refentryinfo>

 <refmeta>
  <refentrytitle>yasm_dbgfmts</refentrytitle>
  <manvolnum>7</manvolnum>
 </refmeta>

 <refnamediv>
  <refname>yasm_dbgfmts</refname>
  <refpurpose>Yasm Supported Debugging Formats</refpurpose>
 </refnamediv>

 <refsynopsisdiv>
  <cmdsynopsis>
   <command>yasm</command>
   <arg choice="plain">
    <option>-g <replaceable>dbgfmt</replaceable></option>
   </arg>
   <arg choice="plain">
    <option><replaceable>...</replaceable></option>
   </arg>
  </cmdsynopsis>
 </refsynopsisdiv>

 <refsect1>
  <title>Description</title>

  <para>The standard Yasm distribution includes a number of modules
   for different debugging formats.  The debugging information is
   embedded into the object file.  Use of a non-<quote>null</quote>
   debug format also causes Yasm to output all symbols to the object
   file (including local symbols).</para>

  <para>The debug format is selected on the
   
   <citerefentry>
    <refentrytitle>yasm</refentrytitle>
    <manvolnum>1</manvolnum>
   </citerefentry>
   
   command line by use of the <option>-g
    <replaceable>dbgfmt</replaceable></option> command line
   option.</para>
 </refsect1>

 <refsect1>
  <title>cv8</title>

  <para>The CV8 debug format is used by Microsoft Visual Studio 2005
   (version 8.0) and is completely undocumented, although it bears
   strong similarities to earlier CodeView formats.  Yasm's support
   for the CV8 debug format is currently limited to generating
   assembly-level line number information (to allow some level of
   source-level debugging).  The CV8 debug information is stored in
   the .debug$S and .debug$T sections of the Win64 object file.</para>
 </refsect1>

 <refsect1>
  <title>dwarf2</title>

  <para>The DWARF 2 debug format is a complex, well-documented
   standard for debugging information.  It was created to overcome
   shortcomings in STABS, allowing for much more detailed and compact
   descriptions of data structures, data variable movement, and
   complex language structures such as in C++.  The debugging
   information is stored in sections (just like normal program
   sections) in the object file.  Yasm supports full pass-through of
   DWARF2 debugging information (e.g. from a C++ compiler), and can
   also generate assembly-level line number information.</para>
 </refsect1>

 <refsect1>
  <title>null</title>

  <para>The <quote>null</quote> debug format is a placeholder; it adds
   no debugging information to the output file.</para>
 </refsect1>

 <refsect1>
  <title>stabs</title>

  <para>The STABS debug format is a poorly documented, semi-standard
   format for debugging information in COFF and ELF object files.  The
   debugging information is stored as part of the object file's symbol
   table and thus is limited in complexity and scope.  Despite this,
   STABS is a common debugging format on older Unix and compatible
   systems, as well as DJGPP.</para>
 </refsect1>

 <refsect1>
  <title>See Also</title>

  <para><citerefentry>
   <refentrytitle>yasm</refentrytitle>
   <manvolnum>1</manvolnum>
  </citerefentry>,

  <citerefentry>
   <refentrytitle>yasm_objfmts</refentrytitle>
   <manvolnum>7</manvolnum>
  </citerefentry></para>
 </refsect1>
</refentry>
