llir-opt  0.0.1
Low-Level Post-Link Optimiser for OCaml and C
Classes | Public Types | Public Member Functions | Static Public Attributes | List of all members
CamlFrame Class Referencefinal

#include <core/annot.h>

Inheritance diagram for CamlFrame:
Inheritance graph
[legend]
Collaboration diagram for CamlFrame:
Collaboration graph
[legend]

Classes

struct  DebugInfo
 Debug information. More...
 

Public Types

using DebugInfos = std::vector< DebugInfo >
 Debug information bundle.
 
using const_alloc_iterator = std::vector< size_t >::const_iterator
 Iterator over allocations.
 
using const_debug_infos_iterator = std::vector< DebugInfos >::const_iterator
 Iterator over debug infos.
 
- Public Types inherited from Annot
enum  Kind { PROBABILITY = 0, CAML_FRAME = 1, CXX_LSDA = 2 }
 

Public Member Functions

 CamlFrame ()
 Constructs an annotation without debug info.
 
 CamlFrame (std::vector< size_t > &&allocs, std::vector< DebugInfos > &&debug_infos)
 Constructs an annotation with debug info.
 
size_t alloc_size () const
 Returns the number of allocations.
 
llvm::iterator_range< const_alloc_iteratorallocs () const
 Iterator over allocations.
 
size_t debug_info_size () const
 Returns the number of debug infos.
 
llvm::iterator_range< const_debug_infos_iteratordebug_infos () const
 Iterator over debug information bundles.
 
bool operator== (const CamlFrame &annot) const
 Checks if two annotations are equal.
 
- Public Member Functions inherited from Annot
 Annot (Kind kind)
 Creates a new annotation.
 
bool Is (Kind kind) const
 Checks if the annotation is of a given kind.
 
Kind GetKind () const
 Returns the annotation kind.
 
bool operator== (const Annot &annot) const
 Checks if two annotations are equal.
 

Static Public Attributes

static constexpr Annot::Kind kAnnotKind = Kind::CAML_FRAME
 

Detailed Description

OCaml: annotates an instruction which has an entry in the frame table.


The documentation for this class was generated from the following files: