Class SValueUnitPair

    • Field Detail

      • unitChanged

        protected boolean unitChanged
    • Constructor Detail

      • SValueUnitPair

        public SValueUnitPair​(Value value,
                              Unit unit)
    • Method Detail

      • isBranchTarget

        public boolean isBranchTarget()
        Description copied from interface: UnitBox
        Returns true if the UnitBox is holding a Unit that is the target of a branch (ie a Unit at the beginning of a CFG block). This is the default case.

        Returns false if the UnitBox is holding a Unit that indicates the end of a CFG block and may require specialised processing for SSA.

        Specified by:
        isBranchTarget in interface UnitBox
        Overrides:
        isBranchTarget in class ValueUnitPair
        See Also:
        UnitBox.isBranchTarget()
      • isUnitChanged

        public boolean isUnitChanged()
        Description copied from interface: SUnitBox
        Indicates whether the contents of the UnitBox may have been changed. Returns true if setUnit(Unit) has been called recently and was not followed by setUnitChanged(false).

        Needed for Shimple internal Unit chain patching.

        Specified by:
        isUnitChanged in interface SUnitBox
        See Also:
        SUnitBox.isUnitChanged()
      • setUnitChanged

        public void setUnitChanged​(boolean unitChanged)
        Description copied from interface: SUnitBox
        Updates the value of the flag used to indicate whether the contents of the UnitBox may have changed.

        Needed for Shimple internal Unit chain patching.

        Specified by:
        setUnitChanged in interface SUnitBox
        See Also:
        SUnitBox.setUnitChanged(boolean)