Otawa
0.10
|
Abstraction of a program address that may be expressed using several ways: absolute address, label + offset, source file:line, etc. More...
#include <otawa/util/SymAddress.h>
Public Member Functions | |
virtual | ~SymAddress (void) |
virtual Address | toAddress (WorkSpace *ws)=0 |
Expand the current symbolic address as an actual address in the given workspace. More... | |
virtual CFG * | cfg (WorkSpace *ws)=0 |
Get the CFG matching the given address. More... | |
virtual void | print (io::Output &out)=0 |
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... | |
Abstraction of a program address that may be expressed using several ways: absolute address, label + offset, source file:line, etc.
This type of address is handled either by user, or by external application that generates human-readable output.
|
virtual |
Get the CFG matching the given address.
CFG_INFO_FEATURE should be available first.
ws | Workspace to look in. |
Implemented in otawa::LabelAddress, and otawa::AbsoluteAddress.
|
static |
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().
|
pure virtual |
Print the symbolic address.
out | Stream to output to. |
Implemented in otawa::LabelAddress, and otawa::AbsoluteAddress.
Referenced by otawa::operator<<().
Expand the current symbolic address as an actual address in the given workspace.
ws | Workspace to expand in. |
Implemented in otawa::LabelAddress, and otawa::AbsoluteAddress.
Referenced by otawa::Application::parseAddress().