Module Cfg_dataflow.Forward
Parameters
module D : Cfg_dataflow.Domain_Smodule T : Cfg_dataflow.Forward_transfer with type domain = D.tSignature
type domain = D.ttype context = T.contextval run :
Cfg.t ->
?max_iteration:int ->
init:domain ->
handlers_are_entry_points:bool ->
context ->
(domain Label.Tbl.t, unit) Stdlib.resultPerform the dataflow analysis on the passed CFG, returning OK _ if a fix-point has been reached and Error _ otherwise, where the nested value is a partial map from labels to the domain values at the start of the corresponding blocks. If Error _ is returned then the contents of the map is not guaranteed to be sound.
A fix-point is not reached if there is still pending work after max_iteration (defaulting to max_int) have been executed, and iteration being the processing of one element from the working set. The init value is the initial value of entry points.