<html lang="en">
<head>
<title>Xtensa Branch Relaxation - 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="Xtensa-Relaxation.html#Xtensa-Relaxation" title="Xtensa Relaxation">
<link rel="next" href="Xtensa-Call-Relaxation.html#Xtensa-Call-Relaxation" title="Xtensa Call Relaxation">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
This file documents the GNU Assembler "as".

Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
2000, 2001, 2002, 2006, 2007, 2008, 2009, 2010 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>
<link rel="stylesheet" type="text/css" href="../cs.css">
</head>
<body>
<div class="node">
<a name="Xtensa-Branch-Relaxation"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="Xtensa-Call-Relaxation.html#Xtensa-Call-Relaxation">Xtensa Call Relaxation</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Xtensa-Relaxation.html#Xtensa-Relaxation">Xtensa Relaxation</a>
<hr>
</div>

<h5 class="subsubsection">9.42.4.1 Conditional Branch Relaxation</h5>

<p><a name="index-relaxation-of-branch-instructions-2025"></a><a name="index-branch-instructions_002c-relaxation-2026"></a>
When the target of a branch is too far away from the branch itself,
i.e., when the offset from the branch to the target is too large to fit
in the immediate field of the branch instruction, it may be necessary to
replace the branch with a branch around a jump.  For example,

<pre class="smallexample">         beqz    a2, L
</pre>
   <p>may result in:

<pre class="smallexample">         bnez.n  a2, M
         j L
     M:
</pre>
   <p>(The <code>BNEZ.N</code> instruction would be used in this example only if the
density option is available.  Otherwise, <code>BNEZ</code> would be used.)

   <p>This relaxation works well because the unconditional jump instruction
has a much larger offset range than the various conditional branches. 
However, an error will occur if a branch target is beyond the range of a
jump instruction.  <samp><span class="command">as</span></samp> cannot relax unconditional jumps. 
Similarly, an error will occur if the original input contains an
unconditional jump to a target that is out of range.

   <p>Branch relaxation is enabled by default.  It can be disabled by using
underscore prefixes (see <a href="Xtensa-Opcodes.html#Xtensa-Opcodes">Opcode Names</a>), the
&lsquo;<samp><span class="samp">--no-transform</span></samp>&rsquo; command-line option (see <a href="Xtensa-Options.html#Xtensa-Options">Command Line Options</a>), or the <code>no-transform</code> directive
(see <a href="Transform-Directive.html#Transform-Directive">transform</a>).

   </body></html>

