<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> <head> <title>.:: The Converted Virtual Machine Instruction Set ::.</title> </head> <body BGCOLOR="#DbDbDb" text="#000000" LINK="#0C0C0C" VLINK="#070707" ALINK="#007007"> <h1 align="center"> Branch instructions </h1><br><hr><p> <table border="0" align="center" width="80%"> <tr><td> <!--LEFT BLOCK--> <table border="0" bordercolor="#CDCDCD" align="left" cellspacing="3" cellpadding="5" cols="4"> <tr> <td> <a href="#beq"><b>beq</b></a></td><td> <a href="#bge"><b>bge</b></a></td><td> <a href="#bge_un"><b>bge_un</b></a></td><td> <a href="#bgt"><b>bgt</b></a></td></tr><tr><td> <a href="#bgt_un"><b>bgt_un</b></a></td><td> <a href="#ble"><b>ble</b></a></td><td> <a href="#ble_un"><b>ble_un</b></a></td><td> <a href="#blt"><b>blt</b></a></td></tr><tr><td> <a href="#blt_un"><b>blt_un</b></a></td><td> <a href="#bne"><b>bne</b></a></td><td> <a href="#br"><b>br</b></a></td><td> <a href="#br_long"><b>br_long</b></a></td></tr><tr><td> <a href="#br_peq"><b>br_peq</b></a></td><td> <a href="#br_pne"><b>br_pne</b></a></td><td> <a href="#brfalse"><b>brfalse</b></a></td><td> <a href="#brnonnull"><b>brnonnull</b></a></td></tr><tr><td> <a href="#brnull"><b>brnull</b></a></td><td> <a href="#brtrue"><b>brtrue</b></a></td><td> <a href="#switch"><b>switch</b></a></td><td> </td></tr></table></td></tr></table><p><hr><p><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="beq"> <font color="#FFFFFF" size="+5"> beq</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Branch conditionally if <code>int32</code> values are equal</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>beq</i></td></tr><tr><td align="center" width="100"><i>offset</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr></table></td><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_long</i></td></tr><tr><td align="center" width="100"><i>beq </i></td></tr><tr><td align="center" width="100"><i>offset1</i></td></tr><tr><td align="center" width="100"><i>offset2</i></td></tr><tr><td align="center" width="100"><i>offset3</i></td></tr><tr><td align="center" width="100"><i>offset4</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{beq}</i></td></tr><tr><td align="center" width="100"><i>dest</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>beq</i> = 162 (0xA2)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., value1, value2</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Both <i>value1</i> and <i>value2</i> are popped from the stack as type <code>int32</code>. If the values are equal, then the program branches to <i>pc + offset</i>. Otherwise, the program continues with the next instruction.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">This instruction must not be confused with <i>br_peq</i>. Values of type <code>int32</code> and <code>ptr</code> do not necessarily occupy the same amount of space in a stack word on all platforms.</td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="bge"> <font color="#FFFFFF" size="+5"> bge</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Branch conditionally if <code>int32</code> values are greater than or equal</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>bge</i></td></tr><tr><td align="center" width="100"><i>offset</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr></table></td><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_long</i></td></tr><tr><td align="center" width="100"><i>bge </i></td></tr><tr><td align="center" width="100"><i>offset1</i></td></tr><tr><td align="center" width="100"><i>offset2</i></td></tr><tr><td align="center" width="100"><i>offset3</i></td></tr><tr><td align="center" width="100"><i>offset4</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{bge}</i></td></tr><tr><td align="center" width="100"><i>dest</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>bge</i> = 170 (0xAA)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., value1, value2</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Both <i>value1</i> and <i>value2</i> are popped from the stack as type <code>int32</code>. If <i>value1</i> is greater than or equal to <i>value2</i>, then the program branches to <i>pc + offset</i>. Otherwise, the program continues with the next instruction.</td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="bge_un"> <font color="#FFFFFF" size="+5"> bge_un</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Branch conditionally if <code>uint32</code> values are greater than or equal</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>bge_un</i></td></tr><tr><td align="center" width="100"><i>offset</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr></table></td><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_long</i></td></tr><tr><td align="center" width="100"><i>bge_un </i></td></tr><tr><td align="center" width="100"><i>offset1</i></td></tr><tr><td align="center" width="100"><i>offset2</i></td></tr><tr><td align="center" width="100"><i>offset3</i></td></tr><tr><td align="center" width="100"><i>offset4</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{bge_un}</i></td></tr><tr><td align="center" width="100"><i>dest</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>bge_un</i> = 171 (0xAB)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., value1, value2</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Both <i>value1</i> and <i>value2</i> are popped from the stack as type <i>uint32</i>. If <i>value1</i> is greater than or equal to <i>value2</i>, then the program branches to <i>pc + offset</i>. Otherwise, the program continues with the next instruction.</td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="bgt"> <font color="#FFFFFF" size="+5"> bgt</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Branch conditionally if <code>int32</code> values are greater than</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>bgt</i></td></tr><tr><td align="center" width="100"><i>offset</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr></table></td><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_long</i></td></tr><tr><td align="center" width="100"><i>bgt </i></td></tr><tr><td align="center" width="100"><i>offset1</i></td></tr><tr><td align="center" width="100"><i>offset2</i></td></tr><tr><td align="center" width="100"><i>offset3</i></td></tr><tr><td align="center" width="100"><i>offset4</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{bgt}</i></td></tr><tr><td align="center" width="100"><i>dest</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>bgt</i> = 168 (0xA8)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., value1, value2</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Both <i>value1</i> and <i>value2</i> are popped from the stack as type <code>int32</code>. If <i>value1</i> is greater than <i>value2</i>, then the program branches to <i>pc + offset</i>. Otherwise, the program continues with the next instruction.</td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="bgt_un"> <font color="#FFFFFF" size="+5"> bgt_un</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Branch conditionally if <code>uint32</code> values are greater than</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>bgt_un</i></td></tr><tr><td align="center" width="100"><i>offset</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr></table></td><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_long</i></td></tr><tr><td align="center" width="100"><i>bgt_un </i></td></tr><tr><td align="center" width="100"><i>offset1</i></td></tr><tr><td align="center" width="100"><i>offset2</i></td></tr><tr><td align="center" width="100"><i>offset3</i></td></tr><tr><td align="center" width="100"><i>offset4</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{bgt_un}</i></td></tr><tr><td align="center" width="100"><i>dest</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>bgt_un</i> = 169 (0xA9)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., value1, value2</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Both <i>value1</i> and <i>value2</i> are popped from the stack as type <i>uint32</i>. If <i>value1</i> is greater than <i>value2</i>, then the program branches to <i>pc + offset</i>. Otherwise, the program continues with the next instruction.</td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="ble"> <font color="#FFFFFF" size="+5"> ble</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Branch conditionally if <code>int32</code> values are less than or equal</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>ble</i></td></tr><tr><td align="center" width="100"><i>offset</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr></table></td><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_long</i></td></tr><tr><td align="center" width="100"><i>ble </i></td></tr><tr><td align="center" width="100"><i>offset1</i></td></tr><tr><td align="center" width="100"><i>offset2</i></td></tr><tr><td align="center" width="100"><i>offset3</i></td></tr><tr><td align="center" width="100"><i>offset4</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{ble}</i></td></tr><tr><td align="center" width="100"><i>dest</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>ble</i> = 166 (0xA6)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., value1, value2</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Both <i>value1</i> and <i>value2</i> are popped from the stack as type <code>int32</code>. If <i>value1</i> is less than or equal to <i>value2</i>, then the program branches to <i>pc + offset</i>. Otherwise, the program continues with the next instruction.</td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="ble_un"> <font color="#FFFFFF" size="+5"> ble_un</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Branch conditionally if <code>uint32</code> values are less than or equal</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>ble_un</i></td></tr><tr><td align="center" width="100"><i>offset</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr></table></td><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_long</i></td></tr><tr><td align="center" width="100"><i>ble_un </i></td></tr><tr><td align="center" width="100"><i>offset1</i></td></tr><tr><td align="center" width="100"><i>offset2</i></td></tr><tr><td align="center" width="100"><i>offset3</i></td></tr><tr><td align="center" width="100"><i>offset4</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{ble_un}</i></td></tr><tr><td align="center" width="100"><i>dest</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>ble_un</i> = 167 (0xA7)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., value1, value2</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Both <i>value1</i> and <i>value2</i> are popped from the stack as type <i>uint32</i>. If <i>value1</i> is less than or equal to <i>value2</i>, then the program branches to <i>pc + offset</i>. Otherwise, the program continues with the next instruction.</td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="blt"> <font color="#FFFFFF" size="+5"> blt</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Branch conditionally if <code>int32</code> values are less than</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>blt</i></td></tr><tr><td align="center" width="100"><i>offset</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr></table></td><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_long</i></td></tr><tr><td align="center" width="100"><i>blt </i></td></tr><tr><td align="center" width="100"><i>offset1</i></td></tr><tr><td align="center" width="100"><i>offset2</i></td></tr><tr><td align="center" width="100"><i>offset3</i></td></tr><tr><td align="center" width="100"><i>offset4</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{blt}</i></td></tr><tr><td align="center" width="100"><i>dest</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>blt</i> = 164 (0xA4)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., value1, value2</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Both <i>value1</i> and <i>value2</i> are popped from the stack as type <code>int32</code>. If <i>value1</i> is less than <i>value2</i>, then the program branches to <i>pc + offset</i>. Otherwise, the program continues with the next instruction.</td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="blt_un"> <font color="#FFFFFF" size="+5"> blt_un</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Branch conditionally if <code>uint32</code> values are less than</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>blt_un</i></td></tr><tr><td align="center" width="100"><i>offset</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr></table></td><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_long</i></td></tr><tr><td align="center" width="100"><i>blt_un </i></td></tr><tr><td align="center" width="100"><i>offset1</i></td></tr><tr><td align="center" width="100"><i>offset2</i></td></tr><tr><td align="center" width="100"><i>offset3</i></td></tr><tr><td align="center" width="100"><i>offset4</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{blt_un}</i></td></tr><tr><td align="center" width="100"><i>dest</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>blt_un</i> = 165 (0xA5)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., value1, value2</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Both <i>value1</i> and <i>value2</i> are popped from the stack as type <i>uint32</i>. If <i>value1</i> is less than <i>value2</i>, then the program branches to <i>pc + offset</i>. Otherwise, the program continues with the next instruction.</td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="bne"> <font color="#FFFFFF" size="+5"> bne</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Branch conditionally if <code>int32</code> values are not equal</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>bne</i></td></tr><tr><td align="center" width="100"><i>offset</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr></table></td><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_long</i></td></tr><tr><td align="center" width="100"><i>bne </i></td></tr><tr><td align="center" width="100"><i>offset1</i></td></tr><tr><td align="center" width="100"><i>offset2</i></td></tr><tr><td align="center" width="100"><i>offset3</i></td></tr><tr><td align="center" width="100"><i>offset4</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{bne}</i></td></tr><tr><td align="center" width="100"><i>dest</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>bne</i> = 163 (0xA3)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., value1, value2</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Both <i>value1</i> and <i>value2</i> are popped from the stack as type <code>int32</code>. If the values are not equal, then the program branches to <i>pc + offset</i>. Otherwise, the program continues with the next instruction.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">This instruction must not be confused with <i>br_pne</i>. Values of type <code>int32</code> and <code>ptr</code> do not necessarily occupy the same amount of space in a stack word on all platforms.</td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="br"> <font color="#FFFFFF" size="+5"> br</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Branch unconditionally</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br</i></td></tr><tr><td align="center" width="100"><i>offset</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr></table></td><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_long</i></td></tr><tr><td align="center" width="100"><i>br </i></td></tr><tr><td align="center" width="100"><i>offset1</i></td></tr><tr><td align="center" width="100"><i>offset2</i></td></tr><tr><td align="center" width="100"><i>offset3</i></td></tr><tr><td align="center" width="100"><i>offset4</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{br}</i></td></tr><tr><td align="center" width="100"><i>dest</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>br</i> = 161 (0xA1)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>...</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">In the first form, the program branches to the address <i>pc + offset</i>, where <i>pc</i> is the address of the first byte of the <i>br</i> instruction, and <i>offset</i> is a signed 8-bit quantity.<p> In the second form, <i>offset</i> is constructed by interpreting <i>offset1</i>, ..., <i>offset4</i> as a 32-bit signed quantity in little-endian order.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">Branch instructions are always 6 bytes long, but may contain either short or long forms of a branch. The short form is always "<i>opcode offset pad</i>" where <i>offset</i> is an 8-bit offset and <i>pad</i> is 4 bytes of padding. The long form is always "<i>br.long opcode loffset</i>" where <i>loffset</i> is a 32-bit offset. This allows the code generator to output branch instructions with a uniform length, while the interpreter runs faster on short branches.</td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="br_long"> <font color="#FFFFFF" size="+5"> br_long</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Modify a branch instruction to its long form</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_long</i></td></tr><tr><td align="center" width="100"><i>opcode</i></td></tr><tr><td align="center" width="100"><i>...</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>br_long</i> = 178 (0xB2)<br></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">The <i>br_long</i> instruction modifies a branch instruction to take longer operands.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">The documentation for other branch instructions includes information on their long forms.<p> There is no direct format for this instruction, because <i>br_long</i> is not required for the direct encoding.</td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="br_peq"> <font color="#FFFFFF" size="+5"> br_peq</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Branch conditionally if <code>ptr</code> values are equal</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_peq</i></td></tr><tr><td align="center" width="100"><i>offset</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr></table></td><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_long</i></td></tr><tr><td align="center" width="100"><i>br_peq </i></td></tr><tr><td align="center" width="100"><i>offset1</i></td></tr><tr><td align="center" width="100"><i>offset2</i></td></tr><tr><td align="center" width="100"><i>offset3</i></td></tr><tr><td align="center" width="100"><i>offset4</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{br_peq}</i></td></tr><tr><td align="center" width="100"><i>dest</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>br_peq</i> = 176 (0xB0)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., value1, value2</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Both <i>value1</i> and <i>value2</i> are popped from the stack as type <i>ptr</i>. If the values are equal, then the program branches to <i>pc + offset</i>. Otherwise, the program continues with the next instruction.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">This instruction must not be confused with <i>beq</i>. Values of type <code>int32</code> and <code>ptr</code> do not necessarily occupy the same amount of space in a stack word on all platforms.</td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="br_pne"> <font color="#FFFFFF" size="+5"> br_pne</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Branch conditionally if <code>ptr</code> values are not equal</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_pne</i></td></tr><tr><td align="center" width="100"><i>offset</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr></table></td><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_long</i></td></tr><tr><td align="center" width="100"><i>br_pne </i></td></tr><tr><td align="center" width="100"><i>offset1</i></td></tr><tr><td align="center" width="100"><i>offset2</i></td></tr><tr><td align="center" width="100"><i>offset3</i></td></tr><tr><td align="center" width="100"><i>offset4</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{br_pne}</i></td></tr><tr><td align="center" width="100"><i>dest</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>br_pne</i> = 177 (0xB1)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., value1, value2</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Both <i>value1</i> and <i>value2</i> are popped from the stack as type <i>ptr</i>. If the values are not equal, then the program branches to <i>pc + offset</i>. Otherwise, the program continues with the next instruction.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">This instruction must not be confused with <i>bne</i>. Values of type <code>int32</code> and <code>ptr</code> do not necessarily occupy the same amount of space in a stack word on all platforms.</td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="brfalse"> <font color="#FFFFFF" size="+5"> brfalse</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Branch conditionally if <code>int32</code> value is zero</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>brfalse</i></td></tr><tr><td align="center" width="100"><i>offset</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr></table></td><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_long</i></td></tr><tr><td align="center" width="100"><i>brfalse </i></td></tr><tr><td align="center" width="100"><i>offset1</i></td></tr><tr><td align="center" width="100"><i>offset2</i></td></tr><tr><td align="center" width="100"><i>offset3</i></td></tr><tr><td align="center" width="100"><i>offset4</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{brfalse}</i></td></tr><tr><td align="center" width="100"><i>dest</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>brfalse</i> = 173 (0xAD)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., value</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">The <i>value</i> is popped from the stack as type <code>int32</code>. If <i>value</i> is zero, then the program branches to <i>pc + offset</i>. Otherwise, the program continues with the next instruction.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">This instruction must not be confused with <code>brnull</code>. Values of type <code>int32</code> and <code>ptr</code> do not necessarily occupy the same amount of space in a stack word on all platforms.</td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="brnonnull"> <font color="#FFFFFF" size="+5"> brnonnull</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Branch conditionally if <code>ptr</code> value is not <code>null</code></td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>brnonnull</i></td></tr><tr><td align="center" width="100"><i>offset</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr></table></td><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_long</i></td></tr><tr><td align="center" width="100"><i>brnonnull </i></td></tr><tr><td align="center" width="100"><i>offset1</i></td></tr><tr><td align="center" width="100"><i>offset2</i></td></tr><tr><td align="center" width="100"><i>offset3</i></td></tr><tr><td align="center" width="100"><i>offset4</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{brnonnull}</i></td></tr><tr><td align="center" width="100"><i>dest</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>brnonnull</i> = 175 (0xAF)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., value</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">The <i>value</i> is popped from the stack as type <i>ptr</i>. If <i>value</i> is not <code>null</code>, then the program branches to <i>pc + offset</i>. Otherwise, the program continues with the next instruction.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">This instruction must not be confused with <code>brtrue</code>. Values of type <code>int32</code> and <code>ptr</code> do not necessarily occupy the same amount of space in a stack word on all platforms.</td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="brnull"> <font color="#FFFFFF" size="+5"> brnull</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Branch conditionally if <code>ptr</code> value is <code>null</code></td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>brnull</i></td></tr><tr><td align="center" width="100"><i>offset</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr></table></td><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_long</i></td></tr><tr><td align="center" width="100"><i>brnull </i></td></tr><tr><td align="center" width="100"><i>offset1</i></td></tr><tr><td align="center" width="100"><i>offset2</i></td></tr><tr><td align="center" width="100"><i>offset3</i></td></tr><tr><td align="center" width="100"><i>offset4</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{brnull}</i></td></tr><tr><td align="center" width="100"><i>dest</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>brnull</i> = 174 (0xAE)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., value</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">The <i>value</i> is popped from the stack as type <i>ptr</i>. If <i>value</i> is <code>null</code>, then the program branches to <i>pc + offset</i>. Otherwise, the program continues with the next instruction.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">This instruction must not be confused with <code>brfalse</code>. Values of type <code>int32</code> and <code>ptr</code> do not necessarily occupy the same amount of space in a stack word on all platforms.</td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="brtrue"> <font color="#FFFFFF" size="+5"> brtrue</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Branch conditionally if <code>int32</code> value is non-zero</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>brtrue</i></td></tr><tr><td align="center" width="100"><i>offset</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr><tr><td align="center" width="100"><i>0</i></td></tr></table></td><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>br_long</i></td></tr><tr><td align="center" width="100"><i>brtrue </i></td></tr><tr><td align="center" width="100"><i>offset1</i></td></tr><tr><td align="center" width="100"><i>offset2</i></td></tr><tr><td align="center" width="100"><i>offset3</i></td></tr><tr><td align="center" width="100"><i>offset4</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{brtrue}</i></td></tr><tr><td align="center" width="100"><i>dest</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>brtrue</i> = 172 (0xAC)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., value</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">The <i>value</i> is popped from the stack as type <code>int32</code>. If <i>value</i> is non-zero, then the program branches to <i>pc + offset</i>. Otherwise, the program continues with the next instruction.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">This instruction must not be confused with <code>brnonnull</code>. Values of type <code>int32</code> and <code>ptr</code> do not necessarily occupy the same amount of space in a stack word on all platforms.</td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="switch"> <font color="#FFFFFF" size="+5"> switch</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Switch on <code>uint32</code> value</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>switch</i></td></tr><tr><td align="center" width="100"><i>max</i></td></tr><tr><td align="center" width="100"><i>defoffset</i></td></tr><tr><td align="center" width="100"><i>...</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{switch}</i></td></tr><tr><td align="center" width="100"><i>max</i></td></tr><tr><td align="center" width="100"><i>defaddr</i></td></tr><tr><td align="center" width="100"><i>...</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>switch</i> = 179 (0xB3)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., value</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">The <i>value</i> is popped from the stack as type <code>uint32</code>. If it is greater than or equal to <i>max</i>, then the program continues at <i>pc + defoffset</i>. Otherwise, the 32-bit signed value at <i>pc + 9 + value * 4</i> is fetched and added to <i>pc</i>.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">The <i>max</i> value is an unsigned 32-bit value, and the <i>defoffset</i> is a signed 32-bit value. All 32-bit values are in little-endian byte order.</td></tr></table><br><br><p align="center"> <font size="-2">Copyright © Southern Storm Software Pty Ltd 2002 <br> Licensed under GNU FDL </font></p></body></html>