MakeBackwardRPO.Tinclude TransferFunctions.SILinclude TransferFunctions.S with type instr := IR.Sil.instrmodule Domain : AbstractDomain.Sabstract domain whose state we propagate
val exec_instr :
Domain.t ->
analysis_data ->
CFG.Node.t ->
ProcCfg.InstrNode.instr_index ->
IR.Sil.instr ->
Domain.texec_instr astate proc_data node idx instr should usually return astate' such that {astate} instr {astate'} is a valid Hoare triple. In other words, exec_instr defines how executing an instruction from a given abstract state changes that state into a new one. This is usually called the transfer function in Abstract Interpretation terms. node is the node containing the current instruction and idx is the index of the instruction in the node.
val pp_session_name : CFG.Node.t -> Stdlib.Format.formatter -> unitprint session name for HTML debug
Joins the abstract states from predecessors. It returns None when the given list is empty and into is None.
Refines the abstract state to select non-exceptional concrete states. Should return bottom if no such states exist
Refines the abstract state to select exceptional concrete states. Should return bottom if no such states exist