package ocaml-base-compiler

  1. Overview
  2. Docs
Official release 4.09.0

Install

Dune Dependency

Authors

Maintainers

Sources

4.09.0.tar.gz
sha256=a7bc044167e7d09f8e3ea84b88ec9d81392908ecdac861d3d5015e5f0fc496a3
md5=76ac39570fc88b16fda2a94db7cd5cf3

doc/ocamloptcomp/Compute_ranges/Make/index.html

Module Compute_ranges.Make

Parameters

Signature

module Subrange : sig ... end
module Range : sig ... end
type t

The type holding information on computed ranges.

val empty : t

A value of type t that holds no range information.

Compute ranges for the code in the given linearized function declaration, returning the ranges as a value of type t and the rewritten code that must go forward for emission.

val iter : t -> f:(S.Index.t -> Range.t -> unit) -> unit

Iterate through ranges. Each range is associated with an index.

val fold : t -> init:'a -> f:('a -> S.Index.t -> Range.t -> 'a) -> 'a

Like iter, but a fold.

val find : t -> S.Index.t -> Range.t

Find the range for the given index, or raise an exception.

val all_indexes : t -> S.Index.Set.t

All indexes for which the given value of type t contains ranges.

val rewrite_labels_and_remove_empty_subranges_and_ranges : t -> env:int Numbers.Int.Map.t -> t

An internal function used by Coalesce_labels. The env should come from Coalesce_labels.fundecl.

OCaml

Innovation. Community. Security.