<spanid="lib-statement-module"></span><h1>Lib.Statement module<aclass="headerlink"href="#module-Lib.Statement"title="Permalink to this heading"></a></h1>
<p>The base class for RISCV ASM statements is <aclass="reference internal"href="#Lib.Statement.Statement"title="Lib.Statement.Statement"><codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">Statement</span></code></a>.
It is inherited by <aclass="reference internal"href="#Lib.Statement.Comment"title="Lib.Statement.Comment"><codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">Comment</span></code></a>, <aclass="reference internal"href="#Lib.Statement.Label"title="Lib.Statement.Label"><codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">Label</span></code></a>
and <aclass="reference internal"href="#Lib.Statement.Instruction"title="Lib.Statement.Instruction"><codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">Instruction</span></code></a>. In turn, <aclass="reference internal"href="#Lib.Statement.Instruction"title="Lib.Statement.Instruction"><codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">Instruction</span></code></a>
is inherited by <aclass="reference internal"href="#Lib.Statement.Instru3A"title="Lib.Statement.Instru3A"><codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">Instru3A</span></code></a>
<spanclass="sig-prename descclassname"><spanclass="pre">Lib.Statement.</span></span><spanclass="sig-name descname"><spanclass="pre">regset_to_string</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">registerset</span></span></em><spanclass="sig-paren">)</span><spanclass="sig-return"><spanclass="sig-return-icon">→</span><spanclass="sig-return-typehint"><spanclass="pre">str</span></span></span><aclass="reference internal"href="../_modules/Lib/Statement.html#regset_to_string"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.regset_to_string"title="Permalink to this definition"></a></dt>
<dd><p>Utility function: pretty-prints a set of locations.</p>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">Lib.Statement.</span></span><spanclass="sig-name descname"><spanclass="pre">Statement</span></span><aclass="reference internal"href="../_modules/Lib/Statement.html#Statement"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Statement"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">defined</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><spanclass="sig-return"><spanclass="sig-return-icon">→</span><spanclass="sig-return-typehint"><spanclass="pre">List</span><spanclass="p"><spanclass="pre">[</span></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Operand</span></a><spanclass="p"><spanclass="pre">]</span></span></span></span><aclass="reference internal"href="../_modules/Lib/Statement.html#Statement.defined"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Statement.defined"title="Permalink to this definition"></a></dt>
<dd><p>Operands defined (written) in this instruction</p>
<spanclass="sig-name descname"><spanclass="pre">used</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><spanclass="sig-return"><spanclass="sig-return-icon">→</span><spanclass="sig-return-typehint"><spanclass="pre">List</span><spanclass="p"><spanclass="pre">[</span></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Operand</span></a><spanclass="p"><spanclass="pre">]</span></span></span></span><aclass="reference internal"href="../_modules/Lib/Statement.html#Statement.used"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Statement.used"title="Permalink to this definition"></a></dt>
<dd><p>Operands used (read) in this instruction</p>
<spanclass="sig-name descname"><spanclass="pre">substitute</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">subst</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">Dict</span><spanclass="p"><spanclass="pre">[</span></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Operand</span></a><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Operand</span></a><spanclass="p"><spanclass="pre">]</span></span></span></em><spanclass="sig-paren">)</span><spanclass="sig-return"><spanclass="sig-return-icon">→</span><spanclass="sig-return-typehint"><spanclass="pre">TStatement</span></span></span><aclass="reference internal"href="../_modules/Lib/Statement.html#Statement.substitute"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Statement.substitute"title="Permalink to this definition"></a></dt>
<dd><p>Return a new instruction, cloned from this one, replacing operands
<spanclass="sig-name descname"><spanclass="pre">with_args</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">new_args</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">List</span><spanclass="p"><spanclass="pre">[</span></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Operand</span></a><spanclass="p"><spanclass="pre">]</span></span></span></em><spanclass="sig-paren">)</span><spanclass="sig-return"><spanclass="sig-return-icon">→</span><spanclass="sig-return-typehint"><spanclass="pre">TStatement</span></span></span><aclass="reference internal"href="../_modules/Lib/Statement.html#Statement.with_args"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Statement.with_args"title="Permalink to this definition"></a></dt>
<dd><p>Return a new instruction, cloned from this one, where operands have
<spanclass="sig-name descname"><spanclass="pre">printIns</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">stream</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#Statement.printIns"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Statement.printIns"title="Permalink to this definition"></a></dt>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">Lib.Statement.</span></span><spanclass="sig-name descname"><spanclass="pre">Comment</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">comment</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">str</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#Comment"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Comment"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">comment</span></span><emclass="property"><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="pre">str</span></em><aclass="headerlink"href="#Lib.Statement.Comment.comment"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">printIns</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">stream</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#Comment.printIns"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Comment.printIns"title="Permalink to this definition"></a></dt>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">Lib.Statement.</span></span><spanclass="sig-name descname"><spanclass="pre">Label</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">name</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">str</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#Label"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Label"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">name</span></span><emclass="property"><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="pre">str</span></em><aclass="headerlink"href="#Lib.Statement.Label.name"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">printIns</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">stream</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#Label.printIns"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Label.printIns"title="Permalink to this definition"></a></dt>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">Lib.Statement.</span></span><spanclass="sig-name descname"><spanclass="pre">Instruction</span></span><aclass="reference internal"href="../_modules/Lib/Statement.html#Instruction"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Instruction"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">ins</span></span><emclass="property"><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="pre">str</span></em><aclass="headerlink"href="#Lib.Statement.Instruction.ins"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">is_read_only</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#Instruction.is_read_only"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Instruction.is_read_only"title="Permalink to this definition"></a></dt>
<dd><p>True if the instruction only reads from its operands.</p>
<p>Otherwise, the first operand is considered as the destination
<spanclass="sig-name descname"><spanclass="pre">rename</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">renamer</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Renamer"title="Lib.Operands.Renamer"><spanclass="pre">Renamer</span></a></span></em><spanclass="sig-paren">)</span><spanclass="sig-return"><spanclass="sig-return-icon">→</span><spanclass="sig-return-typehint"><spanclass="pre">None</span></span></span><aclass="reference internal"href="../_modules/Lib/Statement.html#Instruction.rename"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Instruction.rename"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">args</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><spanclass="sig-return"><spanclass="sig-return-icon">→</span><spanclass="sig-return-typehint"><spanclass="pre">List</span><spanclass="p"><spanclass="pre">[</span></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Operand</span></a><spanclass="p"><spanclass="pre">]</span></span></span></span><aclass="reference internal"href="../_modules/Lib/Statement.html#Instruction.args"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Instruction.args"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">defined</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#Instruction.defined"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Instruction.defined"title="Permalink to this definition"></a></dt>
<dd><p>Operands defined (written) in this instruction</p>
<spanclass="sig-name descname"><spanclass="pre">used</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><spanclass="sig-return"><spanclass="sig-return-icon">→</span><spanclass="sig-return-typehint"><spanclass="pre">List</span><spanclass="p"><spanclass="pre">[</span></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Operand</span></a><spanclass="p"><spanclass="pre">]</span></span></span></span><aclass="reference internal"href="../_modules/Lib/Statement.html#Instruction.used"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Instruction.used"title="Permalink to this definition"></a></dt>
<dd><p>Operands used (read) in this instruction</p>
<spanclass="sig-name descname"><spanclass="pre">printIns</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">stream</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#Instruction.printIns"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Instruction.printIns"title="Permalink to this definition"></a></dt>
<dd><p>Print the instruction on the given output.</p>
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">Lib.Statement.</span></span><spanclass="sig-name descname"><spanclass="pre">Instru3A</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">ins</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Lib.Operands.Operand</span></a></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#Instru3A"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Instru3A"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">args</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#Instru3A.args"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Instru3A.args"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">rename</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">renamer</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Renamer"title="Lib.Operands.Renamer"><spanclass="pre">Renamer</span></a></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#Instru3A.rename"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Instru3A.rename"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">substitute</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">subst</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">Dict</span><spanclass="p"><spanclass="pre">[</span></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Operand</span></a><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Operand</span></a><spanclass="p"><spanclass="pre">]</span></span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#Instru3A.substitute"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Instru3A.substitute"title="Permalink to this definition"></a></dt>
<dd><p>Return a new instruction, cloned from this one, replacing operands
<spanclass="sig-name descname"><spanclass="pre">with_args</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">new_args</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">List</span><spanclass="p"><spanclass="pre">[</span></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Operand</span></a><spanclass="p"><spanclass="pre">]</span></span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#Instru3A.with_args"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.Instru3A.with_args"title="Permalink to this definition"></a></dt>
<dd><p>Return a new instruction, cloned from this one, where operands have
<emclass="property"><spanclass="pre">class</span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">Lib.Statement.</span></span><spanclass="sig-name descname"><spanclass="pre">AbsoluteJump</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">label</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="#Lib.Statement.Label"title="Lib.Statement.Label"><spanclass="pre">Label</span></a></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#AbsoluteJump"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.AbsoluteJump"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">ins</span></span><emclass="property"><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="pre">str</span></em><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'j'</span></em><aclass="headerlink"href="#Lib.Statement.AbsoluteJump.ins"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">label</span></span><emclass="property"><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><aclass="reference internal"href="#Lib.Statement.Label"title="Lib.Statement.Label"><spanclass="pre">Label</span></a></em><aclass="headerlink"href="#Lib.Statement.AbsoluteJump.label"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">args</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><spanclass="sig-return"><spanclass="sig-return-icon">→</span><spanclass="sig-return-typehint"><spanclass="pre">List</span><spanclass="p"><spanclass="pre">[</span></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Operand</span></a><spanclass="p"><spanclass="pre">]</span></span></span></span><aclass="reference internal"href="../_modules/Lib/Statement.html#AbsoluteJump.args"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.AbsoluteJump.args"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">rename</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">renamer</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Renamer"title="Lib.Operands.Renamer"><spanclass="pre">Renamer</span></a></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#AbsoluteJump.rename"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.AbsoluteJump.rename"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">substitute</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">subst</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">Dict</span><spanclass="p"><spanclass="pre">[</span></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Operand</span></a><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Operand</span></a><spanclass="p"><spanclass="pre">]</span></span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#AbsoluteJump.substitute"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.AbsoluteJump.substitute"title="Permalink to this definition"></a></dt>
<dd><p>Return a new instruction, cloned from this one, replacing operands
<spanclass="sig-name descname"><spanclass="pre">with_args</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">new_args</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">List</span><spanclass="p"><spanclass="pre">[</span></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Operand</span></a><spanclass="p"><spanclass="pre">]</span></span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#AbsoluteJump.with_args"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.AbsoluteJump.with_args"title="Permalink to this definition"></a></dt>
<dd><p>Return a new instruction, cloned from this one, where operands have
<spanclass="sig-name descname"><spanclass="pre">targets</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><spanclass="sig-return"><spanclass="sig-return-icon">→</span><spanclass="sig-return-typehint"><spanclass="pre">List</span><spanclass="p"><spanclass="pre">[</span></span><aclass="reference internal"href="#Lib.Statement.Label"title="Lib.Statement.Label"><spanclass="pre">Label</span></a><spanclass="p"><spanclass="pre">]</span></span></span></span><aclass="reference internal"href="../_modules/Lib/Statement.html#AbsoluteJump.targets"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.AbsoluteJump.targets"title="Permalink to this definition"></a></dt>
<dd><p>Return the labels targetted by the AbsoluteJump.</p>
<spanclass="sig-name descname"><spanclass="pre">cond</span></span><emclass="property"><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Condition"title="Lib.Operands.Condition"><spanclass="pre">Condition</span></a></em><aclass="headerlink"href="#Lib.Statement.ConditionalJump.cond"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">label</span></span><emclass="property"><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><aclass="reference internal"href="#Lib.Statement.Label"title="Lib.Statement.Label"><spanclass="pre">Label</span></a></em><aclass="headerlink"href="#Lib.Statement.ConditionalJump.label"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">op1</span></span><emclass="property"><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Operand</span></a></em><aclass="headerlink"href="#Lib.Statement.ConditionalJump.op1"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">op2</span></span><emclass="property"><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Operand</span></a></em><aclass="headerlink"href="#Lib.Statement.ConditionalJump.op2"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">args</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#ConditionalJump.args"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.ConditionalJump.args"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">rename</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">renamer</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Renamer"title="Lib.Operands.Renamer"><spanclass="pre">Renamer</span></a></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#ConditionalJump.rename"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.ConditionalJump.rename"title="Permalink to this definition"></a></dt>
<spanclass="sig-name descname"><spanclass="pre">substitute</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">subst</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">Dict</span><spanclass="p"><spanclass="pre">[</span></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Operand</span></a><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Operand</span></a><spanclass="p"><spanclass="pre">]</span></span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#ConditionalJump.substitute"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.ConditionalJump.substitute"title="Permalink to this definition"></a></dt>
<dd><p>Return a new instruction, cloned from this one, replacing operands
<spanclass="sig-name descname"><spanclass="pre">with_args</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">new_args</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><spanclass="pre">List</span><spanclass="p"><spanclass="pre">[</span></span><aclass="reference internal"href="Lib.Operands.html#Lib.Operands.Operand"title="Lib.Operands.Operand"><spanclass="pre">Operand</span></a><spanclass="p"><spanclass="pre">]</span></span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/Lib/Statement.html#ConditionalJump.with_args"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#Lib.Statement.ConditionalJump.with_args"title="Permalink to this definition"></a></dt>
<dd><p>Return a new instruction, cloned from this one, where operands have