diff ir/irfunction.cpp @ 136:0e28624814e8 trunk

[svn r140] did a lot of the work towards being able to pass multiple modules on the command line. not complete yet though
author lindquist
date Thu, 17 Jan 2008 03:15:12 +0100
parents
children 8f704cb9969b
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ir/irfunction.cpp	Thu Jan 17 03:15:12 2008 +0100
@@ -0,0 +1,44 @@
+#include "gen/tollvm.h"
+#include "ir/irfunction.h"
+
+IrFinally::IrFinally()
+{
+    bb = 0;
+    retbb = 0;
+}
+
+IrFinally::IrFinally(llvm::BasicBlock* b, llvm::BasicBlock* rb)
+{
+    bb = b;
+    retbb = rb;
+}
+
+//////////////////////////////////////////////////////////////////////////////
+//////////////////////////////////////////////////////////////////////////////
+//////////////////////////////////////////////////////////////////////////////
+
+IrFunction::IrFunction(FuncDeclaration* fd)
+{
+    decl = fd;
+
+    Type* t = DtoDType(fd->type);
+    assert(t->ty == Tfunction);
+    type = (TypeFunction*)t;
+    func = NULL;
+    allocapoint = NULL;
+    finallyretval = NULL;
+
+    queued = false;
+    defined = false;
+
+    retArg = NULL;
+    thisVar = NULL;
+    nestedVar = NULL;
+    _arguments = NULL;
+    _argptr = NULL;
+    dwarfSubProg = NULL;
+}
+
+IrFunction::~IrFunction()
+{
+}