Files
ldc/gen/metadata.h
Frits van Bommel c831367b24 Factor out some constants into the header so producers and consumers of
metadata stay in sync (and are more readable).
2009-05-02 20:42:58 +02:00

28 lines
697 B
C

#ifndef LDC_GEN_METADATA_H
#define LDC_GEN_METADATA_H
#include "gen/llvm-version.h"
#if LLVM_REV >= 68420
// Yay, we have metadata!
#define USE_METADATA
#define METADATA_LINKAGE_TYPE llvm::GlobalValue::WeakODRLinkage
// *** Metadata for TypeInfo instances ***
#define TD_PREFIX "llvm.ldc.typeinfo."
/// The fields in the metadata node for a TypeInfo instance.
/// (Its name will be TD_PREFIX ~ <Name of TypeInfo global>)
enum TypeDataFields {
TD_Confirm, /// The TypeInfo this node is for
TD_Type, /// A value of the LLVM type corresponding to this D type
// Must be kept last:
TD_NumFields /// The number of fields in TypeInfo metadata
};
#endif
#endif