<html lang="en">
<head>
<title>SH-Regs - 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="SH-Syntax.html#SH-Syntax" title="SH Syntax">
<link rel="prev" href="SH_002dChars.html#SH_002dChars" title="SH-Chars">
<link rel="next" href="SH_002dAddressing.html#SH_002dAddressing" title="SH-Addressing">
<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="SH-Regs"></a>
<a name="SH_002dRegs"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="SH_002dAddressing.html#SH_002dAddressing">SH-Addressing</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="SH_002dChars.html#SH_002dChars">SH-Chars</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="SH-Syntax.html#SH-Syntax">SH Syntax</a>
<hr>
</div>

<h5 class="subsubsection">9.43.2.2 Register Names</h5>

<p><a name="index-SH-registers-2123"></a><a name="index-registers_002c-SH-2124"></a>You can use the predefined symbols &lsquo;<samp><span class="samp">r0</span></samp>&rsquo;, &lsquo;<samp><span class="samp">r1</span></samp>&rsquo;, &lsquo;<samp><span class="samp">r2</span></samp>&rsquo;,
&lsquo;<samp><span class="samp">r3</span></samp>&rsquo;, &lsquo;<samp><span class="samp">r4</span></samp>&rsquo;, &lsquo;<samp><span class="samp">r5</span></samp>&rsquo;, &lsquo;<samp><span class="samp">r6</span></samp>&rsquo;, &lsquo;<samp><span class="samp">r7</span></samp>&rsquo;, &lsquo;<samp><span class="samp">r8</span></samp>&rsquo;,
&lsquo;<samp><span class="samp">r9</span></samp>&rsquo;, &lsquo;<samp><span class="samp">r10</span></samp>&rsquo;, &lsquo;<samp><span class="samp">r11</span></samp>&rsquo;, &lsquo;<samp><span class="samp">r12</span></samp>&rsquo;, &lsquo;<samp><span class="samp">r13</span></samp>&rsquo;, &lsquo;<samp><span class="samp">r14</span></samp>&rsquo;,
and &lsquo;<samp><span class="samp">r15</span></samp>&rsquo; to refer to the SH registers.

   <p>The SH also has these control registers:

     <dl>
<dt><code>pr</code><dd>procedure register (holds return address)

     <br><dt><code>pc</code><dd>program counter

     <br><dt><code>mach</code><dt><code>macl</code><dd>high and low multiply accumulator registers

     <br><dt><code>sr</code><dd>status register

     <br><dt><code>gbr</code><dd>global base register

     <br><dt><code>vbr</code><dd>vector base register (for interrupt vectors)
</dl>

   </body></html>

