mirror of
https://github.com/c-cube/moonpool.git
synced 2025-12-18 00:26:43 -05:00
5 lines
No EOL
3.1 KiB
HTML
5 lines
No EOL
3.1 KiB
HTML
<!DOCTYPE html>
|
||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Flambda_to_clambda (ocaml.Flambda_to_clambda)</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> » Flambda_to_clambda</nav><header class="odoc-preamble"><h1>Module <code><span>Flambda_to_clambda</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-result"><a href="#type-result" class="anchor"></a><code><span><span class="keyword">type</span> result</span><span> = </span><span>{</span></code><ol><li id="type-result.expr" class="def record field anchored"><a href="#type-result.expr" class="anchor"></a><code><span>expr : <a href="../Clambda/index.html#type-ulambda">Clambda.ulambda</a>;</span></code></li><li id="type-result.preallocated_blocks" class="def record field anchored"><a href="#type-result.preallocated_blocks" class="anchor"></a><code><span>preallocated_blocks : <span><a href="../Clambda/index.html#type-preallocated_block">Clambda.preallocated_block</a> list</span>;</span></code></li><li id="type-result.structured_constants" class="def record field anchored"><a href="#type-result.structured_constants" class="anchor"></a><code><span>structured_constants : <span><a href="../Clambda/index.html#type-ustructured_constant">Clambda.ustructured_constant</a> <a href="../Symbol/Map/index.html#type-t">Symbol.Map.t</a></span>;</span></code></li><li id="type-result.exported" class="def record field anchored"><a href="#type-result.exported" class="anchor"></a><code><span>exported : <a href="../Export_info/index.html#type-t">Export_info.t</a>;</span></code></li></ol><code><span>}</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-convert"><a href="#val-convert" class="anchor"></a><code><span><span class="keyword">val</span> convert :
|
||
<span>ppf_dump:<a href="../Stdlib/Format/index.html#type-formatter">Stdlib.Format.formatter</a> <span class="arrow">-></span></span>
|
||
<span><span>(<a href="../Flambda/index.html#type-program">Flambda.program</a> * <a href="../Export_info/index.html#type-transient">Export_info.transient</a>)</span> <span class="arrow">-></span></span>
|
||
<a href="#type-result">result</a></span></code></div><div class="spec-doc"><p>Convert an Flambda program, with associated proto-export information, to Clambda. This yields a Clambda expression together with augmented export information and details about required statically-allocated values (preallocated blocks, for <code>Initialize_symbol</code>, and structured constants).</p><p>It is during this process that accesses to variables within closures are transformed to field accesses within closure values. For direct calls, the hidden closure parameter is added. Switch tables are also built.</p></div></div></div></body></html> |