Mercurial > projects > ldc
view gen/elem.h @ 31:2841234d2aea trunk
[svn r35] * Attributes on struct fields/methods now work
* Updated object.d to 1.021
* Added -novalidate command line option. this is sometimes useful when debugging as it may let you read the .ll even if it's invalid.
author | lindquist |
---|---|
date | Thu, 04 Oct 2007 16:44:07 +0200 |
parents | 37a4fdab33fc |
children | 4648206ca213 |
line wrap: on
line source
#ifndef LLVMDC_GEN_ELEM_H #define LLVMDC_GEN_ELEM_H #include "llvm/Value.h" #include "root.h" #include "declaration.h" #include "aggregate.h" // represents a value. be it a constant literal, a variable etc. // maintains all the information for doing load/store appropriately struct elem : Object { enum { NONE, VAR, VAL, FUNC, CONST, NUL, REF, SLICE }; public: elem(); llvm::Value* mem; llvm::Value* val; llvm::Value* arg; int type; bool inplace; bool field; unsigned callconv; bool isthis; VarDeclaration* vardecl; FuncDeclaration* funcdecl; llvm::Value* getValue(); //llvm::Value* getMemory(); bool isNull() {return !(mem || val);} }; #endif // LLVMDC_GEN_ELEM_H