comparison gen/functions.cpp @ 241:53568c37cfa7 trunk

[svn r258] Fixed: we were passing static arrays by value.
author lindquist
date Mon, 09 Jun 2008 00:28:02 +0200
parents 0db62b770a49
children a95056b3c996
comparison
equal deleted inserted replaced
240:0db62b770a49 241:53568c37cfa7
122 else if (isaArray(at)) { 122 else if (isaArray(at)) {
123 Logger::println("sarray param"); 123 Logger::println("sarray param");
124 assert(argT->ty == Tsarray); 124 assert(argT->ty == Tsarray);
125 //paramvec.push_back(getPtrToType(at->getContainedType(0))); 125 //paramvec.push_back(getPtrToType(at->getContainedType(0)));
126 paramvec.push_back(getPtrToType(at)); 126 paramvec.push_back(getPtrToType(at));
127 arg->llvmByVal = !refOrOut; 127 //arg->llvmByVal = !refOrOut; // static array are passed by reference
128 } 128 }
129 else if (llvm::isa<llvm::OpaqueType>(at)) { 129 else if (llvm::isa<llvm::OpaqueType>(at)) {
130 Logger::println("opaque param"); 130 Logger::println("opaque param");
131 assert(argT->ty == Tstruct || argT->ty == Tclass); 131 assert(argT->ty == Tstruct || argT->ty == Tclass);
132 paramvec.push_back(getPtrToType(at)); 132 paramvec.push_back(getPtrToType(at));