neingeist
/
arduinisten
Archived
1
0
Fork 0
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.

65 lines
3.1 KiB
HTML

<html lang="en">
<head>
<title>Density Instructions - Using as</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="Using as">
<meta name="generator" content="makeinfo 4.7">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Xtensa-Optimizations.html#Xtensa-Optimizations" title="Xtensa Optimizations">
<link rel="next" href="Xtensa-Automatic-Alignment.html#Xtensa-Automatic-Alignment" title="Xtensa Automatic Alignment">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
This file documents the GNU Assembler "as".
Copyright (C) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001, 2002,
2006, 2007 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.1
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''.
man end-->
<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; }
--></style>
</head>
<body>
<div class="node">
<p>
<a name="Density-Instructions"></a>Next:&nbsp;<a rel="next" accesskey="n" href="Xtensa-Automatic-Alignment.html#Xtensa-Automatic-Alignment">Xtensa Automatic Alignment</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Xtensa-Optimizations.html#Xtensa-Optimizations">Xtensa Optimizations</a>
<hr><br>
</div>
<h5 class="subsubsection">9.36.3.1 Using Density Instructions</h5>
<p><a name="index-density-instructions-1858"></a>
The Xtensa instruction set has a code density option that provides
16-bit versions of some of the most commonly used opcodes. Use of these
opcodes can significantly reduce code size. When possible, the
assembler automatically translates instructions from the core
Xtensa instruction set into equivalent instructions from the Xtensa code
density option. This translation can be disabled by using underscore
prefixes (see <a href="Xtensa-Opcodes.html#Xtensa-Opcodes">Opcode Names</a>), by using the
<span class="samp">--no-transform</span> command-line option (see <a href="Xtensa-Options.html#Xtensa-Options">Command Line Options</a>), or by using the <code>no-transform</code> directive
(see <a href="Transform-Directive.html#Transform-Directive">transform</a>).
<p>It is a good idea <em>not</em> to use the density instructions directly.
The assembler will automatically select dense instructions where
possible. If you later need to use an Xtensa processor without the code
density option, the same assembly code will then work without modification.
</body></html>