Otawa  0.10
CFGNormalizer.h
Go to the documentation of this file.
1 /*
2  * $Id$
3  * Copyright (c) 2005-07, IRIT UPS.
4  *
5  * CFGNormalizer class interface
6  */
7 #ifndef OTAWA_UTIL_CFG_NORMALIZER_H
8 #define OTAWA_UTIL_CFG_NORMALIZER_H
9 
11 #include <otawa/proc/Feature.h>
12 
13 namespace otawa {
14 
15 // CFGNormalizer class
16 class CFGNormalizer: public CFGProcessor {
17  bool force;
18  bool verbose;
19 
20 protected:
21  virtual void processCFG(WorkSpace *fw, CFG *cfg);
22 
23 public:
24 
25  // Configuration
28 
29  // Methods
30  CFGNormalizer(void);
31  virtual void configure(const PropList& props = PropList::EMPTY);
32 };
33 
34 // Feature
36 
37 } // otawa
38 
39 #endif // OTAWA_UTIL_CFG_NORMALIZER_H
CFG * cfg(void) const
Get the current CFG.
Definition: CFGProcessor.h:56
static const PropList EMPTY
This is an empty proplist for convenience.
Definition: PropList.h:66
CFGNormalizer(void)
Build a new CFG normalizer.
Definition: util_CFGNormalizer.cpp:59
Control Flow Graph representation.
Definition: CFG.h:42
bool force
Definition: CFGNormalizer.h:17
bool verbose
Definition: CFGNormalizer.h:18
static Identifier< bool > FORCE
May be passed in configuration with a boolean for for forcing or not the normalization (default to fa...
Definition: CFGNormalizer.h:26
A workspace represents a program, its run-time and all information about WCET computation or any othe...
Definition: WorkSpace.h:67
This is a specialization of the processor class dedicated to CFG processing.
Definition: CFGProcessor.h:35
This processor check and transform the CFG to make it normalized, that is, it performs the following ...
Definition: CFGNormalizer.h:16
virtual void processCFG(WorkSpace *fw, CFG *cfg)
Definition: util_CFGNormalizer.cpp:71
Feature< CFGNormalizer > NORMALIZED_CFGS_FEATURE
This feature ensures that the CFG are in a normalized form: fully resolved branches, no entering or exiting edges to or from external CFGs.
This a list of properties.
Definition: PropList.h:63
static Identifier< bool > VERBOSE
Configuration identifier for activating (boolean) or not the verbose node.
Definition: CFGNormalizer.h:27
A feature is a set of facilities, usually provided using properties, available on a framework...
Definition: Feature.h:46
virtual void configure(const PropList &props=PropList::EMPTY)
Configure the current processor.
Definition: util_CFGNormalizer.cpp:124