<html lang="en">
<head>
<title>RX-Directives - Using as</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="Using as">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="RX_002dDependent.html#RX_002dDependent" title="RX-Dependent">
<link rel="prev" href="RX_002dModifiers.html#RX_002dModifiers" title="RX-Modifiers">
<link rel="next" href="RX_002dFloat.html#RX_002dFloat" title="RX-Float">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
This file documents the GNU Assembler "as".

Copyright (C) 1991-2019 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''.

-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
  pre.display { font-family:inherit }
  pre.format  { font-family:inherit }
  pre.smalldisplay { font-family:inherit; font-size:smaller }
  pre.smallformat  { font-family:inherit; font-size:smaller }
  pre.smallexample { font-size:smaller }
  pre.smalllisp    { font-size:smaller }
  span.sc    { font-variant:small-caps }
  span.roman { font-family:serif; font-weight:normal; } 
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
--></style>
</head>
<body>
<div class="node">
<a name="RX-Directives"></a>
<a name="RX_002dDirectives"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="RX_002dFloat.html#RX_002dFloat">RX-Float</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="RX_002dModifiers.html#RX_002dModifiers">RX-Modifiers</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="RX_002dDependent.html#RX_002dDependent">RX-Dependent</a>
<hr>
</div>

<h4 class="subsection">9.40.3 Assembler Directives</h4>

<p><a name="index-assembler-directives_002c-RX-2035"></a><a name="index-RX-assembler-directives-2036"></a>
The RX version of <code>as</code> has the following specific
assembler directives:

     <dl>
<dt><code>.3byte</code><dd><a name="index-assembler-directive-_002e3byte_002c-RX-2037"></a><a name="index-RX-assembler-directive-_002e3byte-2038"></a>Inserts a 3-byte value into the output file at the current location.

     <br><dt><code>.fetchalign</code><dd><a name="index-assembler-directive-_002efetchalign_002c-RX-2039"></a><a name="index-RX-assembler-directive-_002efetchalign-2040"></a>If the next opcode following this directive spans a fetch line
boundary (8 byte boundary), the opcode is aligned to that boundary. 
If the next opcode does not span a fetch line, this directive has no
effect.  Note that one or more labels may be between this directive
and the opcode; those labels are aligned as well.  Any inserted bytes
due to alignment will form a NOP opcode.

   </dl>

   </body></html>

