Mercurial > projects > ldc
view gen/arrays.h @ 55:0ccfae271c45 trunk
[svn r59] Added support for C-style variadic functions. Currently only works on x86, x86-64 va_arg is broken in LLVM 2.1. PPC and PPC64 unknown.
Updates to runtime. Rebuild!
author | lindquist |
---|---|
date | Wed, 24 Oct 2007 22:18:06 +0200 |
parents | 28e99b04a132 |
children | 2c3cd3596187 |
line wrap: on
line source
#ifndef LLVMC_GEN_ARRAYS_H #define LLVMC_GEN_ARRAYS_H const llvm::StructType* LLVM_DtoArrayType(Type* t); const llvm::ArrayType* LLVM_DtoStaticArrayType(Type* t); llvm::Constant* LLVM_DtoConstArrayInitializer(ArrayInitializer* si); llvm::Constant* LLVM_DtoConstantSlice(llvm::Constant* dim, llvm::Constant* ptr); void LLVM_DtoArrayCopy(elem* dst, elem* src); void LLVM_DtoArrayInit(llvm::Value* l, llvm::Value* r); void LLVM_DtoArrayInit(llvm::Value* ptr, llvm::Value* dim, llvm::Value* val); void LLVM_DtoArrayAssign(llvm::Value* l, llvm::Value* r); void LLVM_DtoSetArray(llvm::Value* arr, llvm::Value* dim, llvm::Value* ptr); void LLVM_DtoNullArray(llvm::Value* v); void LLVM_DtoNewDynArray(llvm::Value* dst, llvm::Value* dim, Type* dty, bool doinit=true); void LLVM_DtoResizeDynArray(llvm::Value* arr, llvm::Value* sz); void LLVM_DtoCatArrayElement(llvm::Value* arr, Expression* exp); void LLVM_DtoStaticArrayCopy(llvm::Value* dst, llvm::Value* src); llvm::Value* LLVM_DtoStaticArrayCompare(TOK op, llvm::Value* l, llvm::Value* r); llvm::Value* LLVM_DtoDynArrayCompare(TOK op, llvm::Value* l, llvm::Value* r); llvm::Value* LLVM_DtoDynArrayIs(TOK op, llvm::Value* l, llvm::Value* r); llvm::Value* LLVM_DtoArrayCastLength(llvm::Value* len, const llvm::Type* elemty, const llvm::Type* newelemty); #endif // LLVMC_GEN_ARRAYS_H