My Project
Classes | Public Member Functions | Static Public Attributes | Friends | List of all members
ValueSet Class Reference

A range of values attached to a Varnode within a data-flow subsystem. More...

#include <rangeutil.hh>

Classes

class  Equation
 An external that can be applied to a ValueSet. More...
 

Public Member Functions

int4 getCount (void) const
 Get the current iteration count.
 
const CircleRangegetLandMark (void) const
 Get any landmark range. More...
 
int4 getTypeCode (void) const
 Return '0' for normal constant, '1' for spacebase relative.
 
VarnodegetVarnode (void) const
 Get the Varnode attached to this ValueSet.
 
const CircleRangegetRange (void) const
 Get the actual range of values.
 
bool isLeftStable (void) const
 Return true if the left boundary hasn't been changing.
 
bool isRightStable (void) const
 Return true if the right boundary hasn't been changing.
 
void printRaw (ostream &s) const
 Write a text description of to the given stream. More...
 

Static Public Attributes

static const int4 MAX_STEP = 32
 

Friends

class ValueSetSolver
 

Detailed Description

A range of values attached to a Varnode within a data-flow subsystem.

This class acts as both the set of values for the Varnode and as a node in a sub-graph overlaying the full data-flow of the function containing the Varnode. The values are stored in the CircleRange field and can be interpreted either as absolute values (if typeCode is 0) or as values relative to a stack pointer or some other register (if typeCode is non-zero).

Member Function Documentation

◆ getLandMark()

const CircleRange * ValueSet::getLandMark ( void  ) const

Get any landmark range.

If a landmark was associated with this value set, return its range, otherwise return null.

Returns
the landmark range or null

◆ printRaw()

void ValueSet::printRaw ( ostream &  s) const

Write a text description of to the given stream.

Parameters
sis the stream to print to

Member Data Documentation

◆ MAX_STEP

const int4 ValueSet::MAX_STEP = 32
static

Maximum step inferred for a value set


The documentation for this class was generated from the following files: