module Layout: sig .. end
module type Data = sig .. end
L-Path
type offset =
type lvalue =
module Offset: sig .. end
module Lvalue: Data with type t = lvalue
Access
type alias =
| |
NotUsed |
| |
NotAliased |
| |
Aliased |
type usage =
type deref = usage * Cil_types.typ
module Alias: sig .. end
module Usage: sig .. end
module Deref: Data with type t = deref
R-Values
type 'a value =
module Value: sig .. end
module Matrix: sig .. end
Overlays
type dim =
| |
Raw of int |
| |
Dim of int * int list |
type 'a range = private {
|
ofs : int; |
|
len : int; |
|
reg : 'a; |
|
dim : dim; |
}
type 'a overlay = 'a range list
type 'a merger = raw:bool -> 'a -> 'a -> 'a
module Range: sig .. end
module Overlay: sig .. end
Compound Layout
type 'a layout = {
}
module Compound: sig .. end
Clustering
type 'a cluster =
| |
Empty |
| |
Garbled |
| |
Chunk of 'a value |
| |
Layout of 'a layout |
module Cluster: sig .. end
Roots
type 'a from =
| |
Fvar of Cil_types.varinfo |
| |
Ffield of 'a * int |
| |
Findex of 'a |
| |
Fderef of 'a |
| |
Farray of 'a |
type root =
module Root: sig .. end
Chunks
type chunks = Qed.Intset.t
type 'a chunk =
module Chunk: sig .. end
Options
module RW: sig .. end
module Flat: sig .. end
module Pack: sig .. end