view ir/irstruct.cpp @ 303:4aa2b6753059 trunk

[svn r324] Small indentation fixes. Added end of line to complex.cpp.
author ChristianK
date Wed, 25 Jun 2008 20:42:30 +0200
parents e3355ce5444b
children 7ade5e035beb
line wrap: on
line source

#include "gen/llvm.h"
#include "mtype.h"
#include "aggregate.h"
#include "ir/irstruct.h"
#include "gen/irstate.h"

#if OPAQUE_VTBLS
IrInterface::IrInterface(BaseClass* b, const llvm::ArrayType* vt)
#else
IrInterface::IrInterface(BaseClass* b, const llvm::StructType* vt)
#endif
{
    base = b;
    decl = b->base;
    vtblTy = vt;
    vtblInit = NULL;
    vtbl = NULL;
    infoTy = NULL;
    infoInit = NULL;
    info = NULL;

    index = -1;
}

IrInterface::~IrInterface()
{
}

//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////

IrStruct::IrStruct(Type* t)
 : recty((t->ir.type) ? *t->ir.type : llvm::OpaqueType::get())
{
    type = t;
    defined = false;
    constinited = false;
    interfaceInfosTy = NULL;
    interfaceInfos = NULL;

    vtbl = NULL;
    constVtbl = NULL;
    init = NULL;
    constInit = NULL;
    classInfo = NULL;
    constClassInfo = NULL;
    hasUnions = false;
    dunion = NULL;

    classDeclared = false;
    classDefined = false;

    dwarfComposite = NULL;
}

IrStruct::~IrStruct()
{
}