Mercurial > projects > ldc
comparison gen/tollvm.h @ 414:ac1fcc138e42
Fixed issue with internal real representation, incorrect for non x86-32 architectures.
Cleaned up CallExp::toElem, moved implementation to tocall.cpp providing a single procedure to call arbitrary D functions fairly easily.
author | Tomas Lindquist Olsen <tomas.l.olsen@gmail.com> |
---|---|
date | Mon, 28 Jul 2008 02:11:34 +0200 |
parents | bfb9d28f045a |
children | cc40db549aea |
comparison
equal
deleted
inserted
replaced
413:1a9bdbd4ac60 | 414:ac1fcc138e42 |
---|---|
31 | 31 |
32 // return linkage type for symbol using the current ir state for context | 32 // return linkage type for symbol using the current ir state for context |
33 LLGlobalValue::LinkageTypes DtoLinkage(Dsymbol* sym); | 33 LLGlobalValue::LinkageTypes DtoLinkage(Dsymbol* sym); |
34 LLGlobalValue::LinkageTypes DtoInternalLinkage(Dsymbol* sym); | 34 LLGlobalValue::LinkageTypes DtoInternalLinkage(Dsymbol* sym); |
35 LLGlobalValue::LinkageTypes DtoExternalLinkage(Dsymbol* sym); | 35 LLGlobalValue::LinkageTypes DtoExternalLinkage(Dsymbol* sym); |
36 | |
37 // convert DMD calling conv to LLVM | |
38 unsigned DtoCallingConv(LINK l); | |
39 | 36 |
40 // TODO: this one should be removed!!! | 37 // TODO: this one should be removed!!! |
41 LLValue* DtoPointedType(LLValue* ptr, LLValue* val); | 38 LLValue* DtoPointedType(LLValue* ptr, LLValue* val); |
42 | 39 |
43 // some types | 40 // some types |
75 const LLPointerType* isaPointer(const LLType* t); | 72 const LLPointerType* isaPointer(const LLType* t); |
76 const LLArrayType* isaArray(LLValue* v); | 73 const LLArrayType* isaArray(LLValue* v); |
77 const LLArrayType* isaArray(const LLType* t); | 74 const LLArrayType* isaArray(const LLType* t); |
78 const LLStructType* isaStruct(LLValue* v); | 75 const LLStructType* isaStruct(LLValue* v); |
79 const LLStructType* isaStruct(const LLType* t); | 76 const LLStructType* isaStruct(const LLType* t); |
77 const LLFunctionType* isaFunction(LLValue* v); | |
78 const LLFunctionType* isaFunction(const LLType* t); | |
80 LLConstant* isaConstant(LLValue* v); | 79 LLConstant* isaConstant(LLValue* v); |
81 LLConstantInt* isaConstantInt(LLValue* v); | 80 LLConstantInt* isaConstantInt(LLValue* v); |
82 llvm::Argument* isaArgument(LLValue* v); | 81 llvm::Argument* isaArgument(LLValue* v); |
83 LLGlobalVariable* isaGlobalVar(LLValue* v); | 82 LLGlobalVariable* isaGlobalVar(LLValue* v); |
84 | 83 |