<!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: VAX-branch</title>

<meta name="description" content="Using as: VAX-branch">
<meta name="keywords" content="Using as: VAX-branch">
<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="Vax_002dDependent.html#Vax_002dDependent" rel="up" title="Vax-Dependent">
<link href="VAX_002doperands.html#VAX_002doperands" rel="next" title="VAX-operands">
<link href="VAX_002dopcodes.html#VAX_002dopcodes" rel="prev" title="VAX-opcodes">
<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="VAX_002dbranch"></a>
<div class="header">
<p>
Next: <a href="VAX_002doperands.html#VAX_002doperands" accesskey="n" rel="next">VAX-operands</a>, Previous: <a href="VAX_002dopcodes.html#VAX_002dopcodes" accesskey="p" rel="prev">VAX-opcodes</a>, Up: <a href="Vax_002dDependent.html#Vax_002dDependent" accesskey="u" rel="up">Vax-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="VAX-Branch-Improvement"></a>
<h4 class="subsection">9.48.5 VAX Branch Improvement</h4>

<a name="index-VAX-branch-improvement"></a>
<a name="index-branch-improvement_002c-VAX"></a>
<a name="index-pseudo_002dops-for-branch_002c-VAX"></a>
<p>Certain pseudo opcodes are permitted.  They are for branch
instructions.  They expand to the shortest branch instruction that
reaches the target.  Generally these mnemonics are made by
substituting &lsquo;<samp>j</samp>&rsquo; for &lsquo;<samp>b</samp>&rsquo; at the start of a DEC mnemonic.
This feature is included both for compatibility and to help
compilers.  If you do not need this feature, avoid these
opcodes.  Here are the mnemonics, and the code they can expand into.
</p>
<dl compact="compact">
<dt><code>jbsb</code></dt>
<dd><p>&lsquo;<samp>Jsb</samp>&rsquo; is already an instruction mnemonic, so we chose &lsquo;<samp>jbsb</samp>&rsquo;.
</p><dl compact="compact">
<dt>(byte displacement)</dt>
<dd><p><kbd>bsbb &hellip;</kbd>
</p></dd>
<dt>(word displacement)</dt>
<dd><p><kbd>bsbw &hellip;</kbd>
</p></dd>
<dt>(long displacement)</dt>
<dd><p><kbd>jsb &hellip;</kbd>
</p></dd>
</dl>
</dd>
<dt><code>jbr</code></dt>
<dt><code>jr</code></dt>
<dd><p>Unconditional branch.
</p><dl compact="compact">
<dt>(byte displacement)</dt>
<dd><p><kbd>brb &hellip;</kbd>
</p></dd>
<dt>(word displacement)</dt>
<dd><p><kbd>brw &hellip;</kbd>
</p></dd>
<dt>(long displacement)</dt>
<dd><p><kbd>jmp &hellip;</kbd>
</p></dd>
</dl>
</dd>
<dt><code>j<var>COND</var></code></dt>
<dd><p><var>COND</var> may be any one of the conditional branches
<code>neq</code>, <code>nequ</code>, <code>eql</code>, <code>eqlu</code>, <code>gtr</code>,
<code>geq</code>, <code>lss</code>, <code>gtru</code>, <code>lequ</code>, <code>vc</code>, <code>vs</code>,
<code>gequ</code>, <code>cc</code>, <code>lssu</code>, <code>cs</code>.
<var>COND</var> may also be one of the bit tests
<code>bs</code>, <code>bc</code>, <code>bss</code>, <code>bcs</code>, <code>bsc</code>, <code>bcc</code>,
<code>bssi</code>, <code>bcci</code>, <code>lbs</code>, <code>lbc</code>.
<var>NOTCOND</var> is the opposite condition to <var>COND</var>.
</p><dl compact="compact">
<dt>(byte displacement)</dt>
<dd><p><kbd>b<var>COND</var> &hellip;</kbd>
</p></dd>
<dt>(word displacement)</dt>
<dd><p><kbd>b<var>NOTCOND</var> foo ; brw &hellip; ; foo:</kbd>
</p></dd>
<dt>(long displacement)</dt>
<dd><p><kbd>b<var>NOTCOND</var> foo ; jmp &hellip; ; foo:</kbd>
</p></dd>
</dl>
</dd>
<dt><code>jacb<var>X</var></code></dt>
<dd><p><var>X</var> may be one of <code>b d f g h l w</code>.
</p><dl compact="compact">
<dt>(word displacement)</dt>
<dd><p><kbd><var>OPCODE</var> &hellip;</kbd>
</p></dd>
<dt>(long displacement)</dt>
<dd><div class="example">
<pre class="example"><var>OPCODE</var> &hellip;, foo ;
brb bar ;
foo: jmp &hellip; ;
bar:
</pre></div>
</dd>
</dl>
</dd>
<dt><code>jaob<var>YYY</var></code></dt>
<dd><p><var>YYY</var> may be one of <code>lss leq</code>.
</p></dd>
<dt><code>jsob<var>ZZZ</var></code></dt>
<dd><p><var>ZZZ</var> may be one of <code>geq gtr</code>.
</p><dl compact="compact">
<dt>(byte displacement)</dt>
<dd><p><kbd><var>OPCODE</var> &hellip;</kbd>
</p></dd>
<dt>(word displacement)</dt>
<dd><div class="example">
<pre class="example"><var>OPCODE</var> &hellip;, foo ;
brb bar ;
foo: brw <var>destination</var> ;
bar:
</pre></div>
</dd>
<dt>(long displacement)</dt>
<dd><div class="example">
<pre class="example"><var>OPCODE</var> &hellip;, foo ;
brb bar ;
foo: jmp <var>destination</var> ;
bar:
</pre></div>
</dd>
</dl>
</dd>
<dt><code>aobleq</code></dt>
<dt><code>aoblss</code></dt>
<dt><code>sobgeq</code></dt>
<dt><code>sobgtr</code></dt>
<dd><dl compact="compact">
<dt>(byte displacement)</dt>
<dd><p><kbd><var>OPCODE</var> &hellip;</kbd>
</p></dd>
<dt>(word displacement)</dt>
<dd><div class="example">
<pre class="example"><var>OPCODE</var> &hellip;, foo ;
brb bar ;
foo: brw <var>destination</var> ;
bar:
</pre></div>
</dd>
<dt>(long displacement)</dt>
<dd><div class="example">
<pre class="example"><var>OPCODE</var> &hellip;, foo ;
brb bar ;
foo: jmp <var>destination</var> ;
bar:
</pre></div>
</dd>
</dl>
</dd>
</dl>

<hr>
<div class="header">
<p>
Next: <a href="VAX_002doperands.html#VAX_002doperands" accesskey="n" rel="next">VAX-operands</a>, Previous: <a href="VAX_002dopcodes.html#VAX_002dopcodes" accesskey="p" rel="prev">VAX-opcodes</a>, Up: <a href="Vax_002dDependent.html#Vax_002dDependent" accesskey="u" rel="up">Vax-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>
