(self, variable, size_threshold=32)
return live_def_locs
Find all definitions of the variable.

        :param SimVariable variable: The variable to lookup for.
        :param int size_threshold: The maximum bytes to consider for the variable. For example, if the variable is 100
                                   byte long, only the first `size_threshold` bytes are considered.
        :return: A set of code locations where the variable is defined.
        :rtype: set
Find all definitions of the variable.
Find all definitions of the variable .
def lookup_defs(self, variable, size_threshold=32):
        """
        Find all definitions of the variable.

        :param SimVariable variable: The variable to lookup for.
        :param int size_threshold: The maximum bytes to consider for the variable. For example, if the variable is 100
                                   byte long, only the first `size_threshold` bytes are considered.
        :return: A set of code locations where the variable is defined.
        :rtype: set
        """

        live_def_locs = set()

        if isinstance(variable, SimRegisterVariable):

            if variable.reg is None:
                l.warning('lookup_defs: Got a None for a SimRegisterVariable. Consider fixing.')
                return live_def_locs

            size = min(variable.size, size_threshold)
            offset = variable.reg
            while offset < variable.reg + size:
                if offset in self._register_map:
                    live_def_locs |= self._register_map[offset]
                offset += 1

        elif isinstance(variable, SimMemoryVariable):
            size = min(variable.size, size_threshold)
            offset = variable.addr
            while offset < variable.addr + size:
                if offset in self._memory_map:
                    live_def_locs |= self._memory_map[offset]
                offset += 1

        else:
            # umm unsupported variable type
            l.error('Unsupported variable type "%s".', type(variable))

        return live_def_locs
def lookup_defs ( self , variable , size_threshold = 32 ) : live_def_locs = set ( ) if isinstance ( variable , SimRegisterVariable ) : if variable . reg is None : l . warning ( 'lookup_defs: Got a None for a SimRegisterVariable. Consider fixing.' ) return live_def_locs size = min ( variable . size , size_threshold ) offset = variable . reg while offset < variable . reg + size : if offset in self . _register_map : live_def_locs |= self . _register_map [ offset ] offset += 1 elif isinstance ( variable , SimMemoryVariable ) : size = min ( variable . size , size_threshold ) offset = variable . addr while offset < variable . addr + size : if offset in self . _memory_map : live_def_locs |= self . _memory_map [ offset ] offset += 1 else : # umm unsupported variable type l . error ( 'Unsupported variable type "%s".' , type ( variable ) ) return live_def_locs