linol/ocaml/Stackframegen/index.html
2025-01-10 16:49:28 +00:00

2 lines
2.9 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Stackframegen (ocaml.Stackframegen)</title><meta charset="utf-8"/><link rel="stylesheet" href="../../_odoc-theme/odoc.css"/><meta name="generator" content="odoc 2.4.4"/><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> &#x00BB; Stackframegen</nav><header class="odoc-preamble"><h1>Module <code><span>Stackframegen</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-analysis_result"><a href="#type-analysis_result" class="anchor"></a><code><span><span class="keyword">type</span> analysis_result</span><span> = </span><span>{</span></code><ol><li id="type-analysis_result.contains_nontail_calls" class="def record field anchored"><a href="#type-analysis_result.contains_nontail_calls" class="anchor"></a><code><span>contains_nontail_calls : bool;</span></code><div class="def-doc"><span class="comment-delim">(*</span><p>Whether the function contains non-tail calls to OCaml functions. Calls to C functions don't count.</p><span class="comment-delim">*)</span></div></li><li id="type-analysis_result.frame_required" class="def record field anchored"><a href="#type-analysis_result.frame_required" class="anchor"></a><code><span>frame_required : bool;</span></code><div class="def-doc"><span class="comment-delim">(*</span><p>Whether the function must allocate a stack frame on entry, for one of the following reasons:</p><ul><li>some local variables are stack-allocated</li><li>the function needs to save its return address on the stack, e.g.: -- it contains a non-tail call to an OCaml function -- it calls a C function -- it contains an allocation or a poll point -- it performs an array bound check (on some ports)</li></ul><span class="comment-delim">*)</span></div></li><li id="type-analysis_result.extra_stack_used" class="def record field anchored"><a href="#type-analysis_result.extra_stack_used" class="anchor"></a><code><span>extra_stack_used : int;</span></code><div class="def-doc"><span class="comment-delim">(*</span><p>Amount of stack space used, in bytes, in addition to the initial stack frame. This counts trap handlers and &quot;outgoing&quot; stack slots used for parameter passing.</p><span class="comment-delim">*)</span></div></li></ol><code><span>}</span></code></div></div><div class="odoc-spec"><div class="spec class anchored" id="class-stackframe_generic"><a href="#class-stackframe_generic" class="anchor"></a><code><span><span class="keyword">class</span> <span class="keyword">virtual</span> </span><span><a href="class-stackframe_generic/index.html">stackframe_generic</a></span><span> : <span class="keyword">object</span> ... <span class="keyword">end</span></span></code></div></div></div></body></html>