1#ifndef ROSE_BinaryAnalysis_RegisterNames_H
2#define ROSE_BinaryAnalysis_RegisterNames_H
3#include <featureTests.h>
4#ifdef ROSE_ENABLE_BINARY_ANALYSIS
6#include <Rose/BasicTypes.h>
7#include <Rose/BinaryAnalysis/BasicTypes.h>
8#include <Rose/BinaryAnalysis/RegisterDescriptor.h>
13namespace BinaryAnalysis {
Describes (part of) a physical CPU register.
Convert a register descriptor to a name.
std::string suffix
String to print at the very end of the generated name.
RegisterNames(const RegisterDictionaryPtr &)
Constructor.
RegisterNames & operator=(const RegisterDictionaryPtr &)
Constructor.
std::string sizeSuffix
String printed after the size when the size is printed.
std::string prefix
The leading part of a register name.
std::string sizePrefix
String printed prior to the size when the size is printed.
std::string offsetSuffix
String printed after the offset when the offset is shown.
RegisterNames()
Constructor.
std::string operator()(RegisterDescriptor) const
Obtain a name for a register descriptor.
std::string offsetPrefix
String printed before the offset when the offset is shown.
int showSize
0=>never; positive=>always; negative=>when offset is non-zero
RegisterDictionaryPtr dictionary
Dictionary supplied to the constructor.
int showOffset
0=>never show offset; positive=>always show; negative=>show only when non-zero
std::string operator()(RegisterDescriptor, const RegisterDictionaryPtr &dict) const
Obtain a name for a register descriptor.