<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This file documents the GNU Assembler "as".

Copyright (C) 1991-2013 Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation;
with no Invariant Sections, with no Front-Cover Texts, and with no
Back-Cover Texts.  A copy of the license is included in the
section entitled "GNU Free Documentation License".
 -->
<!-- Created by GNU Texinfo 5.2, http://www.gnu.org/software/texinfo/ -->
<head>
<title>Using as: M68HC11-Opts</title>

<meta name="description" content="Using as: M68HC11-Opts">
<meta name="keywords" content="Using as: M68HC11-Opts">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="AS-Index.html#AS-Index" rel="index" title="AS Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="M68HC11_002dDependent.html#M68HC11_002dDependent" rel="up" title="M68HC11-Dependent">
<link href="M68HC11_002dSyntax.html#M68HC11_002dSyntax" rel="next" title="M68HC11-Syntax">
<link href="M68HC11_002dDependent.html#M68HC11_002dDependent" rel="prev" title="M68HC11-Dependent">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.indentedblock {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
div.smalllisp {margin-left: 3.2em}
kbd {font-style:oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space:nowrap}
span.nolinebreak {white-space:nowrap}
span.roman {font-family:serif; font-weight:normal}
span.sansserif {font-family:sans-serif; font-weight:normal}
ul.no-bullet {list-style: none}
-->
</style>


</head>

<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
<a name="M68HC11_002dOpts"></a>
<div class="header">
<p>
Next: <a href="M68HC11_002dSyntax.html#M68HC11_002dSyntax" accesskey="n" rel="next">M68HC11-Syntax</a>, Up: <a href="M68HC11_002dDependent.html#M68HC11_002dDependent" accesskey="u" rel="up">M68HC11-Dependent</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="AS-Index.html#AS-Index" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<a name="M68HC11-and-M68HC12-Options"></a>
<h4 class="subsection">9.24.1 M68HC11 and M68HC12 Options</h4>

<a name="index-options_002c-M68HC11"></a>
<a name="index-M68HC11-options"></a>
<p>The Motorola 68HC11 and 68HC12 version of <code>as</code> have a few machine
dependent options.
</p>
<dl compact="compact">
<dd>
<a name="index-_002dm68hc11"></a>
</dd>
<dt><code>-m68hc11</code></dt>
<dd><p>This option switches the assembler into the M68HC11 mode. In this mode,
the assembler only accepts 68HC11 operands and mnemonics. It produces
code for the 68HC11.
</p>
<a name="index-_002dm68hc12"></a>
</dd>
<dt><code>-m68hc12</code></dt>
<dd><p>This option switches the assembler into the M68HC12 mode. In this mode,
the assembler also accepts 68HC12 operands and mnemonics. It produces
code for the 68HC12. A few 68HC11 instructions are replaced by
some 68HC12 instructions as recommended by Motorola specifications.
</p>
<a name="index-_002dm68hcs12"></a>
</dd>
<dt><code>-m68hcs12</code></dt>
<dd><p>This option switches the assembler into the M68HCS12 mode.  This mode is
similar to &lsquo;<samp>-m68hc12</samp>&rsquo; but specifies to assemble for the 68HCS12
series.  The only difference is on the assembling of the &lsquo;<samp>movb</samp>&rsquo;
and &lsquo;<samp>movw</samp>&rsquo; instruction when a PC-relative operand is used.
</p>
<a name="index-_002dmm9s12x"></a>
</dd>
<dt><code>-mm9s12x</code></dt>
<dd><p>This option switches the assembler into the M9S12X mode.  This mode is
similar to &lsquo;<samp>-m68hc12</samp>&rsquo; but specifies to assemble for the S12X
series which is a superset of the HCS12.
</p>
<a name="index-_002dmm9s12xg"></a>
</dd>
<dt><code>-mm9s12xg</code></dt>
<dd><p>This option switches the assembler into the XGATE mode for the RISC
co-processor featured on some S12X-family chips.
</p>
<a name="index-_002d_002dxgate_002dramoffset"></a>
</dd>
<dt><code>--xgate-ramoffset</code></dt>
<dd><p>This option instructs the linker to offset RAM addresses from S12X address
space into XGATE address space.
</p>
<a name="index-_002dmshort"></a>
</dd>
<dt><code>-mshort</code></dt>
<dd><p>This option controls the ABI and indicates to use a 16-bit integer ABI.
It has no effect on the assembled instructions.
This is the default.
</p>
<a name="index-_002dmlong"></a>
</dd>
<dt><code>-mlong</code></dt>
<dd><p>This option controls the ABI and indicates to use a 32-bit integer ABI.
</p>
<a name="index-_002dmshort_002ddouble"></a>
</dd>
<dt><code>-mshort-double</code></dt>
<dd><p>This option controls the ABI and indicates to use a 32-bit float ABI.
This is the default.
</p>
<a name="index-_002dmlong_002ddouble"></a>
</dd>
<dt><code>-mlong-double</code></dt>
<dd><p>This option controls the ABI and indicates to use a 64-bit float ABI.
</p>
<a name="index-_002d_002dstrict_002ddirect_002dmode"></a>
</dd>
<dt><code>--strict-direct-mode</code></dt>
<dd><p>You can use the &lsquo;<samp>--strict-direct-mode</samp>&rsquo; option to disable
the automatic translation of direct page mode addressing into
extended mode when the instruction does not support direct mode.
For example, the &lsquo;<samp>clr</samp>&rsquo; instruction does not support direct page
mode addressing. When it is used with the direct page mode,
<code>as</code> will ignore it and generate an absolute addressing.
This option prevents <code>as</code> from doing this, and the wrong
usage of the direct page mode will raise an error.
</p>
<a name="index-_002d_002dshort_002dbranches"></a>
</dd>
<dt><code>--short-branches</code></dt>
<dd><p>The &lsquo;<samp>--short-branches</samp>&rsquo; option turns off the translation of
relative branches into absolute branches when the branch offset is
out of range. By default <code>as</code> transforms the relative
branch (&lsquo;<samp>bsr</samp>&rsquo;, &lsquo;<samp>bgt</samp>&rsquo;, &lsquo;<samp>bge</samp>&rsquo;, &lsquo;<samp>beq</samp>&rsquo;, &lsquo;<samp>bne</samp>&rsquo;,
&lsquo;<samp>ble</samp>&rsquo;, &lsquo;<samp>blt</samp>&rsquo;, &lsquo;<samp>bhi</samp>&rsquo;, &lsquo;<samp>bcc</samp>&rsquo;, &lsquo;<samp>bls</samp>&rsquo;,
&lsquo;<samp>bcs</samp>&rsquo;, &lsquo;<samp>bmi</samp>&rsquo;, &lsquo;<samp>bvs</samp>&rsquo;, &lsquo;<samp>bvs</samp>&rsquo;, &lsquo;<samp>bra</samp>&rsquo;) into
an absolute branch when the offset is out of the -128 .. 127 range.
In that case, the &lsquo;<samp>bsr</samp>&rsquo; instruction is translated into a
&lsquo;<samp>jsr</samp>&rsquo;, the &lsquo;<samp>bra</samp>&rsquo; instruction is translated into a
&lsquo;<samp>jmp</samp>&rsquo; and the conditional branches instructions are inverted and
followed by a &lsquo;<samp>jmp</samp>&rsquo;. This option disables these translations
and <code>as</code> will generate an error if a relative branch
is out of range. This option does not affect the optimization
associated to the &lsquo;<samp>jbra</samp>&rsquo;, &lsquo;<samp>jbsr</samp>&rsquo; and &lsquo;<samp>jbXX</samp>&rsquo; pseudo opcodes.
</p>
<a name="index-_002d_002dforce_002dlong_002dbranches"></a>
</dd>
<dt><code>--force-long-branches</code></dt>
<dd><p>The &lsquo;<samp>--force-long-branches</samp>&rsquo; option forces the translation of
relative branches into absolute branches. This option does not affect
the optimization associated to the &lsquo;<samp>jbra</samp>&rsquo;, &lsquo;<samp>jbsr</samp>&rsquo; and
&lsquo;<samp>jbXX</samp>&rsquo; pseudo opcodes.
</p>
<a name="index-_002d_002dprint_002dinsn_002dsyntax"></a>
</dd>
<dt><code>--print-insn-syntax</code></dt>
<dd><p>You can use the &lsquo;<samp>--print-insn-syntax</samp>&rsquo; option to obtain the
syntax description of the instruction when an error is detected.
</p>
<a name="index-_002d_002dprint_002dopcodes"></a>
</dd>
<dt><code>--print-opcodes</code></dt>
<dd><p>The &lsquo;<samp>--print-opcodes</samp>&rsquo; option prints the list of all the
instructions with their syntax. The first item of each line
represents the instruction name and the rest of the line indicates
the possible operands for that instruction. The list is printed
in alphabetical order. Once the list is printed <code>as</code>
exits.
</p>
<a name="index-_002d_002dgenerate_002dexample"></a>
</dd>
<dt><code>--generate-example</code></dt>
<dd><p>The &lsquo;<samp>--generate-example</samp>&rsquo; option is similar to &lsquo;<samp>--print-opcodes</samp>&rsquo;
but it generates an example for each instruction instead.
</p></dd>
</dl>

<hr>
<div class="header">
<p>
Next: <a href="M68HC11_002dSyntax.html#M68HC11_002dSyntax" accesskey="n" rel="next">M68HC11-Syntax</a>, Up: <a href="M68HC11_002dDependent.html#M68HC11_002dDependent" accesskey="u" rel="up">M68HC11-Dependent</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="AS-Index.html#AS-Index" title="Index" rel="index">Index</a>]</p>
</div>



</body>
</html>
