1#ifndef ROSE_BinaryAnalysis_ReadWriteSets_H
2#define ROSE_BinaryAnalysis_ReadWriteSets_H
3#include <featureTests.h>
4#ifdef ROSE_ENABLE_BINARY_ANALYSIS
5#include <Rose/BinaryAnalysis/BasicTypes.h>
7#include <Rose/BinaryAnalysis/Variables.h>
10namespace BinaryAnalysis {
95 void print(std::ostream&,
const std::string &prefix =
"")
const;
Sets of variables based on whether they're read or written.
std::vector< Variables::StackVariable > localVariables(Variables::AccessFlags required=Variables::AccessFlags(), Variables::AccessFlags forbidden=Variables::AccessFlags()) const
Local variables.
Settings & settings()
Property: Settings for this analysis.
static Sawyer::CommandLine::SwitchGroup commandLineSwitches(Settings &)
Command-line switches for this analysis.
static Ptr instance(const Partitioner2::PartitionerConstPtr &, const Settings &=Settings())
Allocating constructor.
void analyze(const Partitioner2::FunctionPtr &)
Analyze a function.
const Settings & settings() const
Property: Settings for this analysis.
ReadWriteSetsPtr Ptr
Shared ownership pointer for ReadWriteSets.
void print(std::ostream &, const std::string &prefix="") const
Print results.
A collection of related switch declarations.
std::shared_ptr< ReadWriteSets > ReadWriteSetsPtr
Reference counting pointer.
Settings that control this analysis.
Variables::VariableFinder::Settings variableFinder
Settings for the analysis that finds the variables.
bool findingLocalVariables
Whether to find local (stack) variables.
bool findingGlobalVariables
Whether to find global variables.
Settings that control this analysis.