Otawa  0.10
mkff.cpp File Reference
#include <elm/io.h>
#include <elm/options.h>
#include <elm/option/StringOption.h>
#include <elm/genstruct/Vector.h>
#include <otawa/cfg.h>
#include <otawa/otawa.h>
#include <otawa/util/ContextTree.h>
#include <elm/checksum/Fletcher.h>
#include <elm/io/InFileStream.h>
#include <elm/system/Path.h>
#include <otawa/cfg/CFGCollector.h>
#include <otawa/util/FlowFactLoader.h>
#include <otawa/flowfact/features.h>
#include <otawa/cfg/CFGChecker.h>
#include <otawa/app/Application.h>

Functions

string nameOf (CFG *cfg)
 Find a name for the current CFG. More...
 
string makeAddress (CFG *cfg, Address addr)
 Compute an address for an item, relative to the container CFG if possible. More...
 
 OTAWA_RUN (Command)
 

Variables

const char * noreturn_labels []
 
const char * nocall_labels []
 

Function Documentation

string makeAddress ( CFG cfg,
Address  addr 
)
inline

Compute an address for an item, relative to the container CFG if possible.

Parameters
CFGContainer CFG.
addressAddress of the item.
xmlUse XML output.
Returns
String representing the address of the instruction in F4. Compute an address for an instruction, relative to the container CFG if possible.
Parameters
CFGContainer CFG.
instInstruction to get address of.
Returns
String representing the address of the instruction in F4. Make an address for F4 file.
Parameters
cfgCurrent CFG.
addrAddress of the item relative to the CFG.
Returns
String representing the address.

References elm::_, otawa::CFG::address(), buf, elm::io::hex(), otawa::CFG::label(), and elm::StringBuffer::toString().

string nameOf ( CFG cfg)
inline

Find a name for the current CFG.

If there is a label, use it. Else build an identifier based on its address.

Parameters
cfgCurrent CFG.
Returns
Matching name.

References elm::_, otawa::CFG::address(), and otawa::CFG::label().

OTAWA_RUN ( Command  )

Variable Documentation

const char* nocall_labels[]
Initial value:
= {
"__eabi",
"_main",
0
}
const char* noreturn_labels[]
Initial value:
= {
"_exit",
"exit",
0
}