Mercurial > projects > ldc
comparison gen/tocall.cpp @ 585:fbb1a366cfbc
Complex number should now follow the D ABI on x86. They're also treated as first class values now. Big change.
author | Tomas Lindquist Olsen <tomas.l.olsen@gmail.com> |
---|---|
date | Tue, 09 Sep 2008 16:49:47 -0700 |
parents | d30c40f1128d |
children | 26fce59fe80a |
comparison
equal
deleted
inserted
replaced
584:c7d7e2282ba3 | 585:fbb1a366cfbc |
---|---|
312 Argument* fnarg = Argument::getNth(tf->parameters, i); | 312 Argument* fnarg = Argument::getNth(tf->parameters, i); |
313 DValue* argval = DtoArgument(fnarg, (Expression*)arguments->data[i]); | 313 DValue* argval = DtoArgument(fnarg, (Expression*)arguments->data[i]); |
314 LLValue* arg = argval->getRVal(); | 314 LLValue* arg = argval->getRVal(); |
315 if (fnarg) // can fnarg ever be null in this block? | 315 if (fnarg) // can fnarg ever be null in this block? |
316 { | 316 { |
317 Logger::cout() << "arg: " << *arg << '\n'; | |
318 Logger::cout() << "expects: " << *callableTy->getParamType(j) << '\n'; | |
317 if (arg->getType() != callableTy->getParamType(j)) | 319 if (arg->getType() != callableTy->getParamType(j)) |
318 arg = DtoBitCast(arg, callableTy->getParamType(j)); | 320 arg = DtoBitCast(arg, callableTy->getParamType(j)); |
319 if (fnarg->llvmAttrs) | 321 if (fnarg->llvmAttrs) |
320 palist = palist.addAttr(j+1, fnarg->llvmAttrs); | 322 palist = palist.addAttr(j+1, fnarg->llvmAttrs); |
321 } | 323 } |