ROSE 0.11.145.147
|
Controls merging of symbolic values.
Definition at line 79 of file SymbolicSemantics.h.
#include <Rose/BinaryAnalysis/InstructionSemantics/SymbolicSemantics.h>
Public Types | |
typedef MergerPtr | Ptr |
Shared-ownership pointer for a Merger object. | |
Public Types inherited from Rose::BinaryAnalysis::InstructionSemantics::BaseSemantics::Merger | |
typedef MergerPtr | Ptr |
Shared ownership pointer for Merger. | |
Public Member Functions | |
size_t | setSizeLimit () const |
Property: Maximum set size. | |
void | setSizeLimit (size_t n) |
Property: Maximum set size. | |
Public Member Functions inherited from Rose::BinaryAnalysis::InstructionSemantics::BaseSemantics::Merger | |
bool | memoryAddressesMayAlias () const |
Whether memory addresses can alias one another. | |
void | memoryAddressesMayAlias (bool b) |
Whether memory addresses can alias one another. | |
bool | memoryMergeDebugging () const |
Turn on output for memory merge debugging. | |
void | memoryMergeDebugging (bool b) |
Turn on output for memory merge debugging. | |
Public Member Functions inherited from Sawyer::SharedObject | |
SharedObject () | |
Default constructor. | |
SharedObject (const SharedObject &) | |
Copy constructor. | |
virtual | ~SharedObject () |
Virtual destructor. | |
SharedObject & | operator= (const SharedObject &) |
Assignment. | |
Static Public Member Functions | |
static Ptr | instance () |
Allocating constructor. | |
static Ptr | instance (size_t) |
Allocating constructor. | |
Static Public Member Functions inherited from Rose::BinaryAnalysis::InstructionSemantics::BaseSemantics::Merger | |
static Ptr | instance () |
Allocating constructor. | |
Shared-ownership pointer for a Merger object.
Definition at line 86 of file SymbolicSemantics.h.
|
inline |
Property: Maximum set size.
The maximum number of members in a set when merging two expressions. For instance, when merging expressions "x" and "y" with a limit of one (the default), the return value is bottom, but if the size limit is two or more, the return value is (set x y). Merging two sets (or a set and a singlton) works the same way: if the union of the two sets is larger than the size limit then bottom is returned, otherwise the union is returned.
A limit of zero has the same effect as a limit of one since a singleton set is represented by just the naked member (that is, (set x) gets simplified to just x).
Definition at line 105 of file SymbolicSemantics.h.
|
inline |
Property: Maximum set size.
The maximum number of members in a set when merging two expressions. For instance, when merging expressions "x" and "y" with a limit of one (the default), the return value is bottom, but if the size limit is two or more, the return value is (set x y). Merging two sets (or a set and a singlton) works the same way: if the union of the two sets is larger than the size limit then bottom is returned, otherwise the union is returned.
A limit of zero has the same effect as a limit of one since a singleton set is represented by just the naked member (that is, (set x) gets simplified to just x).
Definition at line 106 of file SymbolicSemantics.h.