Otawa  0.10
ACSComputation.h
Go to the documentation of this file.
1 /*
2  * ACSComputation class interface
3  *
4  * This file is part of OTAWA
5  * Copyright (c) 2005, IRIT UPS.
6  *
7  * OTAWA is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2 of the License, or
10  * (at your option) any later version.
11  *
12  * OTAWA is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with OTAWA; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
20  */
21 #ifndef OTAWA_ETS_ACS_COMPUTATION_H
22 #define OTAWA_ETS_ACS_COMPUTATION_H
23 
24 #include <elm/genstruct/HashTable.h>
25 #include <otawa/ast/ASTProcessor.h>
28 
29 namespace otawa { namespace ets {
30 
31 using namespace ast;
32 
33 // ACSComputation class
35 public :
36  static p::declare reg;
37  ACSComputation(p::declare& r = reg);
38  ~ACSComputation(void);
39 
40 protected :
41  void processAST(WorkSpace *fw, AST *ast);
42  virtual void processWorkSpace(WorkSpace *ws);
43 
44 private:
45  AbstractCacheState *applyProcess(WorkSpace *fw, AST *ast, AbstractCacheState *acs);
46  void initialization(WorkSpace *fw, AST *ast, AbstractCacheState *acs);
49 };
50 
51 } } // otawa::ets
52 
53 #endif // OTAWA_ETS_ACS_COMPUTATION_H
54 
55 
This processor is used to simule cache states.
Definition: ACSComputation.h:34
This class is used to represent an abstract cache line state.
Definition: AbstractCacheState.h:35
Class to declare simple a processor.
Definition: Registration.h:213
int cache_size
It is the cache size, that is to say the number of cache lines.
Definition: ACSComputation.h:48
This is a specialization of the processor class dedicated to AST processing.
Definition: ASTProcessor.h:32
A workspace represents a program, its run-time and all information about WCET computation or any othe...
Definition: WorkSpace.h:67
static p::declare reg
Definition: ACSComputation.h:36
This is the base class for the representation of programs as Abstract Syntax Trees.
Definition: AST.h:53
int cache_line_length
It is the length of the current cache line, that is to say the number of l-blocks in this line...
Definition: ACSComputation.h:47