Class CpaWithBamOperators<CfaNodeT extends CfaNode<CfaEdgeT,​SignatureT>,​CfaEdgeT extends CfaEdge<CfaNodeT>,​SignatureT extends Signature>

  • All Implemented Interfaces:
    ConfigurableProgramAnalysis

    public class CpaWithBamOperators<CfaNodeT extends CfaNode<CfaEdgeT,​SignatureT>,​CfaEdgeT extends CfaEdge<CfaNodeT>,​SignatureT extends Signature>
    extends SimpleCpa
    A domain dependent analysis that can be wrapped with a BamCpa to be extended inter-procedurally.

    Compared to a standard ConfigurableProgramAnalysis, this is extended with three operators:

    - The reduce operator discards from the entry abstract state of a procedure the unnecessary information (e.g. local variables of the caller).

    - The expand operator restores the removed information.

    - The rebuild operator avoids collision of program identifiers while returning from a procedure call (e.g. renaming variables).