Otawa
0.10
|
A label address formed by a label and a possible signed offset. More...
#include <otawa/util/SymAddress.h>
Public Member Functions | |
LabelAddress (string label, t::int32 offset=0) | |
virtual Address | toAddress (WorkSpace *ws) |
Expand the current symbolic address as an actual address in the given workspace. More... | |
virtual CFG * | cfg (WorkSpace *ws) |
Get the CFG matching the given address. More... | |
virtual void | print (io::Output &out) |
Print the symbolic address. More... | |
Static Public Member Functions | |
static SymAddress * | parse (string str) throw (otawa::Exception) |
Parse a symbolic address from a string. More... | |
Private Attributes | |
string | _label |
t::int32 | _offset |
A label address formed by a label and a possible signed offset.
Get the CFG matching the given address.
CFG_INFO_FEATURE should be available first.
ws | Workspace to look in. |
Implements otawa::SymAddress.
References otawa::CFG_INFO_FEATURE, otawa::WorkSpace::findInstAt(), otawa::CFGInfo::ID, otawa::WorkSpace::isProvided(), and toAddress().
|
staticinherited |
Parse a symbolic address from a string.
str | String to parse. |
otawa::Exception | Thrown if there is a parsing error. |
References elm::MessageException::message(), and otawa::sem::neg().
Referenced by otawa::Application::parseAddress().
|
virtual |
Expand the current symbolic address as an actual address in the given workspace.
ws | Workspace to expand in. |
Implements otawa::SymAddress.
References _label, _offset, otawa::Symbol::address(), otawa::Process::findSymbol(), otawa::Address::null, and otawa::WorkSpace::process().
Referenced by cfg().
|
private |
Referenced by print(), and toAddress().
|
private |
Referenced by print(), and toAddress().