aboutsummaryrefslogtreecommitdiff
path: root/modules/parsers/yasm_parsers.xml
diff options
context:
space:
mode:
Diffstat (limited to 'modules/parsers/yasm_parsers.xml')
-rw-r--r--modules/parsers/yasm_parsers.xml112
1 files changed, 112 insertions, 0 deletions
diff --git a/modules/parsers/yasm_parsers.xml b/modules/parsers/yasm_parsers.xml
new file mode 100644
index 0000000..28aa2e2
--- /dev/null
+++ b/modules/parsers/yasm_parsers.xml
@@ -0,0 +1,112 @@
+<?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">
+
+<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>