Mercurial > projects > ldc
comparison gen/irstate.h @ 155:7f92f477ff53 trunk
[svn r171] starting to move IR data from AST nodes into IRState; started with IrFunction
author | ChristianK |
---|---|
date | Tue, 29 Apr 2008 21:33:50 +0200 |
parents | 86d3bb8ca33e |
children | ccd07d9f2ce9 |
comparison
equal
deleted
inserted
replaced
154:5cb946f323d2 | 155:7f92f477ff53 |
---|---|
1 #ifndef LLVMDC_GEN_IRSTATE_H | 1 #ifndef LLVMDC_GEN_IRSTATE_H |
2 #define LLVMDC_GEN_IRSTATE_H | 2 #define LLVMDC_GEN_IRSTATE_H |
3 | 3 |
4 #include <vector> | 4 #include <vector> |
5 #include <list> | 5 #include <list> |
6 #include <map> | |
6 | 7 |
7 #include "root.h" | 8 #include "root.h" |
8 #include "aggregate.h" | 9 #include "aggregate.h" |
9 | 10 |
10 #include "ir/irfunction.h" | 11 #include "ir/irfunction.h" |
74 | 75 |
75 // functions | 76 // functions |
76 typedef std::vector<IrFunction*> FunctionVector; | 77 typedef std::vector<IrFunction*> FunctionVector; |
77 FunctionVector functions; | 78 FunctionVector functions; |
78 IrFunction* func(); | 79 IrFunction* func(); |
80 // ir data associated with function declarations | |
81 std::map<FuncDeclaration*, IrFunction*> irFunc; | |
79 | 82 |
80 llvm::Function* topfunc(); | 83 llvm::Function* topfunc(); |
81 TypeFunction* topfunctype(); | 84 TypeFunction* topfunctype(); |
82 llvm::Instruction* topallocapoint(); | 85 llvm::Instruction* topallocapoint(); |
83 | 86 |