mirror of
https://github.com/c-cube/moonpool.git
synced 2025-12-16 15:56:21 -05:00
2 lines
No EOL
25 KiB
HTML
2 lines
No EOL
25 KiB
HTML
<!DOCTYPE html>
|
||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Instruct (ocaml.Instruct)</title><link rel="stylesheet" href="../../_odoc-theme/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> – <a href="../index.html">ocaml</a> » Instruct</nav><header class="odoc-preamble"><h1>Module <code><span>Instruct</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-compilation_env"><a href="#type-compilation_env" class="anchor"></a><code><span><span class="keyword">type</span> compilation_env</span><span> = </span><span>{</span></code><ol><li id="type-compilation_env.ce_stack" class="def record field anchored"><a href="#type-compilation_env.ce_stack" class="anchor"></a><code><span>ce_stack : <span>int <a href="../Ident/index.html#type-tbl">Ident.tbl</a></span>;</span></code></li><li id="type-compilation_env.ce_heap" class="def record field anchored"><a href="#type-compilation_env.ce_heap" class="anchor"></a><code><span>ce_heap : <span>int <a href="../Ident/index.html#type-tbl">Ident.tbl</a></span>;</span></code></li><li id="type-compilation_env.ce_rec" class="def record field anchored"><a href="#type-compilation_env.ce_rec" class="anchor"></a><code><span>ce_rec : <span>int <a href="../Ident/index.html#type-tbl">Ident.tbl</a></span>;</span></code></li></ol><code><span>}</span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-debug_event"><a href="#type-debug_event" class="anchor"></a><code><span><span class="keyword">type</span> debug_event</span><span> = </span><span>{</span></code><ol><li id="type-debug_event.ev_pos" class="def record field anchored"><a href="#type-debug_event.ev_pos" class="anchor"></a><code><span><span class="keyword">mutable</span> ev_pos : int;</span></code></li><li id="type-debug_event.ev_module" class="def record field anchored"><a href="#type-debug_event.ev_module" class="anchor"></a><code><span>ev_module : string;</span></code></li><li id="type-debug_event.ev_loc" class="def record field anchored"><a href="#type-debug_event.ev_loc" class="anchor"></a><code><span>ev_loc : <a href="../Location/index.html#type-t">Location.t</a>;</span></code></li><li id="type-debug_event.ev_kind" class="def record field anchored"><a href="#type-debug_event.ev_kind" class="anchor"></a><code><span>ev_kind : <a href="#type-debug_event_kind">debug_event_kind</a>;</span></code></li><li id="type-debug_event.ev_defname" class="def record field anchored"><a href="#type-debug_event.ev_defname" class="anchor"></a><code><span>ev_defname : string;</span></code></li><li id="type-debug_event.ev_info" class="def record field anchored"><a href="#type-debug_event.ev_info" class="anchor"></a><code><span>ev_info : <a href="#type-debug_event_info">debug_event_info</a>;</span></code></li><li id="type-debug_event.ev_typenv" class="def record field anchored"><a href="#type-debug_event.ev_typenv" class="anchor"></a><code><span>ev_typenv : <a href="../Env/index.html#type-summary">Env.summary</a>;</span></code></li><li id="type-debug_event.ev_typsubst" class="def record field anchored"><a href="#type-debug_event.ev_typsubst" class="anchor"></a><code><span>ev_typsubst : <a href="../Subst/index.html#type-t">Subst.t</a>;</span></code></li><li id="type-debug_event.ev_compenv" class="def record field anchored"><a href="#type-debug_event.ev_compenv" class="anchor"></a><code><span>ev_compenv : <a href="#type-compilation_env">compilation_env</a>;</span></code></li><li id="type-debug_event.ev_stacksize" class="def record field anchored"><a href="#type-debug_event.ev_stacksize" class="anchor"></a><code><span>ev_stacksize : int;</span></code></li><li id="type-debug_event.ev_repr" class="def record field anchored"><a href="#type-debug_event.ev_repr" class="anchor"></a><code><span>ev_repr : <a href="#type-debug_event_repr">debug_event_repr</a>;</span></code></li></ol><code><span>}</span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-debug_event_kind"><a href="#type-debug_event_kind" class="anchor"></a><code><span><span class="keyword">and</span> debug_event_kind</span><span> = </span></code><ol><li id="type-debug_event_kind.Event_before" class="def variant constructor anchored"><a href="#type-debug_event_kind.Event_before" class="anchor"></a><code><span>| </span><span><span class="constructor">Event_before</span></span></code></li><li id="type-debug_event_kind.Event_after" class="def variant constructor anchored"><a href="#type-debug_event_kind.Event_after" class="anchor"></a><code><span>| </span><span><span class="constructor">Event_after</span> <span class="keyword">of</span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></li><li id="type-debug_event_kind.Event_pseudo" class="def variant constructor anchored"><a href="#type-debug_event_kind.Event_pseudo" class="anchor"></a><code><span>| </span><span><span class="constructor">Event_pseudo</span></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-debug_event_info"><a href="#type-debug_event_info" class="anchor"></a><code><span><span class="keyword">and</span> debug_event_info</span><span> = </span></code><ol><li id="type-debug_event_info.Event_function" class="def variant constructor anchored"><a href="#type-debug_event_info.Event_function" class="anchor"></a><code><span>| </span><span><span class="constructor">Event_function</span></span></code></li><li id="type-debug_event_info.Event_return" class="def variant constructor anchored"><a href="#type-debug_event_info.Event_return" class="anchor"></a><code><span>| </span><span><span class="constructor">Event_return</span> <span class="keyword">of</span> int</span></code></li><li id="type-debug_event_info.Event_other" class="def variant constructor anchored"><a href="#type-debug_event_info.Event_other" class="anchor"></a><code><span>| </span><span><span class="constructor">Event_other</span></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-debug_event_repr"><a href="#type-debug_event_repr" class="anchor"></a><code><span><span class="keyword">and</span> debug_event_repr</span><span> = </span></code><ol><li id="type-debug_event_repr.Event_none" class="def variant constructor anchored"><a href="#type-debug_event_repr.Event_none" class="anchor"></a><code><span>| </span><span><span class="constructor">Event_none</span></span></code></li><li id="type-debug_event_repr.Event_parent" class="def variant constructor anchored"><a href="#type-debug_event_repr.Event_parent" class="anchor"></a><code><span>| </span><span><span class="constructor">Event_parent</span> <span class="keyword">of</span> <span>int <a href="../Stdlib/index.html#type-ref">ref</a></span></span></code></li><li id="type-debug_event_repr.Event_child" class="def variant constructor anchored"><a href="#type-debug_event_repr.Event_child" class="anchor"></a><code><span>| </span><span><span class="constructor">Event_child</span> <span class="keyword">of</span> <span>int <a href="../Stdlib/index.html#type-ref">ref</a></span></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-label"><a href="#type-label" class="anchor"></a><code><span><span class="keyword">type</span> label</span><span> = int</span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-instruction"><a href="#type-instruction" class="anchor"></a><code><span><span class="keyword">type</span> instruction</span><span> = </span></code><ol><li id="type-instruction.Klabel" class="def variant constructor anchored"><a href="#type-instruction.Klabel" class="anchor"></a><code><span>| </span><span><span class="constructor">Klabel</span> <span class="keyword">of</span> <a href="#type-label">label</a></span></code></li><li id="type-instruction.Kacc" class="def variant constructor anchored"><a href="#type-instruction.Kacc" class="anchor"></a><code><span>| </span><span><span class="constructor">Kacc</span> <span class="keyword">of</span> int</span></code></li><li id="type-instruction.Kenvacc" class="def variant constructor anchored"><a href="#type-instruction.Kenvacc" class="anchor"></a><code><span>| </span><span><span class="constructor">Kenvacc</span> <span class="keyword">of</span> int</span></code></li><li id="type-instruction.Kpush" class="def variant constructor anchored"><a href="#type-instruction.Kpush" class="anchor"></a><code><span>| </span><span><span class="constructor">Kpush</span></span></code></li><li id="type-instruction.Kpop" class="def variant constructor anchored"><a href="#type-instruction.Kpop" class="anchor"></a><code><span>| </span><span><span class="constructor">Kpop</span> <span class="keyword">of</span> int</span></code></li><li id="type-instruction.Kassign" class="def variant constructor anchored"><a href="#type-instruction.Kassign" class="anchor"></a><code><span>| </span><span><span class="constructor">Kassign</span> <span class="keyword">of</span> int</span></code></li><li id="type-instruction.Kpush_retaddr" class="def variant constructor anchored"><a href="#type-instruction.Kpush_retaddr" class="anchor"></a><code><span>| </span><span><span class="constructor">Kpush_retaddr</span> <span class="keyword">of</span> <a href="#type-label">label</a></span></code></li><li id="type-instruction.Kapply" class="def variant constructor anchored"><a href="#type-instruction.Kapply" class="anchor"></a><code><span>| </span><span><span class="constructor">Kapply</span> <span class="keyword">of</span> int</span></code></li><li id="type-instruction.Kappterm" class="def variant constructor anchored"><a href="#type-instruction.Kappterm" class="anchor"></a><code><span>| </span><span><span class="constructor">Kappterm</span> <span class="keyword">of</span> int * int</span></code></li><li id="type-instruction.Kreturn" class="def variant constructor anchored"><a href="#type-instruction.Kreturn" class="anchor"></a><code><span>| </span><span><span class="constructor">Kreturn</span> <span class="keyword">of</span> int</span></code></li><li id="type-instruction.Krestart" class="def variant constructor anchored"><a href="#type-instruction.Krestart" class="anchor"></a><code><span>| </span><span><span class="constructor">Krestart</span></span></code></li><li id="type-instruction.Kgrab" class="def variant constructor anchored"><a href="#type-instruction.Kgrab" class="anchor"></a><code><span>| </span><span><span class="constructor">Kgrab</span> <span class="keyword">of</span> int</span></code></li><li id="type-instruction.Kclosure" class="def variant constructor anchored"><a href="#type-instruction.Kclosure" class="anchor"></a><code><span>| </span><span><span class="constructor">Kclosure</span> <span class="keyword">of</span> <a href="#type-label">label</a> * int</span></code></li><li id="type-instruction.Kclosurerec" class="def variant constructor anchored"><a href="#type-instruction.Kclosurerec" class="anchor"></a><code><span>| </span><span><span class="constructor">Kclosurerec</span> <span class="keyword">of</span> <span><a href="#type-label">label</a> list</span> * int</span></code></li><li id="type-instruction.Koffsetclosure" class="def variant constructor anchored"><a href="#type-instruction.Koffsetclosure" class="anchor"></a><code><span>| </span><span><span class="constructor">Koffsetclosure</span> <span class="keyword">of</span> int</span></code></li><li id="type-instruction.Kgetglobal" class="def variant constructor anchored"><a href="#type-instruction.Kgetglobal" class="anchor"></a><code><span>| </span><span><span class="constructor">Kgetglobal</span> <span class="keyword">of</span> <a href="../Ident/index.html#type-t">Ident.t</a></span></code></li><li id="type-instruction.Ksetglobal" class="def variant constructor anchored"><a href="#type-instruction.Ksetglobal" class="anchor"></a><code><span>| </span><span><span class="constructor">Ksetglobal</span> <span class="keyword">of</span> <a href="../Ident/index.html#type-t">Ident.t</a></span></code></li><li id="type-instruction.Kconst" class="def variant constructor anchored"><a href="#type-instruction.Kconst" class="anchor"></a><code><span>| </span><span><span class="constructor">Kconst</span> <span class="keyword">of</span> <a href="../Lambda/index.html#type-structured_constant">Lambda.structured_constant</a></span></code></li><li id="type-instruction.Kmakeblock" class="def variant constructor anchored"><a href="#type-instruction.Kmakeblock" class="anchor"></a><code><span>| </span><span><span class="constructor">Kmakeblock</span> <span class="keyword">of</span> int * int</span></code></li><li id="type-instruction.Kmakefloatblock" class="def variant constructor anchored"><a href="#type-instruction.Kmakefloatblock" class="anchor"></a><code><span>| </span><span><span class="constructor">Kmakefloatblock</span> <span class="keyword">of</span> int</span></code></li><li id="type-instruction.Kgetfield" class="def variant constructor anchored"><a href="#type-instruction.Kgetfield" class="anchor"></a><code><span>| </span><span><span class="constructor">Kgetfield</span> <span class="keyword">of</span> int</span></code></li><li id="type-instruction.Ksetfield" class="def variant constructor anchored"><a href="#type-instruction.Ksetfield" class="anchor"></a><code><span>| </span><span><span class="constructor">Ksetfield</span> <span class="keyword">of</span> int</span></code></li><li id="type-instruction.Kgetfloatfield" class="def variant constructor anchored"><a href="#type-instruction.Kgetfloatfield" class="anchor"></a><code><span>| </span><span><span class="constructor">Kgetfloatfield</span> <span class="keyword">of</span> int</span></code></li><li id="type-instruction.Ksetfloatfield" class="def variant constructor anchored"><a href="#type-instruction.Ksetfloatfield" class="anchor"></a><code><span>| </span><span><span class="constructor">Ksetfloatfield</span> <span class="keyword">of</span> int</span></code></li><li id="type-instruction.Kvectlength" class="def variant constructor anchored"><a href="#type-instruction.Kvectlength" class="anchor"></a><code><span>| </span><span><span class="constructor">Kvectlength</span></span></code></li><li id="type-instruction.Kgetvectitem" class="def variant constructor anchored"><a href="#type-instruction.Kgetvectitem" class="anchor"></a><code><span>| </span><span><span class="constructor">Kgetvectitem</span></span></code></li><li id="type-instruction.Ksetvectitem" class="def variant constructor anchored"><a href="#type-instruction.Ksetvectitem" class="anchor"></a><code><span>| </span><span><span class="constructor">Ksetvectitem</span></span></code></li><li id="type-instruction.Kgetstringchar" class="def variant constructor anchored"><a href="#type-instruction.Kgetstringchar" class="anchor"></a><code><span>| </span><span><span class="constructor">Kgetstringchar</span></span></code></li><li id="type-instruction.Kgetbyteschar" class="def variant constructor anchored"><a href="#type-instruction.Kgetbyteschar" class="anchor"></a><code><span>| </span><span><span class="constructor">Kgetbyteschar</span></span></code></li><li id="type-instruction.Ksetbyteschar" class="def variant constructor anchored"><a href="#type-instruction.Ksetbyteschar" class="anchor"></a><code><span>| </span><span><span class="constructor">Ksetbyteschar</span></span></code></li><li id="type-instruction.Kbranch" class="def variant constructor anchored"><a href="#type-instruction.Kbranch" class="anchor"></a><code><span>| </span><span><span class="constructor">Kbranch</span> <span class="keyword">of</span> <a href="#type-label">label</a></span></code></li><li id="type-instruction.Kbranchif" class="def variant constructor anchored"><a href="#type-instruction.Kbranchif" class="anchor"></a><code><span>| </span><span><span class="constructor">Kbranchif</span> <span class="keyword">of</span> <a href="#type-label">label</a></span></code></li><li id="type-instruction.Kbranchifnot" class="def variant constructor anchored"><a href="#type-instruction.Kbranchifnot" class="anchor"></a><code><span>| </span><span><span class="constructor">Kbranchifnot</span> <span class="keyword">of</span> <a href="#type-label">label</a></span></code></li><li id="type-instruction.Kstrictbranchif" class="def variant constructor anchored"><a href="#type-instruction.Kstrictbranchif" class="anchor"></a><code><span>| </span><span><span class="constructor">Kstrictbranchif</span> <span class="keyword">of</span> <a href="#type-label">label</a></span></code></li><li id="type-instruction.Kstrictbranchifnot" class="def variant constructor anchored"><a href="#type-instruction.Kstrictbranchifnot" class="anchor"></a><code><span>| </span><span><span class="constructor">Kstrictbranchifnot</span> <span class="keyword">of</span> <a href="#type-label">label</a></span></code></li><li id="type-instruction.Kswitch" class="def variant constructor anchored"><a href="#type-instruction.Kswitch" class="anchor"></a><code><span>| </span><span><span class="constructor">Kswitch</span> <span class="keyword">of</span> <span><a href="#type-label">label</a> array</span> * <span><a href="#type-label">label</a> array</span></span></code></li><li id="type-instruction.Kboolnot" class="def variant constructor anchored"><a href="#type-instruction.Kboolnot" class="anchor"></a><code><span>| </span><span><span class="constructor">Kboolnot</span></span></code></li><li id="type-instruction.Kpushtrap" class="def variant constructor anchored"><a href="#type-instruction.Kpushtrap" class="anchor"></a><code><span>| </span><span><span class="constructor">Kpushtrap</span> <span class="keyword">of</span> <a href="#type-label">label</a></span></code></li><li id="type-instruction.Kpoptrap" class="def variant constructor anchored"><a href="#type-instruction.Kpoptrap" class="anchor"></a><code><span>| </span><span><span class="constructor">Kpoptrap</span></span></code></li><li id="type-instruction.Kraise" class="def variant constructor anchored"><a href="#type-instruction.Kraise" class="anchor"></a><code><span>| </span><span><span class="constructor">Kraise</span> <span class="keyword">of</span> <a href="../Lambda/index.html#type-raise_kind">Lambda.raise_kind</a></span></code></li><li id="type-instruction.Kcheck_signals" class="def variant constructor anchored"><a href="#type-instruction.Kcheck_signals" class="anchor"></a><code><span>| </span><span><span class="constructor">Kcheck_signals</span></span></code></li><li id="type-instruction.Kccall" class="def variant constructor anchored"><a href="#type-instruction.Kccall" class="anchor"></a><code><span>| </span><span><span class="constructor">Kccall</span> <span class="keyword">of</span> string * int</span></code></li><li id="type-instruction.Knegint" class="def variant constructor anchored"><a href="#type-instruction.Knegint" class="anchor"></a><code><span>| </span><span><span class="constructor">Knegint</span></span></code></li><li id="type-instruction.Kaddint" class="def variant constructor anchored"><a href="#type-instruction.Kaddint" class="anchor"></a><code><span>| </span><span><span class="constructor">Kaddint</span></span></code></li><li id="type-instruction.Ksubint" class="def variant constructor anchored"><a href="#type-instruction.Ksubint" class="anchor"></a><code><span>| </span><span><span class="constructor">Ksubint</span></span></code></li><li id="type-instruction.Kmulint" class="def variant constructor anchored"><a href="#type-instruction.Kmulint" class="anchor"></a><code><span>| </span><span><span class="constructor">Kmulint</span></span></code></li><li id="type-instruction.Kdivint" class="def variant constructor anchored"><a href="#type-instruction.Kdivint" class="anchor"></a><code><span>| </span><span><span class="constructor">Kdivint</span></span></code></li><li id="type-instruction.Kmodint" class="def variant constructor anchored"><a href="#type-instruction.Kmodint" class="anchor"></a><code><span>| </span><span><span class="constructor">Kmodint</span></span></code></li><li id="type-instruction.Kandint" class="def variant constructor anchored"><a href="#type-instruction.Kandint" class="anchor"></a><code><span>| </span><span><span class="constructor">Kandint</span></span></code></li><li id="type-instruction.Korint" class="def variant constructor anchored"><a href="#type-instruction.Korint" class="anchor"></a><code><span>| </span><span><span class="constructor">Korint</span></span></code></li><li id="type-instruction.Kxorint" class="def variant constructor anchored"><a href="#type-instruction.Kxorint" class="anchor"></a><code><span>| </span><span><span class="constructor">Kxorint</span></span></code></li><li id="type-instruction.Klslint" class="def variant constructor anchored"><a href="#type-instruction.Klslint" class="anchor"></a><code><span>| </span><span><span class="constructor">Klslint</span></span></code></li><li id="type-instruction.Klsrint" class="def variant constructor anchored"><a href="#type-instruction.Klsrint" class="anchor"></a><code><span>| </span><span><span class="constructor">Klsrint</span></span></code></li><li id="type-instruction.Kasrint" class="def variant constructor anchored"><a href="#type-instruction.Kasrint" class="anchor"></a><code><span>| </span><span><span class="constructor">Kasrint</span></span></code></li><li id="type-instruction.Kintcomp" class="def variant constructor anchored"><a href="#type-instruction.Kintcomp" class="anchor"></a><code><span>| </span><span><span class="constructor">Kintcomp</span> <span class="keyword">of</span> <a href="../Lambda/index.html#type-integer_comparison">Lambda.integer_comparison</a></span></code></li><li id="type-instruction.Koffsetint" class="def variant constructor anchored"><a href="#type-instruction.Koffsetint" class="anchor"></a><code><span>| </span><span><span class="constructor">Koffsetint</span> <span class="keyword">of</span> int</span></code></li><li id="type-instruction.Koffsetref" class="def variant constructor anchored"><a href="#type-instruction.Koffsetref" class="anchor"></a><code><span>| </span><span><span class="constructor">Koffsetref</span> <span class="keyword">of</span> int</span></code></li><li id="type-instruction.Kisint" class="def variant constructor anchored"><a href="#type-instruction.Kisint" class="anchor"></a><code><span>| </span><span><span class="constructor">Kisint</span></span></code></li><li id="type-instruction.Kisout" class="def variant constructor anchored"><a href="#type-instruction.Kisout" class="anchor"></a><code><span>| </span><span><span class="constructor">Kisout</span></span></code></li><li id="type-instruction.Kgetmethod" class="def variant constructor anchored"><a href="#type-instruction.Kgetmethod" class="anchor"></a><code><span>| </span><span><span class="constructor">Kgetmethod</span></span></code></li><li id="type-instruction.Kgetpubmet" class="def variant constructor anchored"><a href="#type-instruction.Kgetpubmet" class="anchor"></a><code><span>| </span><span><span class="constructor">Kgetpubmet</span> <span class="keyword">of</span> int</span></code></li><li id="type-instruction.Kgetdynmet" class="def variant constructor anchored"><a href="#type-instruction.Kgetdynmet" class="anchor"></a><code><span>| </span><span><span class="constructor">Kgetdynmet</span></span></code></li><li id="type-instruction.Kevent" class="def variant constructor anchored"><a href="#type-instruction.Kevent" class="anchor"></a><code><span>| </span><span><span class="constructor">Kevent</span> <span class="keyword">of</span> <a href="#type-debug_event">debug_event</a></span></code></li><li id="type-instruction.Kperform" class="def variant constructor anchored"><a href="#type-instruction.Kperform" class="anchor"></a><code><span>| </span><span><span class="constructor">Kperform</span></span></code></li><li id="type-instruction.Kresume" class="def variant constructor anchored"><a href="#type-instruction.Kresume" class="anchor"></a><code><span>| </span><span><span class="constructor">Kresume</span></span></code></li><li id="type-instruction.Kresumeterm" class="def variant constructor anchored"><a href="#type-instruction.Kresumeterm" class="anchor"></a><code><span>| </span><span><span class="constructor">Kresumeterm</span> <span class="keyword">of</span> int</span></code></li><li id="type-instruction.Kreperformterm" class="def variant constructor anchored"><a href="#type-instruction.Kreperformterm" class="anchor"></a><code><span>| </span><span><span class="constructor">Kreperformterm</span> <span class="keyword">of</span> int</span></code></li><li id="type-instruction.Kstop" class="def variant constructor anchored"><a href="#type-instruction.Kstop" class="anchor"></a><code><span>| </span><span><span class="constructor">Kstop</span></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-immed_min"><a href="#val-immed_min" class="anchor"></a><code><span><span class="keyword">val</span> immed_min : int</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-immed_max"><a href="#val-immed_max" class="anchor"></a><code><span><span class="keyword">val</span> immed_max : int</span></code></div></div></div></body></html> |