Mercurial > projects > ldc
view ir/irfunction.h @ 139:0ab29b838084 trunk
[svn r143] Fixed: a few bugs in debug information, still only line info, but should be correct files now :)
Fixed: tango.io.Console seems to be working now.
author | lindquist |
---|---|
date | Tue, 22 Jan 2008 00:01:16 +0100 |
parents | 0e28624814e8 |
children | 8f704cb9969b |
line wrap: on
line source
#ifndef LLVMDC_IR_IRFUNCTION_H #define LLVMDC_IR_IRFUNCTION_H #include "ir/ir.h" #include <vector> // represents a finally block struct IrFinally { llvm::BasicBlock* bb; llvm::BasicBlock* retbb; IrFinally(); IrFinally(llvm::BasicBlock* b, llvm::BasicBlock* rb); }; // represents a function struct IrFunction : IrBase { llvm::Function* func; llvm::Instruction* allocapoint; FuncDeclaration* decl; TypeFunction* type; // finally blocks typedef std::vector<IrFinally> FinallyVec; FinallyVec finallys; llvm::Value* finallyretval; bool queued; bool defined; llvm::Value* retArg; llvm::Value* thisVar; llvm::Value* nestedVar; llvm::Value* _arguments; llvm::Value* _argptr; llvm::Constant* dwarfSubProg; IrFunction(FuncDeclaration* fd); virtual ~IrFunction(); }; #endif