[svn r179] lots and lots of fixes, much more of tango now compiles/works.

This commit is contained in:
Tomas Lindquist Olsen
2008-05-05 07:36:29 +02:00
parent 06362014f4
commit a0c6cb6673
19 changed files with 225 additions and 95 deletions

View File

@@ -81,19 +81,19 @@ DValue* DtoAAIndex(Type* type, DValue* aa, DValue* key)
llvm::Value* keyti = to_keyti(key);
keyti = DtoBitCast(keyti, funcTy->getParamType(1));
// pkey param
llvm::Value* pkey = to_pkey(key);
pkey = DtoBitCast(pkey, funcTy->getParamType(2));
// valuesize param
llvm::Value* valsize = DtoConstSize_t(getABITypeSize(DtoType(type)));
// pkey param
llvm::Value* pkey = to_pkey(key);
pkey = DtoBitCast(pkey, funcTy->getParamType(3));
// build arg vector
std::vector<llvm::Value*> args;
args.push_back(aaval);
args.push_back(keyti);
args.push_back(pkey);
args.push_back(valsize);
args.push_back(pkey);
// call runtime
llvm::Value* ret = gIR->ir->CreateCall(func, args.begin(), args.end(), "aa.index");