comparison gen/CodeGen.d @ 174:20ff3c31f600

Putting symbol on MemberRef -calls.
author Anders Johnsen <skabet@gmail.com>
date Thu, 24 Jul 2008 21:06:42 +0200
parents 50b98a06a200
children c8e26556c24d
comparison
equal deleted inserted replaced
173:50b98a06a200 174:20ff3c31f600
366 foreach (i, arg; callExp.args) 366 foreach (i, arg; callExp.args)
367 args[i] = genExpression(arg).value; 367 args[i] = genExpression(arg).value;
368 DFunction ftype = type.asFunction(); 368 DFunction ftype = type.asFunction();
369 Type llvm_ftype = llvm(ftype); 369 Type llvm_ftype = llvm(ftype);
370 Value f = null; 370 Value f = null;
371 Stdout(callExp.callSym).newline;
371 if (callExp.callSym is null) 372 if (callExp.callSym is null)
372 { 373 {
373 // Do a virtual function call 374 // Do a virtual function call
374 f = genLValue(callExp.exp).getAddress(); 375 f = genLValue(callExp.exp).getAddress();
375 f = b.buildLoad(f, "func_pointer"); 376 f = b.buildLoad(f, "func_pointer");