package goblint

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

Syntactic loop unrolling.

exception WrongOrMultiple
exception Found
class checkNoBreakVisitor : object ... end
val checkNoBreakStmt : GoblintCil.stmt -> unit
val checkNoBreakBlock : GoblintCil.block -> unit
class findBreakVisitor : GoblintCil.exp option Stdlib.ref -> object ... end
class isPointedAtVisitor : GoblintCil.varinfo -> object ... end
class hasAssignmentVisitor : GoblintCil.varinfo -> object ... end
val hasAssignmentTo : GoblintCil.varinfo -> GoblintCil.block -> bool
class findAssignmentConstDiff : (Z.t option Stdlib.ref * GoblintCil.varinfo) -> object ... end
val isCompare : GoblintCil.binop -> bool
val loopLocation : GoblintCil.stmt -> GoblintCil.location
type assignment =
  1. | NoAssign
  2. | Const of Z.t
  3. | Other
val classifyInstruction : GoblintCil.varinfo -> GoblintCil.instr -> assignment
val lastAssignToVar : GoblintCil.varinfo -> GoblintCil.instr list -> assignment
val constBefore : GoblintCil.varinfo -> GoblintCil.stmt -> GoblintCil.fundec -> Z.t option
val loopIterations : Z.t -> Z.t -> GoblintCil.exp -> Z.t option
val (>>=) : 'a option -> ('a -> 'b option) -> 'b option
val fixedLoopSize : GoblintCil.stmt -> GoblintCil.fundec -> int option
class arrayVisitor : object ... end
val annotateArrays : GoblintCil.block -> unit
class loopUnrollingCallVisitor : object ... end
val loop_unrolling_factor : GoblintCil.stmt -> GoblintCil.fundec -> int -> int
module StatementHashTable : sig ... end
class patchLabelsGotosVisitor : (GoblintCil.stmt -> GoblintCil.stmt option) -> object ... end
class copyandPatchLabelsVisitor : (GoblintCil.stmt Stdlib.ref * GoblintCil.stmt Stdlib.ref Stdlib.ref) -> object ... end
class loopUnrollingVisitor : (GoblintCil.fundec * int) -> object ... end
val unroll_loops : GoblintCil.Cil.fundec -> int -> unit
OCaml

Innovation. Community. Security.