DeadlocksByRaces.Specinclude module type of struct include Analyses.DefaultSpec endval intrpt : ('a, 'b, 'c) Analyses.ctx -> 'aval vdecl : ('a, 'b, 'c) Analyses.ctx -> 'd -> 'aval asm : ('a, 'b, 'c) Analyses.ctx -> 'aval skip : ('a, 'b, 'c) Analyses.ctx -> 'aval query : 'b -> 'a Queries.t -> 'a Queries.resultval event : ('a, 'b, 'c) Analyses.ctx -> 'd -> 'e -> 'amodule MSpec = Mutex.Specmodule D = MSpec.Dmodule G = MSpec.Gmodule C = MSpec.Cval sync : ('a, 'b, 'c) Analyses.ctx -> 'd -> 'aval assign :
(MSpec.D.t, MSpec.G.t, MSpec.C.t) Analyses.ctx ->
Prelude.Ana.lval ->
Prelude.Ana.exp ->
D.tval branch :
(MSpec.D.t, MSpec.G.t, MSpec.C.t) Analyses.ctx ->
Prelude.Ana.exp ->
bool ->
D.tval body :
(MutexAnalysis.Lockset.ReverseAddrSet.t, 'a, 'b) Analyses.ctx ->
Prelude.Ana.fundec ->
D.tval return :
(MSpec.D.t, MSpec.G.t, MSpec.C.t) Analyses.ctx ->
Prelude.Ana.exp option ->
Prelude.Ana.fundec ->
D.tval enter :
(MSpec.D.t, 'a, 'b) Analyses.ctx ->
Prelude.Ana.lval option ->
Prelude.Ana.fundec ->
Prelude.Ana.exp list ->
(D.t * D.t) listval combine :
(MSpec.D.t, MSpec.G.t, MSpec.C.t) Analyses.ctx ->
Prelude.Ana.lval option ->
Prelude.Ana.exp ->
Prelude.Ana.fundec ->
Prelude.Ana.exp list ->
'a ->
D.t ->
D.tval special :
(MSpec.D.t, MSpec.G.t, MSpec.C.t) Analyses.ctx ->
Prelude.Ana.lval option ->
Prelude.Ana.varinfo ->
Prelude.Ana.exp list ->
D.tval startstate : 'a -> MutexAnalysis.Lockset.ReverseAddrSet.tval threadenter :
'a ->
'b ->
'c ->
'd ->
MutexAnalysis.Lockset.ReverseAddrSet.t listval threadspawn :
(MSpec.D.t, MSpec.G.t, MSpec.C.t) Analyses.ctx ->
Prelude.Ana.lval option ->
'a ->
'b ->
'c ->
MSpec.D.tval exitstate : 'a -> MutexAnalysis.Lockset.ReverseAddrSet.t