blob: 4af4141b05efb01109400cbed9a4a0e2a44dba60 [file] [log] [blame]
<!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: D10V-Size</title>
<meta name="description" content="Using as: D10V-Size">
<meta name="keywords" content="Using as: D10V-Size">
<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="D10V_002dSyntax.html#D10V_002dSyntax" rel="up" title="D10V-Syntax">
<link href="D10V_002dSubs.html#D10V_002dSubs" rel="next" title="D10V-Subs">
<link href="D10V_002dSyntax.html#D10V_002dSyntax" rel="prev" title="D10V-Syntax">
<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="D10V_002dSize"></a>
<div class="header">
<p>
Next: <a href="D10V_002dSubs.html#D10V_002dSubs" accesskey="n" rel="next">D10V-Subs</a>, Up: <a href="D10V_002dSyntax.html#D10V_002dSyntax" accesskey="u" rel="up">D10V-Syntax</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="Size-Modifiers"></a>
<h4 class="subsubsection">9.9.2.1 Size Modifiers</h4>
<a name="index-D10V-size-modifiers"></a>
<a name="index-size-modifiers_002c-D10V"></a>
<p>The D10V version of <code>as</code> uses the instruction names in the D10V
Architecture Manual. However, the names in the manual are sometimes ambiguous.
There are instruction names that can assemble to a short or long form opcode.
How does the assembler pick the correct form? <code>as</code> will always pick the
smallest form if it can. When dealing with a symbol that is not defined yet when a
line is being assembled, it will always use the long form. If you need to force the
assembler to use either the short or long form of the instruction, you can append
either &lsquo;<samp>.s</samp>&rsquo; (short) or &lsquo;<samp>.l</samp>&rsquo; (long) to it. For example, if you are writing
an assembly program and you want to do a branch to a symbol that is defined later
in your program, you can write &lsquo;<samp>bra.s foo</samp>&rsquo;.
Objdump and GDB will always append &lsquo;<samp>.s</samp>&rsquo; or &lsquo;<samp>.l</samp>&rsquo; to instructions which
have both short and long forms.
</p>
</body>
</html>