view 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 source

#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()
{
}