package goblint

  1. Overview
  2. Docs
Static analysis framework for C

Install

dune-project
 Dependency

Authors

Maintainers

Sources

goblint-2.6.0.tbz
sha256=20d5b7332a9f6072ab9ba86c4a53b898eaf681286c56a8805c41850bbf3ddf41
sha512=7c7685cfcd9aa866bc40e813df2bfcb3c79b3d40e615d8d6d0939c5798b9d70dd7f2ba87a741f5ba0ce891e9d254627207fb28057f1f2f6611e4e0d128fd6a71

doc/goblint.lib/Goblint_lib/CommonPriv/index.html

Module Goblint_lib.CommonPriv

Thread-modular value analysis utilities for BasePriv and RelationPriv.

module Q = Queries
module IdxDom = ValueDomain.IndexDomain
module type AtomicParam = sig ... end
module ConfCheck : sig ... end
module Protection : sig ... end
module MutexGlobals : sig ... end
module MayVars : sig ... end
module MustVars : sig ... end
module Locksets : sig ... end
module WriteCenteredD : sig ... end
module type Digest = sig ... end

Digest to be used for analyses that account for all join-local contributions in some locally tracked datastructure, akin to the L component from the analyses in

Ego-Lane Derived digest based on whether given threads have been started yet, can be used to refine any analysis @see PhD thesis of M. Schwarz once it is published ;)

module PerMutexTidCommon (Digest : Digest) (LD : Lattice.S) (Cluster : Printable.S) : sig ... end
module PerMutexTidCommonNC (Digest : Digest) (LD : Lattice.S) : sig ... end
val lift_lock : Q.ask -> ('a -> LockDomain.MustLock.t -> 'a) -> 'a -> ValueDomain.Addr.t -> 'a
val lift_unlock : Q.ask -> ('a -> LockDomain.MustLockset.elt -> 'a) -> 'a -> ValueDomain.Addr.t -> 'a