Otawa
0.10
|
This module provides facilities to handle an executable as an AST (Abstract Syntactic Tree). More...
Classes | |
class | otawa::ast::AST |
This is the base class for the representation of programs as Abstract Syntax Trees. More... | |
class | otawa::ast::ASTLoader |
This class may be used for loading AST from an external file using the Heptane format (see doc/ directory for more details). More... | |
class | otawa::ast::ASTInfo |
This class stores all the function known for the current framework. More... | |
class | otawa::ast::BlockAST |
This class represents the leafs of the AST. More... | |
class | otawa::ast::CallAST |
This class is a specialized block AST ended by a function call. More... | |
class | otawa::ast::DoWhileAST |
Representation of C do{ ... More... | |
class | otawa::ast::ForAST |
Representation of C language FOR loop. More... | |
class | otawa::ast::FunAST |
This class represents functions in the AST representation. More... | |
class | otawa::ast::IfAST |
AST for representing selections. More... | |
class | otawa::ast::ASTProcessor |
This is a specialization of the processor class dedicated to AST processing. More... | |
class | otawa::ast::FunProcessor |
This is a specialization of the processor class dedicated to function processing. More... | |
class | otawa::ast::SeqAST |
This AST represents sequences. More... | |
class | otawa::ast::WhileAST |
Representation of an iteration with test at start of the loop. More... | |
Functions | |
p::feature | otawa::ast::FEATURE ("otawa::ast::FEATURE", new Maker< ASTLoader >()) |
This feature ensures that the AST structure of the binary has been loaded. More... | |
Identifier< String > | otawa::ast::PATH ("otawa::ast::PATH","") |
This identifier may be passed for specifying the path a file for loading the AST. More... | |
Identifier< ASTInfo * > | otawa::ast::INFO ("otawa::ast::INFO", 0) |
Identifier of the property storing the AST information on the framework object. More... | |
Identifier< FunAST * > | otawa::ast::FUN ("otawa::ast::FUN", 0) |
A property with this identifier is put on each instruction, start of an AST function. More... | |
Variables | |
p::feature | otawa::ast::FEATURE |
This feature ensures that the AST structure of the binary has been loaded. More... | |
Identifier< String > | otawa::ast::PATH |
This identifier may be passed for specifying the path a file for loading the AST. More... | |
Identifier< ASTInfo * > | otawa::ast::INFO |
Identifier of the property storing the AST information on the framework object. More... | |
Identifier< FunAST * > | otawa::ast::FUN |
A property with this identifier is put on each instruction, start of an AST function. More... | |
This module provides facilities to handle an executable as an AST (Abstract Syntactic Tree).
This allows to implements ETS (Extending Timing Schema) approach to compute the WCET as in:
S.S. LIM, Y.H. BAE, G.T. JANG, S.L. MIN, C.Y. PARK, H. SHIN, H., C.S. KIM, C. S. An accurate worst case timing analysis for RISC processors. IEEE transactions on software engineering, 21(7), 593-604, 1995.
The AST is loaded from an external file (usually generated from source files) in the same format as Heptane tool (http://www.irisa.fr/alf/index.php?option=com_content&view=article&id=29&Itemid=0).
p::feature otawa::ast::FEATURE | ( | "otawa::ast::FEATURE" | , |
new Maker< ASTLoader > | () | ||
) |
Identifier<FunAST *> otawa::ast::FUN | ( | "otawa::ast::FUN" | , |
0 | |||
) |
Identifier<ASTInfo *> otawa::ast::INFO | ( | "otawa::ast::INFO" | , |
0 | |||
) |
Identifier of the property storing the AST information on the framework object.
Hook
Identifier<String> otawa::ast::PATH | ( | "otawa::ast::PATH" | , |
"" | |||
) |
This identifier may be passed for specifying the path a file for loading the AST.
p::feature otawa::ast::FEATURE("otawa::ast::FEATURE", new Maker< ASTLoader >()) |
Identifier<FunAST *> otawa::ast::FUN("otawa::ast::FUN", 0) |
A property with this identifier is put on each instruction, start of an AST function.
Its value is of type "AST *".
Hook
Referenced by otawa::ast::FunAST::FunAST(), and otawa::ast::ASTInfo::getFunction().
Identifier<ASTInfo *> otawa::ast::INFO("otawa::ast::INFO", 0) |
Identifier of the property storing the AST information on the framework object.
Hook
Referenced by otawa::ast::ASTInfo::ASTInfo(), otawa::ast::CallAST::CallAST(), otawa::ast::FunAST::FunAST(), and otawa::ast::ASTInfo::getInfo().
Identifier<String> otawa::ast::PATH("otawa::ast::PATH","") |
This identifier may be passed for specifying the path a file for loading the AST.
Referenced by otawa::ast::ASTLoader::configure().