<?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_parsers.xml 2286 2010-02-13 07:25:23Z peter $ -->     

<refentry id="yasm_parsers">

 <refentryinfo>
  <title>Yasm Supported Parsers</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_parsers</refentrytitle>
  <manvolnum>7</manvolnum>
 </refmeta>

 <refnamediv>
  <refname>yasm_parsers</refname>
  <refpurpose>Yasm Supported Parsers (Assembler Syntaxes)</refpurpose>
 </refnamediv>

 <refsynopsisdiv>
  <cmdsynopsis>
   <command>yasm</command>
   <arg choice="plain">
    <option>-p <replaceable>parser</replaceable></option>
   </arg>
   <arg choice="opt">
    <option>-r <replaceable>preproc</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 parsers (assembler syntaxes).</para>

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

 <refsect1>
  <title>NASM Parser</title>

  <para>NASM syntax, selected with <option>-p nasm</option>, is the
   most full-featured syntax supported by Yasm.  Yasm is nearly 100%
   compatible with NASM for 16-bit and 32-bit x86 code.  Yasm
   additionally supports 64-bit AMD64 code with Yasm extensions to the
   NASM syntax; see

   <citerefentry>
    <refentrytitle>yasm_arch</refentrytitle>
    <manvolnum>7</manvolnum>
   </citerefentry>
   
   for details.  NASM syntax is the Yasm default.</para>
 </refsect1>

 <refsect1>
  <title>GAS Parser</title>

  <para>The GNU Assembler (GAS) is the de-facto cross-platform
   assembler for modern Unix systems, and is used as the backend for
   the GCC compiler.  Yasm's support for GAS syntax is moderately
   good, although immature: not all directives are supported, and only
   32-bit x86 and AMD64 architectures are supported.  Nearly all of
   the GAS preprocessor is also supported.  Yasm's GAS syntax support
   is good enough to handle essentially all x86 and AMD64 GCC compiler
   output.  The GAS parser can be selected with <option>-p
    gas</option>.</para>
 </refsect1>

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

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

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