aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorjohannst <johannst@users.noreply.github.com>2024-03-18 22:02:54 +0000
committerjohannst <johannst@users.noreply.github.com>2024-03-18 22:02:54 +0000
commit52a0308e18fbbec25f0e9f31ec8f11589a35f351 (patch)
tree522424f6d94aeb9c3fff16a109c5f85efb97d66c
parent596eaec7fa9678939031eb1a434735c51f3ecec2 (diff)
downloadjuicebox-asm-gh-pages.tar.gz
juicebox-asm-gh-pages.zip
deploy: 7653ced7e8ce18b9ada2b666c63832007f8becf2gh-pages
-rw-r--r--juicebox_asm/all.html2
-rw-r--r--juicebox_asm/enum.Reg64.html4
-rw-r--r--juicebox_asm/insn/index.html4
-rw-r--r--juicebox_asm/insn/sidebar-items.js2
-rw-r--r--juicebox_asm/insn/trait.Add.html4
-rw-r--r--juicebox_asm/insn/trait.Call.html4
-rw-r--r--juicebox_asm/insn/trait.Cmovnz.html7
-rw-r--r--juicebox_asm/insn/trait.Cmovz.html7
-rw-r--r--juicebox_asm/insn/trait.Cmp.html4
-rw-r--r--juicebox_asm/insn/trait.Dec.html4
-rw-r--r--juicebox_asm/insn/trait.Jmp.html4
-rw-r--r--juicebox_asm/insn/trait.Jnz.html4
-rw-r--r--juicebox_asm/insn/trait.Jz.html4
-rw-r--r--juicebox_asm/insn/trait.Mov.html4
-rw-r--r--juicebox_asm/insn/trait.Pop.html4
-rw-r--r--juicebox_asm/insn/trait.Push.html4
-rw-r--r--juicebox_asm/insn/trait.Test.html4
-rw-r--r--juicebox_asm/struct.Asm.html6
-rw-r--r--search-index.js2
-rw-r--r--src-files.js2
-rw-r--r--src/juicebox_asm/asm.rs.html6
-rw-r--r--src/juicebox_asm/insn.rs.html32
-rw-r--r--src/juicebox_asm/insn/add.rs.html4
-rw-r--r--src/juicebox_asm/insn/cmovnz.rs.html18
-rw-r--r--src/juicebox_asm/insn/cmovz.rs.html18
-rw-r--r--src/juicebox_asm/insn/mov.rs.html8
-rw-r--r--src/juicebox_asm/insn/test.rs.html4
-rw-r--r--src/tiny_vm/tiny_vm.rs.html14
-rw-r--r--trait.impl/juicebox_asm/insn/trait.Cmovnz.js3
-rw-r--r--trait.impl/juicebox_asm/insn/trait.Cmovz.js3
30 files changed, 140 insertions, 50 deletions
diff --git a/juicebox_asm/all.html b/juicebox_asm/all.html
index 93155c0..34a7139 100644
--- a/juicebox_asm/all.html
+++ b/juicebox_asm/all.html
@@ -1,2 +1,2 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="List of all items in this crate"><title>List of all items in this crate</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc mod sys"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../juicebox_asm/index.html">juicebox_asm</a><span class="version">0.1.0</span></h2></div><div class="sidebar-elems"><section><ul class="block"><li><a href="#structs">Structs</a></li><li><a href="#enums">Enums</a></li><li><a href="#traits">Traits</a></li></ul></section></div></nav><div class="sidebar-resizer"></div>
- <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><h1>List of all items</h1><h3 id="structs">Structs</h3><ul class="all-items"><li><a href="struct.Asm.html">Asm</a></li><li><a href="struct.Imm16.html">Imm16</a></li><li><a href="struct.Imm32.html">Imm32</a></li><li><a href="struct.Imm64.html">Imm64</a></li><li><a href="struct.Imm8.html">Imm8</a></li><li><a href="struct.Label.html">Label</a></li><li><a href="struct.Runtime.html">Runtime</a></li></ul><h3 id="enums">Enums</h3><ul class="all-items"><li><a href="enum.MemOp.html">MemOp</a></li><li><a href="enum.Reg16.html">Reg16</a></li><li><a href="enum.Reg32.html">Reg32</a></li><li><a href="enum.Reg64.html">Reg64</a></li><li><a href="enum.Reg8.html">Reg8</a></li></ul><h3 id="traits">Traits</h3><ul class="all-items"><li><a href="insn/trait.Add.html">insn::Add</a></li><li><a href="insn/trait.Call.html">insn::Call</a></li><li><a href="insn/trait.Cmp.html">insn::Cmp</a></li><li><a href="insn/trait.Dec.html">insn::Dec</a></li><li><a href="insn/trait.Jmp.html">insn::Jmp</a></li><li><a href="insn/trait.Jnz.html">insn::Jnz</a></li><li><a href="insn/trait.Jz.html">insn::Jz</a></li><li><a href="insn/trait.Mov.html">insn::Mov</a></li><li><a href="insn/trait.Pop.html">insn::Pop</a></li><li><a href="insn/trait.Push.html">insn::Push</a></li><li><a href="insn/trait.Test.html">insn::Test</a></li></ul></section></div></main></body></html> \ No newline at end of file
+ <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><h1>List of all items</h1><h3 id="structs">Structs</h3><ul class="all-items"><li><a href="struct.Asm.html">Asm</a></li><li><a href="struct.Imm16.html">Imm16</a></li><li><a href="struct.Imm32.html">Imm32</a></li><li><a href="struct.Imm64.html">Imm64</a></li><li><a href="struct.Imm8.html">Imm8</a></li><li><a href="struct.Label.html">Label</a></li><li><a href="struct.Runtime.html">Runtime</a></li></ul><h3 id="enums">Enums</h3><ul class="all-items"><li><a href="enum.MemOp.html">MemOp</a></li><li><a href="enum.Reg16.html">Reg16</a></li><li><a href="enum.Reg32.html">Reg32</a></li><li><a href="enum.Reg64.html">Reg64</a></li><li><a href="enum.Reg8.html">Reg8</a></li></ul><h3 id="traits">Traits</h3><ul class="all-items"><li><a href="insn/trait.Add.html">insn::Add</a></li><li><a href="insn/trait.Call.html">insn::Call</a></li><li><a href="insn/trait.Cmovnz.html">insn::Cmovnz</a></li><li><a href="insn/trait.Cmovz.html">insn::Cmovz</a></li><li><a href="insn/trait.Cmp.html">insn::Cmp</a></li><li><a href="insn/trait.Dec.html">insn::Dec</a></li><li><a href="insn/trait.Jmp.html">insn::Jmp</a></li><li><a href="insn/trait.Jnz.html">insn::Jnz</a></li><li><a href="insn/trait.Jz.html">insn::Jz</a></li><li><a href="insn/trait.Mov.html">insn::Mov</a></li><li><a href="insn/trait.Pop.html">insn::Pop</a></li><li><a href="insn/trait.Push.html">insn::Push</a></li><li><a href="insn/trait.Test.html">insn::Test</a></li></ul></section></div></main></body></html> \ No newline at end of file
diff --git a/juicebox_asm/enum.Reg64.html b/juicebox_asm/enum.Reg64.html
index faef682..764b191 100644
--- a/juicebox_asm/enum.Reg64.html
+++ b/juicebox_asm/enum.Reg64.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Definition of 64 bit registers."><title>Reg64 in juicebox_asm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc enum"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../juicebox_asm/index.html">juicebox_asm</a><span class="version">0.1.0</span></h2></div><h2 class="location"><a href="#">Reg64</a></h2><div class="sidebar-elems"><section><h3><a href="#variants">Variants</a></h3><ul class="block variant"><li><a href="#variant.r10">r10</a></li><li><a href="#variant.r11">r11</a></li><li><a href="#variant.r12">r12</a></li><li><a href="#variant.r13">r13</a></li><li><a href="#variant.r14">r14</a></li><li><a href="#variant.r15">r15</a></li><li><a href="#variant.r8">r8</a></li><li><a href="#variant.r9">r9</a></li><li><a href="#variant.rax">rax</a></li><li><a href="#variant.rbp">rbp</a></li><li><a href="#variant.rbx">rbx</a></li><li><a href="#variant.rcx">rcx</a></li><li><a href="#variant.rdi">rdi</a></li><li><a href="#variant.rdx">rdx</a></li><li><a href="#variant.rsi">rsi</a></li><li><a href="#variant.rsp">rsp</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block trait-implementation"><li><a href="#impl-Add%3CReg64,+Reg64%3E-for-Asm">Add&lt;Reg64, Reg64&gt;</a></li><li><a href="#impl-Call%3CReg64%3E-for-Asm">Call&lt;Reg64&gt;</a></li><li><a href="#impl-Clone-for-Reg64">Clone</a></li><li><a href="#impl-Copy-for-Reg64">Copy</a></li><li><a href="#impl-Dec%3CReg64%3E-for-Asm">Dec&lt;Reg64&gt;</a></li><li><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm">Mov&lt;MemOp, Reg64&gt;</a></li><li><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm">Mov&lt;Reg64, Imm64&gt;</a></li><li><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm">Mov&lt;Reg64, MemOp&gt;</a></li><li><a href="#impl-Mov%3CReg64,+Reg64%3E-for-Asm">Mov&lt;Reg64, Reg64&gt;</a></li><li><a href="#impl-Pop%3CReg64%3E-for-Asm">Pop&lt;Reg64&gt;</a></li><li><a href="#impl-Push%3CReg64%3E-for-Asm">Push&lt;Reg64&gt;</a></li><li><a href="#impl-Test%3CReg64,+Reg64%3E-for-Asm">Test&lt;Reg64, Reg64&gt;</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block synthetic-implementation"><li><a href="#impl-RefUnwindSafe-for-Reg64">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Reg64">Send</a></li><li><a href="#impl-Sync-for-Reg64">Sync</a></li><li><a href="#impl-Unpin-for-Reg64">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Reg64">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block blanket-implementation"><li><a href="#impl-Any-for-T">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-T">Borrow&lt;T&gt;</a></li><li><a href="#impl-BorrowMut%3CT%3E-for-T">BorrowMut&lt;T&gt;</a></li><li><a href="#impl-From%3CT%3E-for-T">From&lt;T&gt;</a></li><li><a href="#impl-Into%3CU%3E-for-T">Into&lt;U&gt;</a></li><li><a href="#impl-ToOwned-for-T">ToOwned</a></li><li><a href="#impl-TryFrom%3CU%3E-for-T">TryFrom&lt;U&gt;</a></li><li><a href="#impl-TryInto%3CU%3E-for-T">TryInto&lt;U&gt;</a></li></ul></section><h2><a href="index.html">In crate juicebox_asm</a></h2></div></nav><div class="sidebar-resizer"></div>
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Definition of 64 bit registers."><title>Reg64 in juicebox_asm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc enum"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../juicebox_asm/index.html">juicebox_asm</a><span class="version">0.1.0</span></h2></div><h2 class="location"><a href="#">Reg64</a></h2><div class="sidebar-elems"><section><h3><a href="#variants">Variants</a></h3><ul class="block variant"><li><a href="#variant.r10">r10</a></li><li><a href="#variant.r11">r11</a></li><li><a href="#variant.r12">r12</a></li><li><a href="#variant.r13">r13</a></li><li><a href="#variant.r14">r14</a></li><li><a href="#variant.r15">r15</a></li><li><a href="#variant.r8">r8</a></li><li><a href="#variant.r9">r9</a></li><li><a href="#variant.rax">rax</a></li><li><a href="#variant.rbp">rbp</a></li><li><a href="#variant.rbx">rbx</a></li><li><a href="#variant.rcx">rcx</a></li><li><a href="#variant.rdi">rdi</a></li><li><a href="#variant.rdx">rdx</a></li><li><a href="#variant.rsi">rsi</a></li><li><a href="#variant.rsp">rsp</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block trait-implementation"><li><a href="#impl-Add%3CReg64,+Reg64%3E-for-Asm">Add&lt;Reg64, Reg64&gt;</a></li><li><a href="#impl-Call%3CReg64%3E-for-Asm">Call&lt;Reg64&gt;</a></li><li><a href="#impl-Clone-for-Reg64">Clone</a></li><li><a href="#impl-Cmovnz%3CReg64,+Reg64%3E-for-Asm">Cmovnz&lt;Reg64, Reg64&gt;</a></li><li><a href="#impl-Cmovz%3CReg64,+Reg64%3E-for-Asm">Cmovz&lt;Reg64, Reg64&gt;</a></li><li><a href="#impl-Copy-for-Reg64">Copy</a></li><li><a href="#impl-Dec%3CReg64%3E-for-Asm">Dec&lt;Reg64&gt;</a></li><li><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm">Mov&lt;MemOp, Reg64&gt;</a></li><li><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm">Mov&lt;Reg64, Imm64&gt;</a></li><li><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm">Mov&lt;Reg64, MemOp&gt;</a></li><li><a href="#impl-Mov%3CReg64,+Reg64%3E-for-Asm">Mov&lt;Reg64, Reg64&gt;</a></li><li><a href="#impl-Pop%3CReg64%3E-for-Asm">Pop&lt;Reg64&gt;</a></li><li><a href="#impl-Push%3CReg64%3E-for-Asm">Push&lt;Reg64&gt;</a></li><li><a href="#impl-Test%3CReg64,+Reg64%3E-for-Asm">Test&lt;Reg64, Reg64&gt;</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block synthetic-implementation"><li><a href="#impl-RefUnwindSafe-for-Reg64">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Reg64">Send</a></li><li><a href="#impl-Sync-for-Reg64">Sync</a></li><li><a href="#impl-Unpin-for-Reg64">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Reg64">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block blanket-implementation"><li><a href="#impl-Any-for-T">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-T">Borrow&lt;T&gt;</a></li><li><a href="#impl-BorrowMut%3CT%3E-for-T">BorrowMut&lt;T&gt;</a></li><li><a href="#impl-From%3CT%3E-for-T">From&lt;T&gt;</a></li><li><a href="#impl-Into%3CU%3E-for-T">Into&lt;U&gt;</a></li><li><a href="#impl-ToOwned-for-T">ToOwned</a></li><li><a href="#impl-TryFrom%3CU%3E-for-T">TryFrom&lt;U&gt;</a></li><li><a href="#impl-TryInto%3CU%3E-for-T">TryInto&lt;U&gt;</a></li></ul></section><h2><a href="index.html">In crate juicebox_asm</a></h2></div></nav><div class="sidebar-resizer"></div>
<main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Enum <a href="index.html">juicebox_asm</a>::<wbr><a class="enum" href="#">Reg64</a><button id="copy-path" title="Copy item path to clipboard"><img src="../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../src/juicebox_asm/reg.rs.html#78-80">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code><div class="code-attribute">#[repr(u8)]</div>pub enum Reg64 {
<details class="toggle type-contents-toggle"><summary class="hideme"><span>Show 16 variants</span></summary> rax = 0,
rcx = 1,
@@ -17,7 +17,7 @@
r14 = 14,
r15 = 15,
</details>}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Definition of 64 bit registers.</p>
-</div></details><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.rax" class="variant"><a href="#variant.rax" class="anchor">§</a><h3 class="code-header">rax = 0</h3></section><section id="variant.rcx" class="variant"><a href="#variant.rcx" class="anchor">§</a><h3 class="code-header">rcx = 1</h3></section><section id="variant.rdx" class="variant"><a href="#variant.rdx" class="anchor">§</a><h3 class="code-header">rdx = 2</h3></section><section id="variant.rbx" class="variant"><a href="#variant.rbx" class="anchor">§</a><h3 class="code-header">rbx = 3</h3></section><section id="variant.rsp" class="variant"><a href="#variant.rsp" class="anchor">§</a><h3 class="code-header">rsp = 4</h3></section><section id="variant.rbp" class="variant"><a href="#variant.rbp" class="anchor">§</a><h3 class="code-header">rbp = 5</h3></section><section id="variant.rsi" class="variant"><a href="#variant.rsi" class="anchor">§</a><h3 class="code-header">rsi = 6</h3></section><section id="variant.rdi" class="variant"><a href="#variant.rdi" class="anchor">§</a><h3 class="code-header">rdi = 7</h3></section><section id="variant.r8" class="variant"><a href="#variant.r8" class="anchor">§</a><h3 class="code-header">r8 = 8</h3></section><section id="variant.r9" class="variant"><a href="#variant.r9" class="anchor">§</a><h3 class="code-header">r9 = 9</h3></section><section id="variant.r10" class="variant"><a href="#variant.r10" class="anchor">§</a><h3 class="code-header">r10 = 10</h3></section><section id="variant.r11" class="variant"><a href="#variant.r11" class="anchor">§</a><h3 class="code-header">r11 = 11</h3></section><section id="variant.r12" class="variant"><a href="#variant.r12" class="anchor">§</a><h3 class="code-header">r12 = 12</h3></section><section id="variant.r13" class="variant"><a href="#variant.r13" class="anchor">§</a><h3 class="code-header">r13 = 13</h3></section><section id="variant.r14" class="variant"><a href="#variant.r14" class="anchor">§</a><h3 class="code-header">r14 = 14</h3></section><section id="variant.r15" class="variant"><a href="#variant.r15" class="anchor">§</a><h3 class="code-header">r15 = 15</h3></section></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#4-8">source</a><a href="#impl-Add%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#5-7">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Call%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/call.rs.html#4-8">source</a><a href="#impl-Call%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Call.html" title="trait juicebox_asm::insn::Call">Call</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.call" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/call.rs.html#5-7">source</a><a href="#method.call" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Call.html#tymethod.call" class="fn">call</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a call instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-Reg64" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#78-80">source</a><a href="#impl-Clone-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#78-80">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&amp;self) -&gt; <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.76.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&amp;mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&amp;Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Dec%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#4-8">source</a><a href="#impl-Dec%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Dec.html" title="trait juicebox_asm::insn::Dec">Dec</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.dec" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#5-7">source</a><a href="#method.dec" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Dec.html#tymethod.dec" class="fn">dec</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a decrement instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#32-36">source</a><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#33-35">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#84-88">source</a><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#85-87">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#58-62">source</a><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#59-61">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#6-10">source</a><a href="#impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#7-9">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Pop%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/pop.rs.html#4-8">source</a><a href="#impl-Pop%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Pop.html" title="trait juicebox_asm::insn::Pop">Pop</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.pop" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/pop.rs.html#5-7">source</a><a href="#method.pop" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Pop.html#tymethod.pop" class="fn">pop</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a pop instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Push%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/push.rs.html#4-8">source</a><a href="#impl-Push%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Push.html" title="trait juicebox_asm::insn::Push">Push</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.push" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/push.rs.html#5-7">source</a><a href="#method.push" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Push.html#tymethod.push" class="fn">push</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a push instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#4-8">source</a><a href="#impl-Test%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#5-7">source</a><a href="#method.test" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Test.html#tymethod.test" class="fn">test</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="insn/trait.Test.html#tymethod.test">Read more</a></div></details></div></details><section id="impl-Copy-for-Reg64" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#78-80">source</a><a href="#impl-Copy-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Reg64" class="impl"><a href="#impl-RefUnwindSafe-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section><section id="impl-Send-for-Reg64" class="impl"><a href="#impl-Send-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section><section id="impl-Sync-for-Reg64" class="impl"><a href="#impl-Sync-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section><section id="impl-Unpin-for-Reg64" class="impl"><a href="#impl-Unpin-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section><section id="impl-UnwindSafe-for-Reg64" class="impl"><a href="#impl-UnwindSafe-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section></div><h2 id="blanket-implementations" class="section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/any.rs.html#140">source</a><a href="#impl-Any-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<div class="where">where
+</div></details><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.rax" class="variant"><a href="#variant.rax" class="anchor">§</a><h3 class="code-header">rax = 0</h3></section><section id="variant.rcx" class="variant"><a href="#variant.rcx" class="anchor">§</a><h3 class="code-header">rcx = 1</h3></section><section id="variant.rdx" class="variant"><a href="#variant.rdx" class="anchor">§</a><h3 class="code-header">rdx = 2</h3></section><section id="variant.rbx" class="variant"><a href="#variant.rbx" class="anchor">§</a><h3 class="code-header">rbx = 3</h3></section><section id="variant.rsp" class="variant"><a href="#variant.rsp" class="anchor">§</a><h3 class="code-header">rsp = 4</h3></section><section id="variant.rbp" class="variant"><a href="#variant.rbp" class="anchor">§</a><h3 class="code-header">rbp = 5</h3></section><section id="variant.rsi" class="variant"><a href="#variant.rsi" class="anchor">§</a><h3 class="code-header">rsi = 6</h3></section><section id="variant.rdi" class="variant"><a href="#variant.rdi" class="anchor">§</a><h3 class="code-header">rdi = 7</h3></section><section id="variant.r8" class="variant"><a href="#variant.r8" class="anchor">§</a><h3 class="code-header">r8 = 8</h3></section><section id="variant.r9" class="variant"><a href="#variant.r9" class="anchor">§</a><h3 class="code-header">r9 = 9</h3></section><section id="variant.r10" class="variant"><a href="#variant.r10" class="anchor">§</a><h3 class="code-header">r10 = 10</h3></section><section id="variant.r11" class="variant"><a href="#variant.r11" class="anchor">§</a><h3 class="code-header">r11 = 11</h3></section><section id="variant.r12" class="variant"><a href="#variant.r12" class="anchor">§</a><h3 class="code-header">r12 = 12</h3></section><section id="variant.r13" class="variant"><a href="#variant.r13" class="anchor">§</a><h3 class="code-header">r13 = 13</h3></section><section id="variant.r14" class="variant"><a href="#variant.r14" class="anchor">§</a><h3 class="code-header">r14 = 14</h3></section><section id="variant.r15" class="variant"><a href="#variant.r15" class="anchor">§</a><h3 class="code-header">r15 = 15</h3></section></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#4-8">source</a><a href="#impl-Add%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#5-7">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Call%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/call.rs.html#4-8">source</a><a href="#impl-Call%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Call.html" title="trait juicebox_asm::insn::Call">Call</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.call" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/call.rs.html#5-7">source</a><a href="#method.call" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Call.html#tymethod.call" class="fn">call</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a call instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-Reg64" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#78-80">source</a><a href="#impl-Clone-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#78-80">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&amp;self) -&gt; <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.76.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&amp;mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&amp;Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Cmovnz%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmovnz.rs.html#4-8">source</a><a href="#impl-Cmovnz%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Cmovnz.html" title="trait juicebox_asm::insn::Cmovnz">Cmovnz</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.cmovnz" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmovnz.rs.html#5-7">source</a><a href="#method.cmovnz" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Cmovnz.html#tymethod.cmovnz" class="fn">cmovnz</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a (conditional) move if not zero instruction. <a href="insn/trait.Cmovnz.html#tymethod.cmovnz">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Cmovz%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmovz.rs.html#4-8">source</a><a href="#impl-Cmovz%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Cmovz.html" title="trait juicebox_asm::insn::Cmovz">Cmovz</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.cmovz" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmovz.rs.html#5-7">source</a><a href="#method.cmovz" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Cmovz.html#tymethod.cmovz" class="fn">cmovz</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a (conditional) move if zero instruction. <a href="insn/trait.Cmovz.html#tymethod.cmovz">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Dec%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#4-8">source</a><a href="#impl-Dec%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Dec.html" title="trait juicebox_asm::insn::Dec">Dec</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.dec" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#5-7">source</a><a href="#method.dec" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Dec.html#tymethod.dec" class="fn">dec</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a decrement instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#32-36">source</a><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#33-35">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#84-88">source</a><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#85-87">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#58-62">source</a><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#59-61">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#6-10">source</a><a href="#impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#7-9">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Pop%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/pop.rs.html#4-8">source</a><a href="#impl-Pop%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Pop.html" title="trait juicebox_asm::insn::Pop">Pop</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.pop" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/pop.rs.html#5-7">source</a><a href="#method.pop" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Pop.html#tymethod.pop" class="fn">pop</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a pop instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Push%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/push.rs.html#4-8">source</a><a href="#impl-Push%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Push.html" title="trait juicebox_asm::insn::Push">Push</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.push" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/push.rs.html#5-7">source</a><a href="#method.push" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Push.html#tymethod.push" class="fn">push</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a push instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#4-8">source</a><a href="#impl-Test%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#5-7">source</a><a href="#method.test" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Test.html#tymethod.test" class="fn">test</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="insn/trait.Test.html#tymethod.test">Read more</a></div></details></div></details><section id="impl-Copy-for-Reg64" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#78-80">source</a><a href="#impl-Copy-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Reg64" class="impl"><a href="#impl-RefUnwindSafe-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section><section id="impl-Send-for-Reg64" class="impl"><a href="#impl-Send-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section><section id="impl-Sync-for-Reg64" class="impl"><a href="#impl-Sync-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section><section id="impl-Unpin-for-Reg64" class="impl"><a href="#impl-Unpin-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section><section id="impl-UnwindSafe-for-Reg64" class="impl"><a href="#impl-UnwindSafe-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section></div><h2 id="blanket-implementations" class="section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/any.rs.html#140">source</a><a href="#impl-Any-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<div class="where">where
T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.76.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.76.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&amp;T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;T&gt; for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&amp;mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#763">source</a><a href="#impl-From%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#766">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -&gt; T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p>
diff --git a/juicebox_asm/insn/index.html b/juicebox_asm/insn/index.html
index cf23995..093289e 100644
--- a/juicebox_asm/insn/index.html
+++ b/juicebox_asm/insn/index.html
@@ -1,3 +1,3 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Trait definitions of various instructions."><title>juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="../sidebar-items.js"></script><script defer src="../../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../juicebox_asm/index.html">juicebox_asm</a><span class="version">0.1.0</span></h2></div><h2 class="location"><a href="#">Module insn</a></h2><div class="sidebar-elems"><section><ul class="block"><li><a href="#traits">Traits</a></li></ul></section><h2><a href="../index.html">In crate juicebox_asm</a></h2></div></nav><div class="sidebar-resizer"></div>
- <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Module <a href="../index.html">juicebox_asm</a>::<wbr><a class="mod" href="#">insn</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#1-87">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait definitions of various instructions.</p>
-</div></details><h2 id="traits" class="section-header"><a href="#traits">Traits</a></h2><ul class="item-table"><li><div class="item-name"><a class="trait" href="trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/add"><code>add</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Call.html" title="trait juicebox_asm::insn::Call">Call</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/call"><code>call</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Cmp.html" title="trait juicebox_asm::insn::Cmp">Cmp</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/cmp"><code>cmp</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Dec.html" title="trait juicebox_asm::insn::Dec">Dec</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/dec"><code>dec</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Jmp.html" title="trait juicebox_asm::insn::Jmp">Jmp</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/jmp"><code>jmp</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Jnz.html" title="trait juicebox_asm::insn::Jnz">Jnz</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/jcc"><code>jnz</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Jz.html" title="trait juicebox_asm::insn::Jz">Jz</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/jcc"><code>jz</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/mov"><code>mov</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Pop.html" title="trait juicebox_asm::insn::Pop">Pop</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/pop"><code>pop</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Push.html" title="trait juicebox_asm::insn::Push">Push</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/push"><code>push</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/test"><code>test</code></a> instruction kinds.</div></li></ul></section></div></main></body></html> \ No newline at end of file
+ <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Module <a href="../index.html">juicebox_asm</a>::<wbr><a class="mod" href="#">insn</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#1-103">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait definitions of various instructions.</p>
+</div></details><h2 id="traits" class="section-header"><a href="#traits">Traits</a></h2><ul class="item-table"><li><div class="item-name"><a class="trait" href="trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/add"><code>add</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Call.html" title="trait juicebox_asm::insn::Call">Call</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/call"><code>call</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Cmovnz.html" title="trait juicebox_asm::insn::Cmovnz">Cmovnz</a></div></li><li><div class="item-name"><a class="trait" href="trait.Cmovz.html" title="trait juicebox_asm::insn::Cmovz">Cmovz</a></div></li><li><div class="item-name"><a class="trait" href="trait.Cmp.html" title="trait juicebox_asm::insn::Cmp">Cmp</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/cmp"><code>cmp</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Dec.html" title="trait juicebox_asm::insn::Dec">Dec</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/dec"><code>dec</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Jmp.html" title="trait juicebox_asm::insn::Jmp">Jmp</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/jmp"><code>jmp</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Jnz.html" title="trait juicebox_asm::insn::Jnz">Jnz</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/jcc"><code>jnz</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Jz.html" title="trait juicebox_asm::insn::Jz">Jz</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/jcc"><code>jz</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/mov"><code>mov</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Pop.html" title="trait juicebox_asm::insn::Pop">Pop</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/pop"><code>pop</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Push.html" title="trait juicebox_asm::insn::Push">Push</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/push"><code>push</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/test"><code>test</code></a> instruction kinds.</div></li></ul></section></div></main></body></html> \ No newline at end of file
diff --git a/juicebox_asm/insn/sidebar-items.js b/juicebox_asm/insn/sidebar-items.js
index 23ed650..894686f 100644
--- a/juicebox_asm/insn/sidebar-items.js
+++ b/juicebox_asm/insn/sidebar-items.js
@@ -1 +1 @@
-window.SIDEBAR_ITEMS = {"trait":["Add","Call","Cmp","Dec","Jmp","Jnz","Jz","Mov","Pop","Push","Test"]}; \ No newline at end of file
+window.SIDEBAR_ITEMS = {"trait":["Add","Call","Cmovnz","Cmovz","Cmp","Dec","Jmp","Jnz","Jz","Mov","Pop","Push","Test"]}; \ No newline at end of file
diff --git a/juicebox_asm/insn/trait.Add.html b/juicebox_asm/insn/trait.Add.html
index f64bb18..ab5accc 100644
--- a/juicebox_asm/insn/trait.Add.html
+++ b/juicebox_asm/insn/trait.Add.html
@@ -1,7 +1,7 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Trait for `add` instruction kinds."><title>Add in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../juicebox_asm/index.html">juicebox_asm</a><span class="version">0.1.0</span></h2></div><h2 class="location"><a href="#">Add</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.add">add</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><div class="sidebar-resizer"></div>
- <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Add</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#18-21">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Add&lt;T, U&gt; {
+ <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Add</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#20-23">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Add&lt;T, U&gt; {
// Required method
fn <a href="#tymethod.add" class="fn">add</a>(&amp;mut self, op1: T, op2: U);
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/add"><code>add</code></a> instruction kinds.</p>
-</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.add" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#20">source</a><h4 class="code-header">fn <a href="#tymethod.add" class="fn">add</a>(&amp;mut self, op1: T, op2: U)</h4></section></summary><div class="docblock"><p>Emit an add instruction.</p>
+</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.add" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#22">source</a><h4 class="code-header">fn <a href="#tymethod.add" class="fn">add</a>(&amp;mut self, op1: T, op2: U)</h4></section></summary><div class="docblock"><p>Emit an add instruction.</p>
</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#16-20">source</a><a href="#impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a>&lt;<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="../enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#22-26">source</a><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a>&lt;<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="../struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Add%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#10-14">source</a><a href="#impl-Add%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a>&lt;<a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Add%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#4-8">source</a><a href="#impl-Add%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a>&lt;<a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../trait.impl/juicebox_asm/insn/trait.Add.js" async></script></section></div></main></body></html> \ No newline at end of file
diff --git a/juicebox_asm/insn/trait.Call.html b/juicebox_asm/insn/trait.Call.html
index e306d73..6d929cb 100644
--- a/juicebox_asm/insn/trait.Call.html
+++ b/juicebox_asm/insn/trait.Call.html
@@ -1,7 +1,7 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Trait for `call` instruction kinds."><title>Call in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../juicebox_asm/index.html">juicebox_asm</a><span class="version">0.1.0</span></h2></div><h2 class="location"><a href="#">Call</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.call">call</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><div class="sidebar-resizer"></div>
- <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Call</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#24-27">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Call&lt;T&gt; {
+ <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Call</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#26-29">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Call&lt;T&gt; {
// Required method
fn <a href="#tymethod.call" class="fn">call</a>(&amp;mut self, op1: T);
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/call"><code>call</code></a> instruction kinds.</p>
-</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.call" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#26">source</a><h4 class="code-header">fn <a href="#tymethod.call" class="fn">call</a>(&amp;mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a call instruction.</p>
+</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.call" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#28">source</a><h4 class="code-header">fn <a href="#tymethod.call" class="fn">call</a>(&amp;mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a call instruction.</p>
</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Call%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/call.rs.html#4-8">source</a><a href="#impl-Call%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Call.html" title="trait juicebox_asm::insn::Call">Call</a>&lt;<a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../trait.impl/juicebox_asm/insn/trait.Call.js" async></script></section></div></main></body></html> \ No newline at end of file
diff --git a/juicebox_asm/insn/trait.Cmovnz.html b/juicebox_asm/insn/trait.Cmovnz.html
new file mode 100644
index 0000000..ca0fef1
--- /dev/null
+++ b/juicebox_asm/insn/trait.Cmovnz.html
@@ -0,0 +1,7 @@
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `Cmovnz` trait in crate `juicebox_asm`."><title>Cmovnz in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../juicebox_asm/index.html">juicebox_asm</a><span class="version">0.1.0</span></h2></div><h2 class="location"><a href="#">Cmovnz</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.cmovnz">cmovnz</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><div class="sidebar-resizer"></div>
+ <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Cmovnz</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#31-36">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Cmovnz&lt;T, U&gt; {
+ // Required method
+ fn <a href="#tymethod.cmovnz" class="fn">cmovnz</a>(&amp;mut self, op1: T, op2: U);
+}</code></pre><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.cmovnz" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#35">source</a><h4 class="code-header">fn <a href="#tymethod.cmovnz" class="fn">cmovnz</a>(&amp;mut self, op1: T, op2: U)</h4></section></summary><div class="docblock"><p>Emit a (conditional) move if not zero instruction.</p>
+<p>Move is only commited if (ZF=0).</p>
+</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Cmovnz%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/cmovnz.rs.html#4-8">source</a><a href="#impl-Cmovnz%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Cmovnz.html" title="trait juicebox_asm::insn::Cmovnz">Cmovnz</a>&lt;<a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../trait.impl/juicebox_asm/insn/trait.Cmovnz.js" async></script></section></div></main></body></html> \ No newline at end of file
diff --git a/juicebox_asm/insn/trait.Cmovz.html b/juicebox_asm/insn/trait.Cmovz.html
new file mode 100644
index 0000000..3da1ed4
--- /dev/null
+++ b/juicebox_asm/insn/trait.Cmovz.html
@@ -0,0 +1,7 @@
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `Cmovz` trait in crate `juicebox_asm`."><title>Cmovz in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../juicebox_asm/index.html">juicebox_asm</a><span class="version">0.1.0</span></h2></div><h2 class="location"><a href="#">Cmovz</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.cmovz">cmovz</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><div class="sidebar-resizer"></div>
+ <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Cmovz</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#38-43">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Cmovz&lt;T, U&gt; {
+ // Required method
+ fn <a href="#tymethod.cmovz" class="fn">cmovz</a>(&amp;mut self, op1: T, op2: U);
+}</code></pre><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.cmovz" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#42">source</a><h4 class="code-header">fn <a href="#tymethod.cmovz" class="fn">cmovz</a>(&amp;mut self, op1: T, op2: U)</h4></section></summary><div class="docblock"><p>Emit a (conditional) move if zero instruction.</p>
+<p>Move is only commited if (ZF=1).</p>
+</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Cmovz%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/cmovz.rs.html#4-8">source</a><a href="#impl-Cmovz%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Cmovz.html" title="trait juicebox_asm::insn::Cmovz">Cmovz</a>&lt;<a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../trait.impl/juicebox_asm/insn/trait.Cmovz.js" async></script></section></div></main></body></html> \ No newline at end of file
diff --git a/juicebox_asm/insn/trait.Cmp.html b/juicebox_asm/insn/trait.Cmp.html
index cd38840..9c57b54 100644
--- a/juicebox_asm/insn/trait.Cmp.html
+++ b/juicebox_asm/insn/trait.Cmp.html
@@ -1,9 +1,9 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Trait for `cmp` instruction kinds."><title>Cmp in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../juicebox_asm/index.html">juicebox_asm</a><span class="version">0.1.0</span></h2></div><h2 class="location"><a href="#">Cmp</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.cmp">cmp</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><div class="sidebar-resizer"></div>
- <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Cmp</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#30-36">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Cmp&lt;T, U&gt; {
+ <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Cmp</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#46-52">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Cmp&lt;T, U&gt; {
// Required method
fn <a href="#tymethod.cmp" class="fn">cmp</a>(&amp;mut self, op1: T, op2: U);
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/cmp"><code>cmp</code></a> instruction kinds.</p>
-</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.cmp" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#35">source</a><h4 class="code-header">fn <a href="#tymethod.cmp" class="fn">cmp</a>(&amp;mut self, op1: T, op2: U)</h4></section></summary><div class="docblock"><p>Emit a compare instruction.</p>
+</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.cmp" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#51">source</a><h4 class="code-header">fn <a href="#tymethod.cmp" class="fn">cmp</a>(&amp;mut self, op1: T, op2: U)</h4></section></summary><div class="docblock"><p>Emit a compare instruction.</p>
<p>Computes <code>op2 - op1</code> and sets the status flags in the same way as the <code>sub</code> instruction,
the result is discarded.</p>
</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/cmp.rs.html#4-8">source</a><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Cmp.html" title="trait juicebox_asm::insn::Cmp">Cmp</a>&lt;<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="../struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../trait.impl/juicebox_asm/insn/trait.Cmp.js" async></script></section></div></main></body></html> \ No newline at end of file
diff --git a/juicebox_asm/insn/trait.Dec.html b/juicebox_asm/insn/trait.Dec.html
index d53ac3b..2f9ce80 100644
--- a/juicebox_asm/insn/trait.Dec.html
+++ b/juicebox_asm/insn/trait.Dec.html
@@ -1,7 +1,7 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Trait for `dec` instruction kinds."><title>Dec in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../juicebox_asm/index.html">juicebox_asm</a><span class="version">0.1.0</span></h2></div><h2 class="location"><a href="#">Dec</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.dec">dec</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><div class="sidebar-resizer"></div>
- <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Dec</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#39-42">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Dec&lt;T&gt; {
+ <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Dec</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#55-58">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Dec&lt;T&gt; {
// Required method
fn <a href="#tymethod.dec" class="fn">dec</a>(&amp;mut self, op1: T);
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/dec"><code>dec</code></a> instruction kinds.</p>
-</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.dec" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#41">source</a><h4 class="code-header">fn <a href="#tymethod.dec" class="fn">dec</a>(&amp;mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a decrement instruction.</p>
+</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.dec" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#57">source</a><h4 class="code-header">fn <a href="#tymethod.dec" class="fn">dec</a>(&amp;mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a decrement instruction.</p>
</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Dec%3CReg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/dec.rs.html#10-14">source</a><a href="#impl-Dec%3CReg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Dec.html" title="trait juicebox_asm::insn::Dec">Dec</a>&lt;<a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Dec%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/dec.rs.html#4-8">source</a><a href="#impl-Dec%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Dec.html" title="trait juicebox_asm::insn::Dec">Dec</a>&lt;<a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../trait.impl/juicebox_asm/insn/trait.Dec.js" async></script></section></div></main></body></html> \ No newline at end of file
diff --git a/juicebox_asm/insn/trait.Jmp.html b/juicebox_asm/insn/trait.Jmp.html
index 21b50fa..e7e8cba 100644
--- a/juicebox_asm/insn/trait.Jmp.html
+++ b/juicebox_asm/insn/trait.Jmp.html
@@ -1,7 +1,7 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Trait for `jmp` instruction kinds."><title>Jmp in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../juicebox_asm/index.html">juicebox_asm</a><span class="version">0.1.0</span></h2></div><h2 class="location"><a href="#">Jmp</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.jmp">jmp</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><div class="sidebar-resizer"></div>
- <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Jmp</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#45-48">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Jmp&lt;T&gt; {
+ <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Jmp</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#61-64">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Jmp&lt;T&gt; {
// Required method
fn <a href="#tymethod.jmp" class="fn">jmp</a>(&amp;mut self, op1: T);
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/jmp"><code>jmp</code></a> instruction kinds.</p>
-</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.jmp" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#47">source</a><h4 class="code-header">fn <a href="#tymethod.jmp" class="fn">jmp</a>(&amp;mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit an unconditional jump instruction.</p>
+</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.jmp" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#63">source</a><h4 class="code-header">fn <a href="#tymethod.jmp" class="fn">jmp</a>(&amp;mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit an unconditional jump instruction.</p>
</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Jmp%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/jmp.rs.html#4-8">source</a><a href="#impl-Jmp%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Jmp.html" title="trait juicebox_asm::insn::Jmp">Jmp</a>&lt;&amp;mut <a class="struct" href="../struct.Label.html" title="struct juicebox_asm::Label">Label</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../trait.impl/juicebox_asm/insn/trait.Jmp.js" async></script></section></div></main></body></html> \ No newline at end of file
diff --git a/juicebox_asm/insn/trait.Jnz.html b/juicebox_asm/insn/trait.Jnz.html
index db1e536..b8a0a51 100644
--- a/juicebox_asm/insn/trait.Jnz.html
+++ b/juicebox_asm/insn/trait.Jnz.html
@@ -1,7 +1,7 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Trait for `jnz` instruction kinds."><title>Jnz in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../juicebox_asm/index.html">juicebox_asm</a><span class="version">0.1.0</span></h2></div><h2 class="location"><a href="#">Jnz</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.jnz">jnz</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><div class="sidebar-resizer"></div>
- <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Jnz</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#51-54">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Jnz&lt;T&gt; {
+ <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Jnz</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#67-70">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Jnz&lt;T&gt; {
// Required method
fn <a href="#tymethod.jnz" class="fn">jnz</a>(&amp;mut self, op1: T);
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/jcc"><code>jnz</code></a> instruction kinds.</p>
-</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.jnz" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#53">source</a><h4 class="code-header">fn <a href="#tymethod.jnz" class="fn">jnz</a>(&amp;mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a conditional jump if not zero instruction (<code>ZF = 0</code>).</p>
+</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.jnz" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#69">source</a><h4 class="code-header">fn <a href="#tymethod.jnz" class="fn">jnz</a>(&amp;mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a conditional jump if not zero instruction (<code>ZF = 0</code>).</p>
</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Jnz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/jnz.rs.html#4-8">source</a><a href="#impl-Jnz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Jnz.html" title="trait juicebox_asm::insn::Jnz">Jnz</a>&lt;&amp;mut <a class="struct" href="../struct.Label.html" title="struct juicebox_asm::Label">Label</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../trait.impl/juicebox_asm/insn/trait.Jnz.js" async></script></section></div></main></body></html> \ No newline at end of file
diff --git a/juicebox_asm/insn/trait.Jz.html b/juicebox_asm/insn/trait.Jz.html
index 799b9bc..7e6020b 100644
--- a/juicebox_asm/insn/trait.Jz.html
+++ b/juicebox_asm/insn/trait.Jz.html
@@ -1,7 +1,7 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Trait for `jz` instruction kinds."><title>Jz in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../juicebox_asm/index.html">juicebox_asm</a><span class="version">0.1.0</span></h2></div><h2 class="location"><a href="#">Jz</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.jz">jz</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><div class="sidebar-resizer"></div>
- <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Jz</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#57-60">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Jz&lt;T&gt; {
+ <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Jz</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#73-76">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Jz&lt;T&gt; {
// Required method
fn <a href="#tymethod.jz" class="fn">jz</a>(&amp;mut self, op1: T);
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/jcc"><code>jz</code></a> instruction kinds.</p>
-</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.jz" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#59">source</a><h4 class="code-header">fn <a href="#tymethod.jz" class="fn">jz</a>(&amp;mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a conditional jump if zero instruction (<code>ZF = 1</code>).</p>
+</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.jz" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#75">source</a><h4 class="code-header">fn <a href="#tymethod.jz" class="fn">jz</a>(&amp;mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a conditional jump if zero instruction (<code>ZF = 1</code>).</p>
</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Jz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/jz.rs.html#4-8">source</a><a href="#impl-Jz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Jz.html" title="trait juicebox_asm::insn::Jz">Jz</a>&lt;&amp;mut <a class="struct" href="../struct.Label.html" title="struct juicebox_asm::Label">Label</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../trait.impl/juicebox_asm/insn/trait.Jz.js" async></script></section></div></main></body></html> \ No newline at end of file
diff --git a/juicebox_asm/insn/trait.Mov.html b/juicebox_asm/insn/trait.Mov.html
index 86659f9..63bb10e 100644
--- a/juicebox_asm/insn/trait.Mov.html
+++ b/juicebox_asm/insn/trait.Mov.html
@@ -1,7 +1,7 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Trait for `mov` instruction kinds."><title>Mov in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../juicebox_asm/index.html">juicebox_asm</a><span class="version">0.1.0</span></h2></div><h2 class="location"><a href="#">Mov</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.mov">mov</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><div class="sidebar-resizer"></div>
- <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Mov</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#63-66">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Mov&lt;T, U&gt; {
+ <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Mov</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#79-82">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Mov&lt;T, U&gt; {
// Required method
fn <a href="#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: T, op2: U);
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/mov"><code>mov</code></a> instruction kinds.</p>
-</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.mov" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#65">source</a><h4 class="code-header">fn <a href="#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: T, op2: U)</h4></section></summary><div class="docblock"><p>Emit an move instruction.</p>
+</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.mov" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#81">source</a><h4 class="code-header">fn <a href="#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: T, op2: U)</h4></section></summary><div class="docblock"><p>Emit an move instruction.</p>
</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#50-54">source</a><a href="#impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="../enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#44-48">source</a><a href="#impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="../enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#38-42">source</a><a href="#impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#32-36">source</a><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#110-114">source</a><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="../struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#76-80">source</a><a href="#impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="../enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#24-28">source</a><a href="#impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="../enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="enum" href="../enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#102-106">source</a><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="../enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="struct" href="../struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#70-74">source</a><a href="#impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="../enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#18-22">source</a><a href="#impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="../enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="enum" href="../enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#96-100">source</a><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="../enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="struct" href="../struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#64-68">source</a><a href="#impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#12-16">source</a><a href="#impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#90-94">source</a><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="struct" href="../struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#58-62">source</a><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#6-10">source</a><a href="#impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#84-88">source</a><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="struct" href="../struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../trait.impl/juicebox_asm/insn/trait.Mov.js" async></script></section></div></main></body></html> \ No newline at end of file
diff --git a/juicebox_asm/insn/trait.Pop.html b/juicebox_asm/insn/trait.Pop.html
index 02083ec..d248e80 100644
--- a/juicebox_asm/insn/trait.Pop.html
+++ b/juicebox_asm/insn/trait.Pop.html
@@ -1,7 +1,7 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Trait for `pop` instruction kinds."><title>Pop in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../juicebox_asm/index.html">juicebox_asm</a><span class="version">0.1.0</span></h2></div><h2 class="location"><a href="#">Pop</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.pop">pop</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><div class="sidebar-resizer"></div>
- <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Pop</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#75-78">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Pop&lt;T&gt; {
+ <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Pop</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#91-94">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Pop&lt;T&gt; {
// Required method
fn <a href="#tymethod.pop" class="fn">pop</a>(&amp;mut self, op1: T);
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/pop"><code>pop</code></a> instruction kinds.</p>
-</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.pop" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#77">source</a><h4 class="code-header">fn <a href="#tymethod.pop" class="fn">pop</a>(&amp;mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a pop instruction.</p>
+</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.pop" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#93">source</a><h4 class="code-header">fn <a href="#tymethod.pop" class="fn">pop</a>(&amp;mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a pop instruction.</p>
</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Pop%3CReg16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/pop.rs.html#10-14">source</a><a href="#impl-Pop%3CReg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Pop.html" title="trait juicebox_asm::insn::Pop">Pop</a>&lt;<a class="enum" href="../enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Pop%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/pop.rs.html#4-8">source</a><a href="#impl-Pop%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Pop.html" title="trait juicebox_asm::insn::Pop">Pop</a>&lt;<a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../trait.impl/juicebox_asm/insn/trait.Pop.js" async></script></section></div></main></body></html> \ No newline at end of file
diff --git a/juicebox_asm/insn/trait.Push.html b/juicebox_asm/insn/trait.Push.html
index 7b49d03..32287bb 100644
--- a/juicebox_asm/insn/trait.Push.html
+++ b/juicebox_asm/insn/trait.Push.html
@@ -1,7 +1,7 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Trait for `push` instruction kinds."><title>Push in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../juicebox_asm/index.html">juicebox_asm</a><span class="version">0.1.0</span></h2></div><h2 class="location"><a href="#">Push</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.push">push</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><div class="sidebar-resizer"></div>
- <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Push</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#69-72">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Push&lt;T&gt; {
+ <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Push</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#85-88">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Push&lt;T&gt; {
// Required method
fn <a href="#tymethod.push" class="fn">push</a>(&amp;mut self, op1: T);
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/push"><code>push</code></a> instruction kinds.</p>
-</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.push" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#71">source</a><h4 class="code-header">fn <a href="#tymethod.push" class="fn">push</a>(&amp;mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a push instruction.</p>
+</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.push" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#87">source</a><h4 class="code-header">fn <a href="#tymethod.push" class="fn">push</a>(&amp;mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a push instruction.</p>
</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Push%3CReg16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/push.rs.html#10-14">source</a><a href="#impl-Push%3CReg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Push.html" title="trait juicebox_asm::insn::Push">Push</a>&lt;<a class="enum" href="../enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Push%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/push.rs.html#4-8">source</a><a href="#impl-Push%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Push.html" title="trait juicebox_asm::insn::Push">Push</a>&lt;<a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../trait.impl/juicebox_asm/insn/trait.Push.js" async></script></section></div></main></body></html> \ No newline at end of file
diff --git a/juicebox_asm/insn/trait.Test.html b/juicebox_asm/insn/trait.Test.html
index 331dfad..7c3bd8e 100644
--- a/juicebox_asm/insn/trait.Test.html
+++ b/juicebox_asm/insn/trait.Test.html
@@ -1,9 +1,9 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Trait for `test` instruction kinds."><title>Test in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../juicebox_asm/index.html">juicebox_asm</a><span class="version">0.1.0</span></h2></div><h2 class="location"><a href="#">Test</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.test">test</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><div class="sidebar-resizer"></div>
- <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Test</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#81-87">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Test&lt;T, U&gt; {
+ <main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Test</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/juicebox_asm/insn.rs.html#97-103">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Test&lt;T, U&gt; {
// Required method
fn <a href="#tymethod.test" class="fn">test</a>(&amp;mut self, op1: T, op2: U);
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/test"><code>test</code></a> instruction kinds.</p>
-</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.test" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#86">source</a><h4 class="code-header">fn <a href="#tymethod.test" class="fn">test</a>(&amp;mut self, op1: T, op2: U)</h4></section></summary><div class="docblock"><p>Emit a logical compare instruction.</p>
+</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.test" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#102">source</a><h4 class="code-header">fn <a href="#tymethod.test" class="fn">test</a>(&amp;mut self, op1: T, op2: U)</h4></section></summary><div class="docblock"><p>Emit a logical compare instruction.</p>
<p>Computes the bit-wise logical AND of first operand and the second operand and sets the
<code>SF</code>, <code>ZF</code>, and <code>PF</code> status flags, the result is discarded.</p>
</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/test.rs.html#16-20">source</a><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a>&lt;<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="../struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Test%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/test.rs.html#10-14">source</a><a href="#impl-Test%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a>&lt;<a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Test%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/test.rs.html#4-8">source</a><a href="#impl-Test%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a>&lt;<a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../trait.impl/juicebox_asm/insn/trait.Test.js" async></script></section></div></main></body></html> \ No newline at end of file
diff --git a/juicebox_asm/struct.Asm.html b/juicebox_asm/struct.Asm.html
index c8cea5f..80e3152 100644
--- a/juicebox_asm/struct.Asm.html
+++ b/juicebox_asm/struct.Asm.html
@@ -1,11 +1,11 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="`x64` jit assembler."><title>Asm in juicebox_asm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../juicebox_asm/index.html">juicebox_asm</a><span class="version">0.1.0</span></h2></div><h2 class="location"><a href="#">Asm</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Methods</a></h3><ul class="block method"><li><a href="#method.bind">bind</a></li><li><a href="#method.into_code">into_code</a></li><li><a href="#method.new">new</a></li><li><a href="#method.nop">nop</a></li><li><a href="#method.ret">ret</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block trait-implementation"><li><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm">Add&lt;MemOp, Imm16&gt;</a></li><li><a href="#impl-Add%3CMemOp,+Reg16%3E-for-Asm">Add&lt;MemOp, Reg16&gt;</a></li><li><a href="#impl-Add%3CReg32,+Reg32%3E-for-Asm">Add&lt;Reg32, Reg32&gt;</a></li><li><a href="#impl-Add%3CReg64,+Reg64%3E-for-Asm">Add&lt;Reg64, Reg64&gt;</a></li><li><a href="#impl-Call%3CReg64%3E-for-Asm">Call&lt;Reg64&gt;</a></li><li><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm">Cmp&lt;MemOp, Imm16&gt;</a></li><li><a href="#impl-Dec%3CReg32%3E-for-Asm">Dec&lt;Reg32&gt;</a></li><li><a href="#impl-Dec%3CReg64%3E-for-Asm">Dec&lt;Reg64&gt;</a></li><li><a href="#impl-Jmp%3C%26mut+Label%3E-for-Asm">Jmp&lt;&amp;mut Label&gt;</a></li><li><a href="#impl-Jnz%3C%26mut+Label%3E-for-Asm">Jnz&lt;&amp;mut Label&gt;</a></li><li><a href="#impl-Jz%3C%26mut+Label%3E-for-Asm">Jz&lt;&amp;mut Label&gt;</a></li><li><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm">Mov&lt;MemOp, Imm16&gt;</a></li><li><a href="#impl-Mov%3CMemOp,+Reg16%3E-for-Asm">Mov&lt;MemOp, Reg16&gt;</a></li><li><a href="#impl-Mov%3CMemOp,+Reg32%3E-for-Asm">Mov&lt;MemOp, Reg32&gt;</a></li><li><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm">Mov&lt;MemOp, Reg64&gt;</a></li><li><a href="#impl-Mov%3CMemOp,+Reg8%3E-for-Asm">Mov&lt;MemOp, Reg8&gt;</a></li><li><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm">Mov&lt;Reg16, Imm16&gt;</a></li><li><a href="#impl-Mov%3CReg16,+MemOp%3E-for-Asm">Mov&lt;Reg16, MemOp&gt;</a></li><li><a href="#impl-Mov%3CReg16,+Reg16%3E-for-Asm">Mov&lt;Reg16, Reg16&gt;</a></li><li><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm">Mov&lt;Reg32, Imm32&gt;</a></li><li><a href="#impl-Mov%3CReg32,+MemOp%3E-for-Asm">Mov&lt;Reg32, MemOp&gt;</a></li><li><a href="#impl-Mov%3CReg32,+Reg32%3E-for-Asm">Mov&lt;Reg32, Reg32&gt;</a></li><li><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm">Mov&lt;Reg64, Imm64&gt;</a></li><li><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm">Mov&lt;Reg64, MemOp&gt;</a></li><li><a href="#impl-Mov%3CReg64,+Reg64%3E-for-Asm">Mov&lt;Reg64, Reg64&gt;</a></li><li><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm">Mov&lt;Reg8, Imm8&gt;</a></li><li><a href="#impl-Mov%3CReg8,+MemOp%3E-for-Asm">Mov&lt;Reg8, MemOp&gt;</a></li><li><a href="#impl-Mov%3CReg8,+Reg8%3E-for-Asm">Mov&lt;Reg8, Reg8&gt;</a></li><li><a href="#impl-Pop%3CReg16%3E-for-Asm">Pop&lt;Reg16&gt;</a></li><li><a href="#impl-Pop%3CReg64%3E-for-Asm">Pop&lt;Reg64&gt;</a></li><li><a href="#impl-Push%3CReg16%3E-for-Asm">Push&lt;Reg16&gt;</a></li><li><a href="#impl-Push%3CReg64%3E-for-Asm">Push&lt;Reg64&gt;</a></li><li><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm">Test&lt;MemOp, Imm16&gt;</a></li><li><a href="#impl-Test%3CReg32,+Reg32%3E-for-Asm">Test&lt;Reg32, Reg32&gt;</a></li><li><a href="#impl-Test%3CReg64,+Reg64%3E-for-Asm">Test&lt;Reg64, Reg64&gt;</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block synthetic-implementation"><li><a href="#impl-RefUnwindSafe-for-Asm">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Asm">Send</a></li><li><a href="#impl-Sync-for-Asm">Sync</a></li><li><a href="#impl-Unpin-for-Asm">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Asm">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block blanket-implementation"><li><a href="#impl-Any-for-T">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-T">Borrow&lt;T&gt;</a></li><li><a href="#impl-BorrowMut%3CT%3E-for-T">BorrowMut&lt;T&gt;</a></li><li><a href="#impl-From%3CT%3E-for-T">From&lt;T&gt;</a></li><li><a href="#impl-Into%3CU%3E-for-T">Into&lt;U&gt;</a></li><li><a href="#impl-TryFrom%3CU%3E-for-T">TryFrom&lt;U&gt;</a></li><li><a href="#impl-TryInto%3CU%3E-for-T">TryInto&lt;U&gt;</a></li></ul></section><h2><a href="index.html">In crate juicebox_asm</a></h2></div></nav><div class="sidebar-resizer"></div>
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="`x64` jit assembler."><title>Asm in juicebox_asm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../juicebox_asm/index.html">juicebox_asm</a><span class="version">0.1.0</span></h2></div><h2 class="location"><a href="#">Asm</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Methods</a></h3><ul class="block method"><li><a href="#method.bind">bind</a></li><li><a href="#method.into_code">into_code</a></li><li><a href="#method.new">new</a></li><li><a href="#method.nop">nop</a></li><li><a href="#method.ret">ret</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block trait-implementation"><li><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm">Add&lt;MemOp, Imm16&gt;</a></li><li><a href="#impl-Add%3CMemOp,+Reg16%3E-for-Asm">Add&lt;MemOp, Reg16&gt;</a></li><li><a href="#impl-Add%3CReg32,+Reg32%3E-for-Asm">Add&lt;Reg32, Reg32&gt;</a></li><li><a href="#impl-Add%3CReg64,+Reg64%3E-for-Asm">Add&lt;Reg64, Reg64&gt;</a></li><li><a href="#impl-Call%3CReg64%3E-for-Asm">Call&lt;Reg64&gt;</a></li><li><a href="#impl-Cmovnz%3CReg64,+Reg64%3E-for-Asm">Cmovnz&lt;Reg64, Reg64&gt;</a></li><li><a href="#impl-Cmovz%3CReg64,+Reg64%3E-for-Asm">Cmovz&lt;Reg64, Reg64&gt;</a></li><li><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm">Cmp&lt;MemOp, Imm16&gt;</a></li><li><a href="#impl-Dec%3CReg32%3E-for-Asm">Dec&lt;Reg32&gt;</a></li><li><a href="#impl-Dec%3CReg64%3E-for-Asm">Dec&lt;Reg64&gt;</a></li><li><a href="#impl-Jmp%3C%26mut+Label%3E-for-Asm">Jmp&lt;&amp;mut Label&gt;</a></li><li><a href="#impl-Jnz%3C%26mut+Label%3E-for-Asm">Jnz&lt;&amp;mut Label&gt;</a></li><li><a href="#impl-Jz%3C%26mut+Label%3E-for-Asm">Jz&lt;&amp;mut Label&gt;</a></li><li><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm">Mov&lt;MemOp, Imm16&gt;</a></li><li><a href="#impl-Mov%3CMemOp,+Reg16%3E-for-Asm">Mov&lt;MemOp, Reg16&gt;</a></li><li><a href="#impl-Mov%3CMemOp,+Reg32%3E-for-Asm">Mov&lt;MemOp, Reg32&gt;</a></li><li><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm">Mov&lt;MemOp, Reg64&gt;</a></li><li><a href="#impl-Mov%3CMemOp,+Reg8%3E-for-Asm">Mov&lt;MemOp, Reg8&gt;</a></li><li><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm">Mov&lt;Reg16, Imm16&gt;</a></li><li><a href="#impl-Mov%3CReg16,+MemOp%3E-for-Asm">Mov&lt;Reg16, MemOp&gt;</a></li><li><a href="#impl-Mov%3CReg16,+Reg16%3E-for-Asm">Mov&lt;Reg16, Reg16&gt;</a></li><li><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm">Mov&lt;Reg32, Imm32&gt;</a></li><li><a href="#impl-Mov%3CReg32,+MemOp%3E-for-Asm">Mov&lt;Reg32, MemOp&gt;</a></li><li><a href="#impl-Mov%3CReg32,+Reg32%3E-for-Asm">Mov&lt;Reg32, Reg32&gt;</a></li><li><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm">Mov&lt;Reg64, Imm64&gt;</a></li><li><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm">Mov&lt;Reg64, MemOp&gt;</a></li><li><a href="#impl-Mov%3CReg64,+Reg64%3E-for-Asm">Mov&lt;Reg64, Reg64&gt;</a></li><li><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm">Mov&lt;Reg8, Imm8&gt;</a></li><li><a href="#impl-Mov%3CReg8,+MemOp%3E-for-Asm">Mov&lt;Reg8, MemOp&gt;</a></li><li><a href="#impl-Mov%3CReg8,+Reg8%3E-for-Asm">Mov&lt;Reg8, Reg8&gt;</a></li><li><a href="#impl-Pop%3CReg16%3E-for-Asm">Pop&lt;Reg16&gt;</a></li><li><a href="#impl-Pop%3CReg64%3E-for-Asm">Pop&lt;Reg64&gt;</a></li><li><a href="#impl-Push%3CReg16%3E-for-Asm">Push&lt;Reg16&gt;</a></li><li><a href="#impl-Push%3CReg64%3E-for-Asm">Push&lt;Reg64&gt;</a></li><li><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm">Test&lt;MemOp, Imm16&gt;</a></li><li><a href="#impl-Test%3CReg32,+Reg32%3E-for-Asm">Test&lt;Reg32, Reg32&gt;</a></li><li><a href="#impl-Test%3CReg64,+Reg64%3E-for-Asm">Test&lt;Reg64, Reg64&gt;</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block synthetic-implementation"><li><a href="#impl-RefUnwindSafe-for-Asm">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Asm">Send</a></li><li><a href="#impl-Sync-for-Asm">Sync</a></li><li><a href="#impl-Unpin-for-Asm">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Asm">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block blanket-implementation"><li><a href="#impl-Any-for-T">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-T">Borrow&lt;T&gt;</a></li><li><a href="#impl-BorrowMut%3CT%3E-for-T">BorrowMut&lt;T&gt;</a></li><li><a href="#impl-From%3CT%3E-for-T">From&lt;T&gt;</a></li><li><a href="#impl-Into%3CU%3E-for-T">Into&lt;U&gt;</a></li><li><a href="#impl-TryFrom%3CU%3E-for-T">TryFrom&lt;U&gt;</a></li><li><a href="#impl-TryInto%3CU%3E-for-T">TryInto&lt;U&gt;</a></li></ul></section><h2><a href="index.html">In crate juicebox_asm</a></h2></div></nav><div class="sidebar-resizer"></div>
<main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../juicebox_asm/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">juicebox_asm</a>::<wbr><a class="struct" href="#">Asm</a><button id="copy-path" title="Copy item path to clipboard"><img src="../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../src/juicebox_asm/asm.rs.html#22-24">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Asm { <span class="comment">/* private fields */</span> }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p><code>x64</code> jit assembler.</p>
-</div></details><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/asm.rs.html#26-247">source</a><a href="#impl-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../src/juicebox_asm/asm.rs.html#28-32">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>() -&gt; <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h4></section></summary><div class="docblock"><p>Create a new <code>x64</code> jit assembler.</p>
+</div></details><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/asm.rs.html#26-248">source</a><a href="#impl-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../src/juicebox_asm/asm.rs.html#28-32">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>() -&gt; <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h4></section></summary><div class="docblock"><p>Create a new <code>x64</code> jit assembler.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.into_code" class="method"><a class="src rightside" href="../src/juicebox_asm/asm.rs.html#35-37">source</a><h4 class="code-header">pub fn <a href="#method.into_code" class="fn">into_code</a>(self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.76.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.u8.html">u8</a>&gt;</h4></section></summary><div class="docblock"><p>Consume the assembler and get the emitted code.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.bind" class="method"><a class="src rightside" href="../src/juicebox_asm/asm.rs.html#65-71">source</a><h4 class="code-header">pub fn <a href="#method.bind" class="fn">bind</a>(&amp;mut self, label: &amp;mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>)</h4></section></summary><div class="docblock"><p>Bind the <a href="struct.Label.html" title="struct juicebox_asm::Label">Label</a> to the current location.</p>
</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Asm-1" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/nop.rs.html#3-8">source</a><a href="#impl-Asm-1" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.nop" class="method"><a class="src rightside" href="../src/juicebox_asm/insn/nop.rs.html#5-7">source</a><h4 class="code-header">pub fn <a href="#method.nop" class="fn">nop</a>(&amp;mut self)</h4></section></summary><div class="docblock"><p>Emit a <a href="https://www.felixcloutier.com/x86/nop"><code>nop</code></a> instruction.</p>
</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Asm-2" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/ret.rs.html#3-8">source</a><a href="#impl-Asm-2" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.ret" class="method"><a class="src rightside" href="../src/juicebox_asm/insn/ret.rs.html#5-7">source</a><h4 class="code-header">pub fn <a href="#method.ret" class="fn">ret</a>(&amp;mut self)</h4></section></summary><div class="docblock"><p>Emit a <a href="https://www.felixcloutier.com/x86/ret"><code>ret</code></a> instruction.</p>
-</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#22-26">source</a><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#23-25">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#16-20">source</a><a href="#impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#17-19">source</a><a href="#method.add-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#10-14">source</a><a href="#impl-Add%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a>&lt;<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#11-13">source</a><a href="#method.add-2" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#4-8">source</a><a href="#impl-Add%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#5-7">source</a><a href="#method.add-3" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Call%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/call.rs.html#4-8">source</a><a href="#impl-Call%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Call.html" title="trait juicebox_asm::insn::Call">Call</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.call" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/call.rs.html#5-7">source</a><a href="#method.call" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Call.html#tymethod.call" class="fn">call</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a call instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmp.rs.html#4-8">source</a><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Cmp.html" title="trait juicebox_asm::insn::Cmp">Cmp</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.cmp" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmp.rs.html#5-7">source</a><a href="#method.cmp" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Cmp.html#tymethod.cmp" class="fn">cmp</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit a compare instruction. <a href="insn/trait.Cmp.html#tymethod.cmp">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Dec%3CReg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#10-14">source</a><a href="#impl-Dec%3CReg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Dec.html" title="trait juicebox_asm::insn::Dec">Dec</a>&lt;<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.dec-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#11-13">source</a><a href="#method.dec-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Dec.html#tymethod.dec" class="fn">dec</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit a decrement instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Dec%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#4-8">source</a><a href="#impl-Dec%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Dec.html" title="trait juicebox_asm::insn::Dec">Dec</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.dec" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#5-7">source</a><a href="#method.dec" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Dec.html#tymethod.dec" class="fn">dec</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a decrement instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jmp%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/jmp.rs.html#4-8">source</a><a href="#impl-Jmp%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Jmp.html" title="trait juicebox_asm::insn::Jmp">Jmp</a>&lt;&amp;mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jmp" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/jmp.rs.html#5-7">source</a><a href="#method.jmp" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Jmp.html#tymethod.jmp" class="fn">jmp</a>(&amp;mut self, op1: &amp;mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit an unconditional jump instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jnz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/jnz.rs.html#4-8">source</a><a href="#impl-Jnz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Jnz.html" title="trait juicebox_asm::insn::Jnz">Jnz</a>&lt;&amp;mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jnz" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/jnz.rs.html#5-7">source</a><a href="#method.jnz" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Jnz.html#tymethod.jnz" class="fn">jnz</a>(&amp;mut self, op1: &amp;mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit a conditional jump if not zero instruction (<code>ZF = 0</code>).</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/jz.rs.html#4-8">source</a><a href="#impl-Jz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Jz.html" title="trait juicebox_asm::insn::Jz">Jz</a>&lt;&amp;mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jz" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/jz.rs.html#5-7">source</a><a href="#method.jz" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Jz.html#tymethod.jz" class="fn">jz</a>(&amp;mut self, op1: &amp;mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit a conditional jump if zero instruction (<code>ZF = 1</code>).</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#110-114">source</a><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-13" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#111-113">source</a><a href="#method.mov-13" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#44-48">source</a><a href="#impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-5" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#45-47">source</a><a href="#method.mov-5" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#38-42">source</a><a href="#impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#39-41">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#32-36">source</a><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-15" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#33-35">source</a><a href="#method.mov-15" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#50-54">source</a><a href="#impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#51-53">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#96-100">source</a><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-9" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#97-99">source</a><a href="#method.mov-9" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#70-74">source</a><a href="#impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-11" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#71-73">source</a><a href="#method.mov-11" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#18-22">source</a><a href="#impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-4" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#19-21">source</a><a href="#method.mov-4" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, op2: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#90-94">source</a><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-16" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#91-93">source</a><a href="#method.mov-16" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#64-68">source</a><a href="#impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-10" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#65-67">source</a><a href="#method.mov-10" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#12-16">source</a><a href="#impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-8" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#13-15">source</a><a href="#method.mov-8" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#84-88">source</a><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-7" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#85-87">source</a><a href="#method.mov-7" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#58-62">source</a><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#59-61">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#6-10">source</a><a href="#impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-6" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#7-9">source</a><a href="#method.mov-6" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#102-106">source</a><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#103-105">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, op2: <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#76-80">source</a><a href="#impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-14" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#77-79">source</a><a href="#method.mov-14" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#24-28">source</a><a href="#impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-12" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#25-27">source</a><a href="#method.mov-12" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, op2: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Pop%3CReg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/pop.rs.html#10-14">source</a><a href="#impl-Pop%3CReg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Pop.html" title="trait juicebox_asm::insn::Pop">Pop</a>&lt;<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.pop-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/pop.rs.html#11-13">source</a><a href="#method.pop-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Pop.html#tymethod.pop" class="fn">pop</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit a pop instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Pop%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/pop.rs.html#4-8">source</a><a href="#impl-Pop%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Pop.html" title="trait juicebox_asm::insn::Pop">Pop</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.pop" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/pop.rs.html#5-7">source</a><a href="#method.pop" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Pop.html#tymethod.pop" class="fn">pop</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a pop instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Push%3CReg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/push.rs.html#10-14">source</a><a href="#impl-Push%3CReg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Push.html" title="trait juicebox_asm::insn::Push">Push</a>&lt;<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.push-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/push.rs.html#11-13">source</a><a href="#method.push-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Push.html#tymethod.push" class="fn">push</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit a push instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Push%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/push.rs.html#4-8">source</a><a href="#impl-Push%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Push.html" title="trait juicebox_asm::insn::Push">Push</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.push" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/push.rs.html#5-7">source</a><a href="#method.push" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Push.html#tymethod.push" class="fn">push</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a push instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#16-20">source</a><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#17-19">source</a><a href="#method.test-2" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Test.html#tymethod.test" class="fn">test</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="insn/trait.Test.html#tymethod.test">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#10-14">source</a><a href="#impl-Test%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a>&lt;<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#11-13">source</a><a href="#method.test-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Test.html#tymethod.test" class="fn">test</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="insn/trait.Test.html#tymethod.test">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#4-8">source</a><a href="#impl-Test%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#5-7">source</a><a href="#method.test" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Test.html#tymethod.test" class="fn">test</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="insn/trait.Test.html#tymethod.test">Read more</a></div></details></div></details></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Asm" class="impl"><a href="#impl-RefUnwindSafe-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Send-for-Asm" class="impl"><a href="#impl-Send-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Sync-for-Asm" class="impl"><a href="#impl-Sync-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Unpin-for-Asm" class="impl"><a href="#impl-Unpin-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-UnwindSafe-for-Asm" class="impl"><a href="#impl-UnwindSafe-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><h2 id="blanket-implementations" class="section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/any.rs.html#140">source</a><a href="#impl-Any-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<div class="where">where
+</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#22-26">source</a><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#23-25">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#16-20">source</a><a href="#impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#17-19">source</a><a href="#method.add-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#10-14">source</a><a href="#impl-Add%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a>&lt;<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#11-13">source</a><a href="#method.add-2" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#4-8">source</a><a href="#impl-Add%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#5-7">source</a><a href="#method.add-3" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Call%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/call.rs.html#4-8">source</a><a href="#impl-Call%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Call.html" title="trait juicebox_asm::insn::Call">Call</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.call" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/call.rs.html#5-7">source</a><a href="#method.call" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Call.html#tymethod.call" class="fn">call</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a call instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Cmovnz%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmovnz.rs.html#4-8">source</a><a href="#impl-Cmovnz%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Cmovnz.html" title="trait juicebox_asm::insn::Cmovnz">Cmovnz</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.cmovnz" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmovnz.rs.html#5-7">source</a><a href="#method.cmovnz" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Cmovnz.html#tymethod.cmovnz" class="fn">cmovnz</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a (conditional) move if not zero instruction. <a href="insn/trait.Cmovnz.html#tymethod.cmovnz">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Cmovz%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmovz.rs.html#4-8">source</a><a href="#impl-Cmovz%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Cmovz.html" title="trait juicebox_asm::insn::Cmovz">Cmovz</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.cmovz" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmovz.rs.html#5-7">source</a><a href="#method.cmovz" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Cmovz.html#tymethod.cmovz" class="fn">cmovz</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a (conditional) move if zero instruction. <a href="insn/trait.Cmovz.html#tymethod.cmovz">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmp.rs.html#4-8">source</a><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Cmp.html" title="trait juicebox_asm::insn::Cmp">Cmp</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.cmp" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmp.rs.html#5-7">source</a><a href="#method.cmp" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Cmp.html#tymethod.cmp" class="fn">cmp</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit a compare instruction. <a href="insn/trait.Cmp.html#tymethod.cmp">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Dec%3CReg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#10-14">source</a><a href="#impl-Dec%3CReg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Dec.html" title="trait juicebox_asm::insn::Dec">Dec</a>&lt;<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.dec-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#11-13">source</a><a href="#method.dec-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Dec.html#tymethod.dec" class="fn">dec</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit a decrement instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Dec%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#4-8">source</a><a href="#impl-Dec%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Dec.html" title="trait juicebox_asm::insn::Dec">Dec</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.dec" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#5-7">source</a><a href="#method.dec" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Dec.html#tymethod.dec" class="fn">dec</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a decrement instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jmp%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/jmp.rs.html#4-8">source</a><a href="#impl-Jmp%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Jmp.html" title="trait juicebox_asm::insn::Jmp">Jmp</a>&lt;&amp;mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jmp" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/jmp.rs.html#5-7">source</a><a href="#method.jmp" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Jmp.html#tymethod.jmp" class="fn">jmp</a>(&amp;mut self, op1: &amp;mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit an unconditional jump instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jnz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/jnz.rs.html#4-8">source</a><a href="#impl-Jnz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Jnz.html" title="trait juicebox_asm::insn::Jnz">Jnz</a>&lt;&amp;mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jnz" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/jnz.rs.html#5-7">source</a><a href="#method.jnz" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Jnz.html#tymethod.jnz" class="fn">jnz</a>(&amp;mut self, op1: &amp;mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit a conditional jump if not zero instruction (<code>ZF = 0</code>).</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/jz.rs.html#4-8">source</a><a href="#impl-Jz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Jz.html" title="trait juicebox_asm::insn::Jz">Jz</a>&lt;&amp;mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jz" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/jz.rs.html#5-7">source</a><a href="#method.jz" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Jz.html#tymethod.jz" class="fn">jz</a>(&amp;mut self, op1: &amp;mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit a conditional jump if zero instruction (<code>ZF = 1</code>).</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#110-114">source</a><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-13" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#111-113">source</a><a href="#method.mov-13" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#44-48">source</a><a href="#impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-5" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#45-47">source</a><a href="#method.mov-5" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#38-42">source</a><a href="#impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#39-41">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#32-36">source</a><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-15" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#33-35">source</a><a href="#method.mov-15" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#50-54">source</a><a href="#impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#51-53">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#96-100">source</a><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-9" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#97-99">source</a><a href="#method.mov-9" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#70-74">source</a><a href="#impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-11" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#71-73">source</a><a href="#method.mov-11" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#18-22">source</a><a href="#impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-4" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#19-21">source</a><a href="#method.mov-4" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, op2: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#90-94">source</a><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-16" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#91-93">source</a><a href="#method.mov-16" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#64-68">source</a><a href="#impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-10" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#65-67">source</a><a href="#method.mov-10" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#12-16">source</a><a href="#impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-8" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#13-15">source</a><a href="#method.mov-8" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#84-88">source</a><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-7" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#85-87">source</a><a href="#method.mov-7" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#58-62">source</a><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#59-61">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#6-10">source</a><a href="#impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-6" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#7-9">source</a><a href="#method.mov-6" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#102-106">source</a><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#103-105">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, op2: <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#76-80">source</a><a href="#impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-14" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#77-79">source</a><a href="#method.mov-14" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#24-28">source</a><a href="#impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a>&lt;<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-12" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#25-27">source</a><a href="#method.mov-12" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, op2: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Pop%3CReg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/pop.rs.html#10-14">source</a><a href="#impl-Pop%3CReg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Pop.html" title="trait juicebox_asm::insn::Pop">Pop</a>&lt;<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.pop-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/pop.rs.html#11-13">source</a><a href="#method.pop-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Pop.html#tymethod.pop" class="fn">pop</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit a pop instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Pop%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/pop.rs.html#4-8">source</a><a href="#impl-Pop%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Pop.html" title="trait juicebox_asm::insn::Pop">Pop</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.pop" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/pop.rs.html#5-7">source</a><a href="#method.pop" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Pop.html#tymethod.pop" class="fn">pop</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a pop instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Push%3CReg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/push.rs.html#10-14">source</a><a href="#impl-Push%3CReg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Push.html" title="trait juicebox_asm::insn::Push">Push</a>&lt;<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.push-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/push.rs.html#11-13">source</a><a href="#method.push-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Push.html#tymethod.push" class="fn">push</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit a push instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Push%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/push.rs.html#4-8">source</a><a href="#impl-Push%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Push.html" title="trait juicebox_asm::insn::Push">Push</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.push" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/push.rs.html#5-7">source</a><a href="#method.push" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Push.html#tymethod.push" class="fn">push</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a push instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#16-20">source</a><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a>&lt;<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#17-19">source</a><a href="#method.test-2" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Test.html#tymethod.test" class="fn">test</a>(&amp;mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="insn/trait.Test.html#tymethod.test">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#10-14">source</a><a href="#impl-Test%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a>&lt;<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#11-13">source</a><a href="#method.test-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Test.html#tymethod.test" class="fn">test</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="insn/trait.Test.html#tymethod.test">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#4-8">source</a><a href="#impl-Test%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a>&lt;<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>&gt; for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#5-7">source</a><a href="#method.test" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Test.html#tymethod.test" class="fn">test</a>(&amp;mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="insn/trait.Test.html#tymethod.test">Read more</a></div></details></div></details></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Asm" class="impl"><a href="#impl-RefUnwindSafe-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Send-for-Asm" class="impl"><a href="#impl-Send-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Sync-for-Asm" class="impl"><a href="#impl-Sync-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Unpin-for-Asm" class="impl"><a href="#impl-Unpin-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-UnwindSafe-for-Asm" class="impl"><a href="#impl-UnwindSafe-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><h2 id="blanket-implementations" class="section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/any.rs.html#140">source</a><a href="#impl-Any-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<div class="where">where
T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.76.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.76.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&amp;T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;T&gt; for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&amp;mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#763">source</a><a href="#impl-From%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#766">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -&gt; T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p>
diff --git a/search-index.js b/search-index.js
index 66516d6..a388764 100644
--- a/search-index.js
+++ b/search-index.js
@@ -1,7 +1,7 @@
var searchIndex = new Map(JSON.parse('[\
["add",{"doc":"Add example.","t":"","n":[],"q":[],"d":[],"i":[],"f":[],"c":[],"p":[],"b":[]}],\
["fib",{"doc":"Fibonacci example.","t":"","n":[],"q":[],"d":[],"i":[],"f":[],"c":[],"p":[],"b":[]}],\
-["juicebox_asm",{"doc":"A simple <code>x64</code> jit assembler with a minimal runtime to …","t":"FFFFFPPFGGGGGFNNNNNPPPPNPNNNNNNNNNNNNNNNNNNNNNNNNPPPNPPNNNNNNNNNPNNPPPPNNNPPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPNPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKKKKKKKKKKMMMMMMMMMMM","n":["Asm","Imm16","Imm32","Imm64","Imm8","Indirect","IndirectDisp","Label","MemOp","Reg16","Reg32","Reg64","Reg8","Runtime","add","add","add","add","add_code","ah","al","ax","bh","bind","bl","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bp","bpl","bx","call","ch","cl","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","cmp","cx","dec","dec","dh","di","dil","dl","drop","drop","dump","dx","eax","ebp","ebx","ecx","edi","edx","esi","esp","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","insn","into","into","into","into","into","into","into","into","into","into","into","into","into_code","jmp","jnz","jz","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","new","new","new","nop","pop","pop","push","push","r10","r10d","r10l","r10w","r11","r11d","r11l","r11w","r12","r12d","r12l","r12w","r13","r13d","r13l","r13w","r14","r14d","r14l","r14w","r15","r15d","r15l","r15w","r8","r8d","r8l","r8w","r9","r9d","r9l","r9w","rax","rbp","rbx","rcx","rdi","rdx","ret","rsi","rsp","si","sil","sp","spl","test","test","test","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","with_profile","Add","Call","Cmp","Dec","Jmp","Jnz","Jz","Mov","Pop","Push","Test","add","call","cmp","dec","jmp","jnz","jz","mov","pop","push","test"],"q":[[0,"juicebox_asm"],[248,"juicebox_asm::insn"],[270,"core::convert"],[271,"alloc::vec"],[272,"core::result"],[273,"core::any"]],"d":["<code>x64</code> jit assembler.","Type representing a 16 bit immediate.","Type representing a 32 bit immediate.","Type representing a 64 bit immediate.","Type representing an 8 bit immediate.","An indirect memory operand, eg <code>mov [rax], rcx</code>.","An indirect memory operand with additional displacement, …","A label which is used as target for jump instructions.","Type representing a memory operand.","Definition of 16 bit registers.","Definition of 32 bit registers.","Definition of 64 bit registers.","Definition of 8 bit registers.","A simple <code>mmap</code>ed runtime with executable pages.","","","","","Add the block of <code>code</code> to the runtime and a get function …","","","","","Bind the Label to the current location.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Unmaps the code page. This invalidates all the function …","Dump the code added so far to the runtime into a file …","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Trait definitions of various instructions.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Consume the assembler and get the emitted code.","","","","","","","","","","","","","","","","","","","","","Create a new <code>x64</code> jit assembler.","Create a new <code>unbound</code> Label.","Create a new Runtime.","Emit a <code>nop</code> instruction.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Emit a <code>ret</code> instruction.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Create a new Runtime which also generates static perf …","Trait for <code>add</code> instruction kinds.","Trait for <code>call</code> instruction kinds.","Trait for <code>cmp</code> instruction kinds.","Trait for <code>dec</code> instruction kinds.","Trait for <code>jmp</code> instruction kinds.","Trait for <code>jnz</code> instruction kinds.","Trait for <code>jz</code> instruction kinds.","Trait for <code>mov</code> instruction kinds.","Trait for <code>pop</code> instruction kinds.","Trait for <code>push</code> instruction kinds.","Trait for <code>test</code> instruction kinds.","Emit an add instruction.","Emit a call instruction.","Emit a compare instruction.","Emit a decrement instruction.","Emit an unconditional jump instruction.","Emit a conditional jump if not zero instruction (<code>ZF = 0</code>).","Emit a conditional jump if zero instruction (<code>ZF = 1</code>).","Emit an move instruction.","Emit a pop instruction.","Emit a push instruction.","Emit a logical compare instruction."],"i":[0,0,0,0,0,2,2,0,0,0,0,0,0,0,1,1,1,1,8,13,13,6,13,1,13,1,12,8,2,14,3,18,21,7,5,6,13,1,12,8,2,14,3,18,21,7,5,6,13,6,13,6,1,13,13,7,5,6,13,7,5,6,13,1,6,1,1,13,6,13,13,12,8,8,6,5,5,5,5,5,5,5,5,1,12,8,2,14,14,14,3,3,3,3,3,18,18,18,18,18,18,18,21,21,21,21,21,21,21,21,21,21,21,7,5,6,13,0,1,12,8,2,14,3,18,21,7,5,6,13,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,12,8,1,1,1,1,1,7,5,13,6,7,5,13,6,7,5,13,6,7,5,13,6,7,5,13,6,7,5,13,6,7,5,13,6,7,5,13,6,7,7,7,7,7,7,1,7,7,6,13,6,13,1,1,1,7,5,6,13,1,12,8,2,14,3,18,21,7,5,6,13,1,12,8,2,14,3,18,21,7,5,6,13,1,12,8,2,14,3,18,21,7,5,6,13,8,0,0,0,0,0,0,0,0,0,0,0,29,30,31,32,33,34,35,36,37,38,39],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[1,2,3],4],[[1,5,5],4],[[1,2,6],4],[[1,7,7],4],[[8,-1],-2,[[11,[[10,[9]]]]],[]],0,0,0,0,[[1,12],4],0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,[[1,7],4],0,0,[7,7],[5,5],[6,6],[13,13],[[-1,-2],4,[],[]],[[-1,-2],4,[],[]],[[-1,-2],4,[],[]],[[-1,-2],4,[],[]],[[1,2,3],4],0,[[1,5],4],[[1,7],4],0,0,0,0,[12,4],[8,4],[8,4],0,0,0,0,0,0,0,0,0,[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[9,14],[15,14],[16,3],[15,3],[9,3],[-1,-1,[]],[17,3],[15,18],[-1,-1,[]],[17,18],[16,18],[9,18],[19,18],[20,18],[-1,-1,[]],[17,21],[22,21],[15,21],[20,21],[19,21],[23,21],[24,21],[9,21],[25,21],[16,21],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[1,[[26,[9]]]],[[1,12],4],[[1,12],4],[[1,12],4],[[1,7,2],4],[[1,7,7],4],[[1,6,6],4],[[1,2,5],4],[[1,13,14],4],[[1,2,6],4],[[1,5,18],4],[[1,2,13],4],[[1,2,7],4],[[1,13,2],4],[[1,2,3],4],[[1,13,13],4],[[1,7,21],4],[[1,6,2],4],[[1,5,2],4],[[1,6,3],4],[[1,5,5],4],[[],1],[[],12],[[],8],[1,4],[[1,6],4],[[1,7],4],[[1,7],4],[[1,6],4],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[1,4],0,0,0,0,0,0,[[1,2,3],4],[[1,7,7],4],[[1,5,5],4],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[[],8],0,0,0,0,0,0,0,0,0,0,0,[[29,-1,-2],4,[],[]],[[30,-1],4,[]],[[31,-1,-2],4,[],[]],[[32,-1],4,[]],[[33,-1],4,[]],[[34,-1],4,[]],[[35,-1],4,[]],[[36,-1,-2],4,[],[]],[[37,-1],4,[]],[[38,-1],4,[]],[[39,-1,-2],4,[],[]]],"c":[],"p":[[5,"Asm",0],[6,"MemOp",0],[5,"Imm16",0],[1,"tuple"],[6,"Reg32",0],[6,"Reg16",0],[6,"Reg64",0],[5,"Runtime",0],[1,"u8"],[1,"slice"],[10,"AsRef",270],[5,"Label",0],[6,"Reg8",0],[5,"Imm8",0],[1,"i8"],[1,"u16"],[1,"i16"],[5,"Imm32",0],[1,"i32"],[1,"u32"],[5,"Imm64",0],[1,"i64"],[1,"usize"],[1,"u64"],[1,"isize"],[5,"Vec",271],[6,"Result",272],[5,"TypeId",273],[10,"Add",248],[10,"Call",248],[10,"Cmp",248],[10,"Dec",248],[10,"Jmp",248],[10,"Jnz",248],[10,"Jz",248],[10,"Mov",248],[10,"Pop",248],[10,"Push",248],[10,"Test",248]],"b":[[14,"impl-Add%3CMemOp,+Imm16%3E-for-Asm"],[15,"impl-Add%3CReg32,+Reg32%3E-for-Asm"],[16,"impl-Add%3CMemOp,+Reg16%3E-for-Asm"],[17,"impl-Add%3CReg64,+Reg64%3E-for-Asm"],[65,"impl-Dec%3CReg32%3E-for-Asm"],[66,"impl-Dec%3CReg64%3E-for-Asm"],[88,"impl-From%3Cu8%3E-for-Imm8"],[89,"impl-From%3Ci8%3E-for-Imm8"],[90,"impl-From%3Cu16%3E-for-Imm16"],[91,"impl-From%3Ci8%3E-for-Imm16"],[92,"impl-From%3Cu8%3E-for-Imm16"],[94,"impl-From%3Ci16%3E-for-Imm16"],[95,"impl-From%3Ci8%3E-for-Imm32"],[97,"impl-From%3Ci16%3E-for-Imm32"],[98,"impl-From%3Cu16%3E-for-Imm32"],[99,"impl-From%3Cu8%3E-for-Imm32"],[100,"impl-From%3Ci32%3E-for-Imm32"],[101,"impl-From%3Cu32%3E-for-Imm32"],[103,"impl-From%3Ci16%3E-for-Imm64"],[104,"impl-From%3Ci64%3E-for-Imm64"],[105,"impl-From%3Ci8%3E-for-Imm64"],[106,"impl-From%3Cu32%3E-for-Imm64"],[107,"impl-From%3Ci32%3E-for-Imm64"],[108,"impl-From%3Cusize%3E-for-Imm64"],[109,"impl-From%3Cu64%3E-for-Imm64"],[110,"impl-From%3Cu8%3E-for-Imm64"],[111,"impl-From%3Cisize%3E-for-Imm64"],[112,"impl-From%3Cu16%3E-for-Imm64"],[134,"impl-Mov%3CReg64,+MemOp%3E-for-Asm"],[135,"impl-Mov%3CReg64,+Reg64%3E-for-Asm"],[136,"impl-Mov%3CReg16,+Reg16%3E-for-Asm"],[137,"impl-Mov%3CMemOp,+Reg32%3E-for-Asm"],[138,"impl-Mov%3CReg8,+Imm8%3E-for-Asm"],[139,"impl-Mov%3CMemOp,+Reg16%3E-for-Asm"],[140,"impl-Mov%3CReg32,+Imm32%3E-for-Asm"],[141,"impl-Mov%3CMemOp,+Reg8%3E-for-Asm"],[142,"impl-Mov%3CMemOp,+Reg64%3E-for-Asm"],[143,"impl-Mov%3CReg8,+MemOp%3E-for-Asm"],[144,"impl-Mov%3CMemOp,+Imm16%3E-for-Asm"],[145,"impl-Mov%3CReg8,+Reg8%3E-for-Asm"],[146,"impl-Mov%3CReg64,+Imm64%3E-for-Asm"],[147,"impl-Mov%3CReg16,+MemOp%3E-for-Asm"],[148,"impl-Mov%3CReg32,+MemOp%3E-for-Asm"],[149,"impl-Mov%3CReg16,+Imm16%3E-for-Asm"],[150,"impl-Mov%3CReg32,+Reg32%3E-for-Asm"],[155,"impl-Pop%3CReg16%3E-for-Asm"],[156,"impl-Pop%3CReg64%3E-for-Asm"],[157,"impl-Push%3CReg64%3E-for-Asm"],[158,"impl-Push%3CReg16%3E-for-Asm"],[204,"impl-Test%3CMemOp,+Imm16%3E-for-Asm"],[205,"impl-Test%3CReg64,+Reg64%3E-for-Asm"],[206,"impl-Test%3CReg32,+Reg32%3E-for-Asm"]]}],\
+["juicebox_asm",{"doc":"A simple <code>x64</code> jit assembler with a minimal runtime to …","t":"FFFFFPPFGGGGGFNNNNNPPPPNPNNNNNNNNNNNNNNNNNNNNNNNNPPPNPPNNNNNNNNNNNPNNPPPPNNNPPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPNPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKKKKKKKKKKKKMMMMMMMMMMMMM","n":["Asm","Imm16","Imm32","Imm64","Imm8","Indirect","IndirectDisp","Label","MemOp","Reg16","Reg32","Reg64","Reg8","Runtime","add","add","add","add","add_code","ah","al","ax","bh","bind","bl","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bp","bpl","bx","call","ch","cl","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","cmovnz","cmovz","cmp","cx","dec","dec","dh","di","dil","dl","drop","drop","dump","dx","eax","ebp","ebx","ecx","edi","edx","esi","esp","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","insn","into","into","into","into","into","into","into","into","into","into","into","into","into_code","jmp","jnz","jz","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","new","new","new","nop","pop","pop","push","push","r10","r10d","r10l","r10w","r11","r11d","r11l","r11w","r12","r12d","r12l","r12w","r13","r13d","r13l","r13w","r14","r14d","r14l","r14w","r15","r15d","r15l","r15w","r8","r8d","r8l","r8w","r9","r9d","r9l","r9w","rax","rbp","rbx","rcx","rdi","rdx","ret","rsi","rsp","si","sil","sp","spl","test","test","test","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","with_profile","Add","Call","Cmovnz","Cmovz","Cmp","Dec","Jmp","Jnz","Jz","Mov","Pop","Push","Test","add","call","cmovnz","cmovz","cmp","dec","jmp","jnz","jz","mov","pop","push","test"],"q":[[0,"juicebox_asm"],[250,"juicebox_asm::insn"],[276,"core::convert"],[277,"alloc::vec"],[278,"core::result"],[279,"core::any"]],"d":["<code>x64</code> jit assembler.","Type representing a 16 bit immediate.","Type representing a 32 bit immediate.","Type representing a 64 bit immediate.","Type representing an 8 bit immediate.","An indirect memory operand, eg <code>mov [rax], rcx</code>.","An indirect memory operand with additional displacement, …","A label which is used as target for jump instructions.","Type representing a memory operand.","Definition of 16 bit registers.","Definition of 32 bit registers.","Definition of 64 bit registers.","Definition of 8 bit registers.","A simple <code>mmap</code>ed runtime with executable pages.","","","","","Add the block of <code>code</code> to the runtime and a get function …","","","","","Bind the Label to the current location.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Unmaps the code page. This invalidates all the function …","Dump the code added so far to the runtime into a file …","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","","","","","","Returns the argument unchanged.","","","","","","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Trait definitions of various instructions.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Consume the assembler and get the emitted code.","","","","","","","","","","","","","","","","","","","","","Create a new <code>x64</code> jit assembler.","Create a new <code>unbound</code> Label.","Create a new Runtime.","Emit a <code>nop</code> instruction.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Emit a <code>ret</code> instruction.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Create a new Runtime which also generates static perf …","Trait for <code>add</code> instruction kinds.","Trait for <code>call</code> instruction kinds.","","","Trait for <code>cmp</code> instruction kinds.","Trait for <code>dec</code> instruction kinds.","Trait for <code>jmp</code> instruction kinds.","Trait for <code>jnz</code> instruction kinds.","Trait for <code>jz</code> instruction kinds.","Trait for <code>mov</code> instruction kinds.","Trait for <code>pop</code> instruction kinds.","Trait for <code>push</code> instruction kinds.","Trait for <code>test</code> instruction kinds.","Emit an add instruction.","Emit a call instruction.","Emit a (conditional) move if not zero instruction.","Emit a (conditional) move if zero instruction.","Emit a compare instruction.","Emit a decrement instruction.","Emit an unconditional jump instruction.","Emit a conditional jump if not zero instruction (<code>ZF = 0</code>).","Emit a conditional jump if zero instruction (<code>ZF = 1</code>).","Emit an move instruction.","Emit a pop instruction.","Emit a push instruction.","Emit a logical compare instruction."],"i":[0,0,0,0,0,2,2,0,0,0,0,0,0,0,1,1,1,1,8,13,13,3,13,1,13,1,12,8,2,14,5,19,21,6,7,3,13,1,12,8,2,14,5,19,21,6,7,3,13,3,13,3,1,13,13,6,7,3,13,6,7,3,13,1,1,1,3,1,1,13,3,13,13,12,8,8,3,7,7,7,7,7,7,7,7,1,12,8,2,14,14,14,5,5,5,5,5,19,19,19,19,19,19,19,21,21,21,21,21,21,21,21,21,21,21,6,7,3,13,0,1,12,8,2,14,5,19,21,6,7,3,13,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,12,8,1,1,1,1,1,6,7,13,3,6,7,13,3,6,7,13,3,6,7,13,3,6,7,13,3,6,7,13,3,6,7,13,3,6,7,13,3,6,6,6,6,6,6,1,6,6,3,13,3,13,1,1,1,6,7,3,13,1,12,8,2,14,5,19,21,6,7,3,13,1,12,8,2,14,5,19,21,6,7,3,13,1,12,8,2,14,5,19,21,6,7,3,13,8,0,0,0,0,0,0,0,0,0,0,0,0,0,29,30,31,32,33,34,35,36,37,38,39,40,41],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[1,2,3],4],[[1,2,5],4],[[1,6,6],4],[[1,7,7],4],[[8,-1],-2,[[11,[[10,[9]]]]],[]],0,0,0,0,[[1,12],4],0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,[[1,6],4],0,0,[6,6],[7,7],[3,3],[13,13],[[-1,-2],4,[],[]],[[-1,-2],4,[],[]],[[-1,-2],4,[],[]],[[-1,-2],4,[],[]],[[1,6,6],4],[[1,6,6],4],[[1,2,5],4],0,[[1,6],4],[[1,7],4],0,0,0,0,[12,4],[8,4],[8,4],0,0,0,0,0,0,0,0,0,[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[9,14],[15,14],[16,5],[9,5],[15,5],[-1,-1,[]],[17,5],[18,19],[15,19],[16,19],[17,19],[9,19],[-1,-1,[]],[20,19],[17,21],[16,21],[22,21],[23,21],[24,21],[9,21],[20,21],[18,21],[25,21],[-1,-1,[]],[15,21],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[1,[[26,[9]]]],[[1,12],4],[[1,12],4],[[1,12],4],[[1,6,6],4],[[1,2,7],4],[[1,13,2],4],[[1,2,5],4],[[1,13,13],4],[[1,3,2],4],[[1,7,2],4],[[1,3,5],4],[[1,7,7],4],[[1,6,21],4],[[1,2,13],4],[[1,2,3],4],[[1,6,2],4],[[1,13,14],4],[[1,2,6],4],[[1,3,3],4],[[1,7,19],4],[[],1],[[],12],[[],8],[1,4],[[1,3],4],[[1,6],4],[[1,3],4],[[1,6],4],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[1,4],0,0,0,0,0,0,[[1,2,5],4],[[1,6,6],4],[[1,7,7],4],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[[],8],0,0,0,0,0,0,0,0,0,0,0,0,0,[[29,-1,-2],4,[],[]],[[30,-1],4,[]],[[31,-1,-2],4,[],[]],[[32,-1,-2],4,[],[]],[[33,-1,-2],4,[],[]],[[34,-1],4,[]],[[35,-1],4,[]],[[36,-1],4,[]],[[37,-1],4,[]],[[38,-1,-2],4,[],[]],[[39,-1],4,[]],[[40,-1],4,[]],[[41,-1,-2],4,[],[]]],"c":[],"p":[[5,"Asm",0],[6,"MemOp",0],[6,"Reg16",0],[1,"tuple"],[5,"Imm16",0],[6,"Reg64",0],[6,"Reg32",0],[5,"Runtime",0],[1,"u8"],[1,"slice"],[10,"AsRef",276],[5,"Label",0],[6,"Reg8",0],[5,"Imm8",0],[1,"i8"],[1,"u16"],[1,"i16"],[1,"u32"],[5,"Imm32",0],[1,"i32"],[5,"Imm64",0],[1,"i64"],[1,"isize"],[1,"usize"],[1,"u64"],[5,"Vec",277],[6,"Result",278],[5,"TypeId",279],[10,"Add",250],[10,"Call",250],[10,"Cmovnz",250],[10,"Cmovz",250],[10,"Cmp",250],[10,"Dec",250],[10,"Jmp",250],[10,"Jnz",250],[10,"Jz",250],[10,"Mov",250],[10,"Pop",250],[10,"Push",250],[10,"Test",250]],"b":[[14,"impl-Add%3CMemOp,+Reg16%3E-for-Asm"],[15,"impl-Add%3CMemOp,+Imm16%3E-for-Asm"],[16,"impl-Add%3CReg64,+Reg64%3E-for-Asm"],[17,"impl-Add%3CReg32,+Reg32%3E-for-Asm"],[67,"impl-Dec%3CReg64%3E-for-Asm"],[68,"impl-Dec%3CReg32%3E-for-Asm"],[90,"impl-From%3Cu8%3E-for-Imm8"],[91,"impl-From%3Ci8%3E-for-Imm8"],[92,"impl-From%3Cu16%3E-for-Imm16"],[93,"impl-From%3Cu8%3E-for-Imm16"],[94,"impl-From%3Ci8%3E-for-Imm16"],[96,"impl-From%3Ci16%3E-for-Imm16"],[97,"impl-From%3Cu32%3E-for-Imm32"],[98,"impl-From%3Ci8%3E-for-Imm32"],[99,"impl-From%3Cu16%3E-for-Imm32"],[100,"impl-From%3Ci16%3E-for-Imm32"],[101,"impl-From%3Cu8%3E-for-Imm32"],[103,"impl-From%3Ci32%3E-for-Imm32"],[104,"impl-From%3Ci16%3E-for-Imm64"],[105,"impl-From%3Cu16%3E-for-Imm64"],[106,"impl-From%3Ci64%3E-for-Imm64"],[107,"impl-From%3Cisize%3E-for-Imm64"],[108,"impl-From%3Cusize%3E-for-Imm64"],[109,"impl-From%3Cu8%3E-for-Imm64"],[110,"impl-From%3Ci32%3E-for-Imm64"],[111,"impl-From%3Cu32%3E-for-Imm64"],[112,"impl-From%3Cu64%3E-for-Imm64"],[114,"impl-From%3Ci8%3E-for-Imm64"],[136,"impl-Mov%3CReg64,+Reg64%3E-for-Asm"],[137,"impl-Mov%3CMemOp,+Reg32%3E-for-Asm"],[138,"impl-Mov%3CReg8,+MemOp%3E-for-Asm"],[139,"impl-Mov%3CMemOp,+Imm16%3E-for-Asm"],[140,"impl-Mov%3CReg8,+Reg8%3E-for-Asm"],[141,"impl-Mov%3CReg16,+MemOp%3E-for-Asm"],[142,"impl-Mov%3CReg32,+MemOp%3E-for-Asm"],[143,"impl-Mov%3CReg16,+Imm16%3E-for-Asm"],[144,"impl-Mov%3CReg32,+Reg32%3E-for-Asm"],[145,"impl-Mov%3CReg64,+Imm64%3E-for-Asm"],[146,"impl-Mov%3CMemOp,+Reg8%3E-for-Asm"],[147,"impl-Mov%3CMemOp,+Reg16%3E-for-Asm"],[148,"impl-Mov%3CReg64,+MemOp%3E-for-Asm"],[149,"impl-Mov%3CReg8,+Imm8%3E-for-Asm"],[150,"impl-Mov%3CMemOp,+Reg64%3E-for-Asm"],[151,"impl-Mov%3CReg16,+Reg16%3E-for-Asm"],[152,"impl-Mov%3CReg32,+Imm32%3E-for-Asm"],[157,"impl-Pop%3CReg16%3E-for-Asm"],[158,"impl-Pop%3CReg64%3E-for-Asm"],[159,"impl-Push%3CReg16%3E-for-Asm"],[160,"impl-Push%3CReg64%3E-for-Asm"],[206,"impl-Test%3CMemOp,+Imm16%3E-for-Asm"],[207,"impl-Test%3CReg64,+Reg64%3E-for-Asm"],[208,"impl-Test%3CReg32,+Reg32%3E-for-Asm"]]}],\
["tiny_vm",{"doc":"TinyVm example.","t":"PPPPPPPFPPPFPGGFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHHHNNNNNNNNNNNNNNNNNNNNNNN","n":["A","Add","Addi","B","Branch","BranchZero","C","Fixup","Halt","Load","LoadImm","PhysAddr","Store","TinyInsn","TinyReg","TinyVm","bind","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","dump","eq","eq","fmt","fmt","from","from","from","from","from","interp","into","into","into","into","into","into","jit","make_tinyvm_fib","make_tinyvm_jit_perf","make_tinyvm_jit_test","new","new","read_mem","read_reg","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","write_mem","write_reg"],"q":[[0,"tiny_vm"],[75,"alloc::vec"],[76,"core::fmt"],[77,"core::fmt"],[78,"core::any"]],"d":["","Add the register to the register <code>reg1 += reg2</code>.","Add the immediate to the register <code>reg += imm</code>.","","Jump unconditional (absolute addressing) <code>pc = disp</code>.","Jump if the register is zero (absolute addressing) …","","A minial fixup utility to implement jump labels when …","Halt the VM.","Load a value from the memory (absolute addressing) into …","Load the immediate value into the register <code>reg = imm</code>.","A guest physical address.","Store a value from the register into the memory (absolute …","The instructions for the <code>TinyVm</code>.","The registers for the <code>TinyVm</code>.","The <code>TinyVm</code> virtual machine state.","Bind the <code>Fixup</code> to the current location of <code>prog</code> and resolve …","","","","","","","","","","","","","","","Dump the VM state to stdout.","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Run in interpreter mode until the next <code>TinyInsn::Halt</code> …","","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Run in JIT mode until the next <code>TinyInsn::Halt</code> instruction …","Generate a guest program to compute the fiibonacci …","Generate a simple count down loop to crunch some …","Generate a test program for the jit.","Create a new <code>TinyVm</code> and initialize the instruction memory …","Create a new <code>Fixup</code> at the current pc.","Read guest data memory.","Read guest register.","","","","","","","","","","","","","","","","","","Write guest data memory.","Write guest register."],"i":[5,2,2,5,2,2,5,0,2,2,2,0,2,0,0,0,1,10,6,1,5,2,10,6,1,5,2,5,2,5,2,6,5,2,5,2,10,6,1,5,2,6,10,10,6,1,5,2,6,0,0,0,6,1,6,6,5,2,10,6,1,5,2,10,6,1,5,2,10,6,1,5,2,6,6],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[1,[3,[2]]],4],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[5,5],[2,2],[[-1,-2],4,[],[]],[[-1,-2],4,[],[]],[6,4],[[5,5],7],[[2,2],7],[[5,8],9],[[2,8],9],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[6,4],[10,11],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[6,4],[12,[[3,[2]]]],[[],[[3,[2]]]],[[],[[3,[2]]]],[[[3,[2]]],6],[11,1],[[6,10],12],[[6,5],12],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,14,[]],[-1,14,[]],[-1,14,[]],[-1,14,[]],[-1,14,[]],[[6,10,12],4],[[6,5,12],4]],"c":[],"p":[[5,"Fixup",0],[6,"TinyInsn",0],[5,"Vec",75],[1,"tuple"],[6,"TinyReg",0],[5,"TinyVm",0],[1,"bool"],[5,"Formatter",76],[8,"Result",76],[5,"PhysAddr",0],[1,"usize"],[1,"u16"],[6,"Result",77],[5,"TypeId",78]],"b":[]}]\
]'));
if (typeof exports !== 'undefined') exports.searchIndex = searchIndex;
diff --git a/src-files.js b/src-files.js
index d85add1..fe5bae1 100644
--- a/src-files.js
+++ b/src-files.js
@@ -1,7 +1,7 @@
var srcIndex = new Map(JSON.parse('[\
["add",["",[],["add.rs"]]],\
["fib",["",[],["fib.rs"]]],\
-["juicebox_asm",["",[["insn",[],["add.rs","call.rs","cmp.rs","dec.rs","jmp.rs","jnz.rs","jz.rs","mov.rs","nop.rs","pop.rs","push.rs","ret.rs","test.rs"]]],["asm.rs","imm.rs","insn.rs","label.rs","lib.rs","reg.rs","rt.rs"]]],\
+["juicebox_asm",["",[["insn",[],["add.rs","call.rs","cmovnz.rs","cmovz.rs","cmp.rs","dec.rs","jmp.rs","jnz.rs","jz.rs","mov.rs","nop.rs","pop.rs","push.rs","ret.rs","test.rs"]]],["asm.rs","imm.rs","insn.rs","label.rs","lib.rs","reg.rs","rt.rs"]]],\
["tiny_vm",["",[],["tiny_vm.rs"]]]\
]'));
createSrcSidebar();
diff --git a/src/juicebox_asm/asm.rs.html b/src/juicebox_asm/asm.rs.html
index e58260d..4418397 100644
--- a/src/juicebox_asm/asm.rs.html
+++ b/src/juicebox_asm/asm.rs.html
@@ -343,6 +343,7 @@
<a href="#342" id="342">342</a>
<a href="#343" id="343">343</a>
<a href="#344" id="344">344</a>
+<a href="#345" id="345">345</a>
</pre></div><pre class="rust"><code><span class="doccomment">//! The `x64` jit assembler.
</span><span class="kw">use crate</span>::<span class="kw-2">*</span>;
@@ -437,7 +438,7 @@
<span class="comment">// -- Encode utilities.
</span><span class="doccomment">/// Encode an register-register instruction.
- </span><span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">fn </span>encode_rr&lt;T: Reg&gt;(<span class="kw-2">&amp;mut </span><span class="self">self</span>, opc: u8, op1: T, op2: T)
+ </span><span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">fn </span>encode_rr&lt;T: Reg&gt;(<span class="kw-2">&amp;mut </span><span class="self">self</span>, opc: <span class="kw-2">&amp;</span>[u8], op1: T, op2: T)
<span class="kw">where
</span><span class="self">Self</span>: EncodeRR&lt;T&gt;,
{
@@ -454,7 +455,8 @@
<span class="kw">let </span>rex = &lt;<span class="self">Self </span><span class="kw">as </span>EncodeRR&lt;T&gt;&gt;::rex(op1, op2);
<span class="self">self</span>.emit_optional(<span class="kw-2">&amp;</span>[prefix, rex]);
- <span class="self">self</span>.emit(<span class="kw-2">&amp;</span>[opc, modrm]);
+ <span class="self">self</span>.emit(opc);
+ <span class="self">self</span>.emit(<span class="kw-2">&amp;</span>[modrm]);
}
<span class="doccomment">/// Encode an offset-immediate instruction.
diff --git a/src/juicebox_asm/insn.rs.html b/src/juicebox_asm/insn.rs.html
index 7198773..029258c 100644
--- a/src/juicebox_asm/insn.rs.html
+++ b/src/juicebox_asm/insn.rs.html
@@ -86,10 +86,28 @@
<a href="#85" id="85">85</a>
<a href="#86" id="86">86</a>
<a href="#87" id="87">87</a>
+<a href="#88" id="88">88</a>
+<a href="#89" id="89">89</a>
+<a href="#90" id="90">90</a>
+<a href="#91" id="91">91</a>
+<a href="#92" id="92">92</a>
+<a href="#93" id="93">93</a>
+<a href="#94" id="94">94</a>
+<a href="#95" id="95">95</a>
+<a href="#96" id="96">96</a>
+<a href="#97" id="97">97</a>
+<a href="#98" id="98">98</a>
+<a href="#99" id="99">99</a>
+<a href="#100" id="100">100</a>
+<a href="#101" id="101">101</a>
+<a href="#102" id="102">102</a>
+<a href="#103" id="103">103</a>
</pre></div><pre class="rust"><code><span class="doccomment">//! Trait definitions of various instructions.
</span><span class="kw">mod </span>add;
<span class="kw">mod </span>call;
+<span class="kw">mod </span>cmovnz;
+<span class="kw">mod </span>cmovz;
<span class="kw">mod </span>cmp;
<span class="kw">mod </span>dec;
<span class="kw">mod </span>jmp;
@@ -114,6 +132,20 @@
</span><span class="kw">fn </span>call(<span class="kw-2">&amp;mut </span><span class="self">self</span>, op1: T);
}
+<span class="kw">pub trait </span>Cmovnz&lt;T, U&gt; {
+ <span class="doccomment">/// Emit a (conditional) move if not zero instruction.
+ ///
+ /// Move is only commited if (ZF=0).
+ </span><span class="kw">fn </span>cmovnz(<span class="kw-2">&amp;mut </span><span class="self">self</span>, op1: T, op2: U);
+}
+
+<span class="kw">pub trait </span>Cmovz&lt;T, U&gt; {
+ <span class="doccomment">/// Emit a (conditional) move if zero instruction.
+ ///
+ /// Move is only commited if (ZF=1).
+ </span><span class="kw">fn </span>cmovz(<span class="kw-2">&amp;mut </span><span class="self">self</span>, op1: T, op2: U);
+}
+
<span class="doccomment">/// Trait for [`cmp`](https://www.felixcloutier.com/x86/cmp) instruction kinds.
</span><span class="kw">pub trait </span>Cmp&lt;T, U&gt; {
<span class="doccomment">/// Emit a compare instruction.
diff --git a/src/juicebox_asm/insn/add.rs.html b/src/juicebox_asm/insn/add.rs.html
index a6ac132..6146498 100644
--- a/src/juicebox_asm/insn/add.rs.html
+++ b/src/juicebox_asm/insn/add.rs.html
@@ -30,13 +30,13 @@
<span class="kw">impl </span>Add&lt;Reg64, Reg64&gt; <span class="kw">for </span>Asm {
<span class="kw">fn </span>add(<span class="kw-2">&amp;mut </span><span class="self">self</span>, op1: Reg64, op2: Reg64) {
- <span class="self">self</span>.encode_rr(<span class="number">0x01</span>, op1, op2);
+ <span class="self">self</span>.encode_rr(<span class="kw-2">&amp;</span>[<span class="number">0x01</span>], op1, op2);
}
}
<span class="kw">impl </span>Add&lt;Reg32, Reg32&gt; <span class="kw">for </span>Asm {
<span class="kw">fn </span>add(<span class="kw-2">&amp;mut </span><span class="self">self</span>, op1: Reg32, op2: Reg32) {
- <span class="self">self</span>.encode_rr(<span class="number">0x01</span>, op1, op2);
+ <span class="self">self</span>.encode_rr(<span class="kw-2">&amp;</span>[<span class="number">0x01</span>], op1, op2);
}
}
diff --git a/src/juicebox_asm/insn/cmovnz.rs.html b/src/juicebox_asm/insn/cmovnz.rs.html
new file mode 100644
index 0000000..29bfb58
--- /dev/null
+++ b/src/juicebox_asm/insn/cmovnz.rs.html
@@ -0,0 +1,18 @@
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Source of the Rust file `src/insn/cmovnz.rs`."><title>cmovnz.rs - source</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../../../" data-static-root-path="../../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="../../../static.files/src-script-39ed315d46fb705f.js"></script><script defer src="../../../src-files.js"></script><script defer src="../../../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../../../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc src"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"></nav><div class="sidebar-resizer"></div>
+ <main><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="example-wrap"><div data-nosnippet><pre class="src-line-numbers"><a href="#1" id="1">1</a>
+<a href="#2" id="2">2</a>
+<a href="#3" id="3">3</a>
+<a href="#4" id="4">4</a>
+<a href="#5" id="5">5</a>
+<a href="#6" id="6">6</a>
+<a href="#7" id="7">7</a>
+<a href="#8" id="8">8</a>
+</pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">super</span>::Cmovnz;
+<span class="kw">use crate</span>::{Asm, Reg64};
+
+<span class="kw">impl </span>Cmovnz&lt;Reg64, Reg64&gt; <span class="kw">for </span>Asm {
+ <span class="kw">fn </span>cmovnz(<span class="kw-2">&amp;mut </span><span class="self">self</span>, op1: Reg64, op2: Reg64) {
+ <span class="self">self</span>.encode_rr(<span class="kw-2">&amp;</span>[<span class="number">0x0f</span>, <span class="number">0x45</span>], op2, op1);
+ }
+}
+</code></pre></div></section></main></body></html> \ No newline at end of file
diff --git a/src/juicebox_asm/insn/cmovz.rs.html b/src/juicebox_asm/insn/cmovz.rs.html
new file mode 100644
index 0000000..ecb62f1
--- /dev/null
+++ b/src/juicebox_asm/insn/cmovz.rs.html
@@ -0,0 +1,18 @@
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Source of the Rust file `src/insn/cmovz.rs`."><title>cmovz.rs - source</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../../../" data-static-root-path="../../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="../../../static.files/src-script-39ed315d46fb705f.js"></script><script defer src="../../../src-files.js"></script><script defer src="../../../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../../../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc src"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"></nav><div class="sidebar-resizer"></div>
+ <main><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="example-wrap"><div data-nosnippet><pre class="src-line-numbers"><a href="#1" id="1">1</a>
+<a href="#2" id="2">2</a>
+<a href="#3" id="3">3</a>
+<a href="#4" id="4">4</a>
+<a href="#5" id="5">5</a>
+<a href="#6" id="6">6</a>
+<a href="#7" id="7">7</a>
+<a href="#8" id="8">8</a>
+</pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">super</span>::Cmovz;
+<span class="kw">use crate</span>::{Asm, Reg64};
+
+<span class="kw">impl </span>Cmovz&lt;Reg64, Reg64&gt; <span class="kw">for </span>Asm {
+ <span class="kw">fn </span>cmovz(<span class="kw-2">&amp;mut </span><span class="self">self</span>, op1: Reg64, op2: Reg64) {
+ <span class="self">self</span>.encode_rr(<span class="kw-2">&amp;</span>[<span class="number">0x0f</span>, <span class="number">0x44</span>], op2, op1);
+ }
+}
+</code></pre></div></section></main></body></html> \ No newline at end of file
diff --git a/src/juicebox_asm/insn/mov.rs.html b/src/juicebox_asm/insn/mov.rs.html
index 6d6e6e7..8f10e31 100644
--- a/src/juicebox_asm/insn/mov.rs.html
+++ b/src/juicebox_asm/insn/mov.rs.html
@@ -120,25 +120,25 @@
</span><span class="kw">impl </span>Mov&lt;Reg64, Reg64&gt; <span class="kw">for </span>Asm {
<span class="kw">fn </span>mov(<span class="kw-2">&amp;mut </span><span class="self">self</span>, op1: Reg64, op2: Reg64) {
- <span class="self">self</span>.encode_rr(<span class="number">0x89</span>, op1, op2);
+ <span class="self">self</span>.encode_rr(<span class="kw-2">&amp;</span>[<span class="number">0x89</span>], op1, op2);
}
}
<span class="kw">impl </span>Mov&lt;Reg32, Reg32&gt; <span class="kw">for </span>Asm {
<span class="kw">fn </span>mov(<span class="kw-2">&amp;mut </span><span class="self">self</span>, op1: Reg32, op2: Reg32) {
- <span class="self">self</span>.encode_rr(<span class="number">0x89</span>, op1, op2);
+ <span class="self">self</span>.encode_rr(<span class="kw-2">&amp;</span>[<span class="number">0x89</span>], op1, op2);
}
}
<span class="kw">impl </span>Mov&lt;Reg16, Reg16&gt; <span class="kw">for </span>Asm {
<span class="kw">fn </span>mov(<span class="kw-2">&amp;mut </span><span class="self">self</span>, op1: Reg16, op2: Reg16) {
- <span class="self">self</span>.encode_rr(<span class="number">0x89</span>, op1, op2);
+ <span class="self">self</span>.encode_rr(<span class="kw-2">&amp;</span>[<span class="number">0x89</span>], op1, op2);
}
}
<span class="kw">impl </span>Mov&lt;Reg8, Reg8&gt; <span class="kw">for </span>Asm {
<span class="kw">fn </span>mov(<span class="kw-2">&amp;mut </span><span class="self">self</span>, op1: Reg8, op2: Reg8) {
- <span class="self">self</span>.encode_rr(<span class="number">0x88</span>, op1, op2);
+ <span class="self">self</span>.encode_rr(<span class="kw-2">&amp;</span>[<span class="number">0x88</span>], op1, op2);
}
}
diff --git a/src/juicebox_asm/insn/test.rs.html b/src/juicebox_asm/insn/test.rs.html
index 6a0372d..53a4e39 100644
--- a/src/juicebox_asm/insn/test.rs.html
+++ b/src/juicebox_asm/insn/test.rs.html
@@ -24,13 +24,13 @@
<span class="kw">impl </span>Test&lt;Reg64, Reg64&gt; <span class="kw">for </span>Asm {
<span class="kw">fn </span>test(<span class="kw-2">&amp;mut </span><span class="self">self</span>, op1: Reg64, op2: Reg64) {
- <span class="self">self</span>.encode_rr(<span class="number">0x85</span>, op1, op2);
+ <span class="self">self</span>.encode_rr(<span class="kw-2">&amp;</span>[<span class="number">0x85</span>], op1, op2);
}
}
<span class="kw">impl </span>Test&lt;Reg32, Reg32&gt; <span class="kw">for </span>Asm {
<span class="kw">fn </span>test(<span class="kw-2">&amp;mut </span><span class="self">self</span>, op1: Reg32, op2: Reg32) {
- <span class="self">self</span>.encode_rr(<span class="number">0x85</span>, op1, op2);
+ <span class="self">self</span>.encode_rr(<span class="kw-2">&amp;</span>[<span class="number">0x85</span>], op1, op2);
}
}
diff --git a/src/tiny_vm/tiny_vm.rs.html b/src/tiny_vm/tiny_vm.rs.html
index 938bc61..e8937f6 100644
--- a/src/tiny_vm/tiny_vm.rs.html
+++ b/src/tiny_vm/tiny_vm.rs.html
@@ -744,7 +744,7 @@
</span><span class="kw">use </span>juicebox_asm::insn::<span class="kw-2">*</span>;
<span class="kw">use </span>juicebox_asm::Runtime;
-<span class="kw">use </span>juicebox_asm::{Asm, Imm16, Imm64, Label, MemOp, Reg16, Reg64};
+<span class="kw">use </span>juicebox_asm::{Asm, Imm16, Imm64, MemOp, Reg16, Reg64};
<span class="doccomment">/// A guest physical address.
</span><span class="kw">pub struct </span>PhysAddr(<span class="kw">pub </span>u16);
@@ -1036,13 +1036,13 @@
TinyInsn::BranchZero(a, disp) =&gt; {
bb.cmp(reg_op(a), Imm16::from(<span class="number">0u16</span>));
bb.mov(Reg64::rax, Imm64::from(bb_icnt()));
- bb.mov(Reg64::rdx, Imm64::from(reenter_pc(disp)));
+ <span class="comment">// Default fall-through PC (branch not taken).
+ </span>bb.mov(Reg64::rdx, Imm64::from(reenter_pc(pc)));
+
+ <span class="comment">// Conditionally update PC if condition is ZERO (branch taken).
+ </span>bb.mov(Reg64::r11, Imm64::from(reenter_pc(disp)));
+ bb.cmovz(Reg64::rdx, Reg64::r11);
- <span class="kw">let </span><span class="kw-2">mut </span>skip_next_pc = Label::new();
- <span class="comment">// If register is zero, skip setting next pc as reenter pc.
- </span>bb.jz(<span class="kw-2">&amp;mut </span>skip_next_pc);
- bb.mov(Reg64::rdx, Imm64::from(reenter_pc(pc)));
- bb.bind(<span class="kw-2">&amp;mut </span>skip_next_pc);
bb.ret();
<span class="kw">break </span><span class="lifetime">'outer</span>;
}
diff --git a/trait.impl/juicebox_asm/insn/trait.Cmovnz.js b/trait.impl/juicebox_asm/insn/trait.Cmovnz.js
new file mode 100644
index 0000000..fccfcd2
--- /dev/null
+++ b/trait.impl/juicebox_asm/insn/trait.Cmovnz.js
@@ -0,0 +1,3 @@
+(function() {var implementors = {
+"juicebox_asm":[]
+};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file
diff --git a/trait.impl/juicebox_asm/insn/trait.Cmovz.js b/trait.impl/juicebox_asm/insn/trait.Cmovz.js
new file mode 100644
index 0000000..fccfcd2
--- /dev/null
+++ b/trait.impl/juicebox_asm/insn/trait.Cmovz.js
@@ -0,0 +1,3 @@
+(function() {var implementors = {
+"juicebox_asm":[]
+};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file