view ir/irtype.h @ 284:70c370e97944 trunk

[svn r305] Started support for custom class allocators/deallocators. Allocators with more than one argument still need to be fixed. Removed the LLVM stacktrace code from mars.c. Moved the LLVM based default target detection code from mars.c to llvmhelpers.cpp.
author lindquist
date Sat, 21 Jun 2008 02:48:53 +0200
parents 8ee2c46ff938
children eef8ac26c66c
line wrap: on
line source

#ifndef LLVMDC_IR_IRTYPE_H
#define LLVMDC_IR_IRTYPE_H

#include <set>

namespace llvm {
    class PATypeHolder;
}

struct IrType
{
    static std::set<IrType*> list;
    static void resetAll();

    // overload all of these to make sure
    // the static list is up to date
    IrType();
    IrType(const IrType& s);
    ~IrType();

    void reset();

    llvm::PATypeHolder* type;
    llvm::PATypeHolder* vtblType;
};

#endif