<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html> <head> <title>goto/16</title> <link rel=stylesheet href="opcode.css"> </head> <body> <h1>goto/16</h1> <h2>Purpose</h2> <p> Unconditionally jump to the indicated instruction. </p> <p> Note: The branch offset may not be 0. (A spin loop may be legally constructed either with goto/32 or by including a nop as a target before the branch.) </p> <h2>Details</h2> <table class="instruc"> <thead> <tr> <th>Op & Format</th> <th>Mnemonic / Syntax</th> <th>Arguments</th> </tr> </thead> <tbody> <tr> <td>29 20t</td> <td>goto/16 +AAAA</td> <td><code>A:</code> signed branch offset (16 bits)<br/></td> </tr> </tbody> </table> <h2>Constraints</h2> <ul> <li> A must point to a valid bytecode instruction inside the current method. </li> <li> A must not be 0. </li> </ul> <h2>Behavior</h2> <ul> <li> The (otherwise invisible) program counter PC is set to the address of the instruction plus the given offset, that is, PC' = PC(goto) + A. </li> <li> Executions resumes at PC'. </li> </ul> <h2>Exceptions</h2> <p> None. </p> </body> </html>