Mercurial > projects > ldc
diff gen/toobj.cpp @ 94:61615fa85940 trunk
[svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
Added support for array .sort and .reverse properties.
Fixed some bugs with pointer arithmetic.
Disabled some DMD AST optimizations that was messing things up, destroying valuable information.
Added a KDevelop project file, this is what I use for coding LLVMDC now :)
Other minor stuff.
author | lindquist |
---|---|
date | Mon, 12 Nov 2007 06:32:46 +0100 |
parents | ccca1c13e13a |
children | ce7ed8f59b99 |
line wrap: on
line diff
--- a/gen/toobj.cpp Thu Nov 08 19:21:05 2007 +0100 +++ b/gen/toobj.cpp Mon Nov 12 06:32:46 2007 +0100 @@ -81,7 +81,7 @@ // debug info if (global.params.symdebug) { RegisterDwarfSymbols(ir.module); - ir.dwarfCompileUnit = DtoDwarfCompileUnit(this); + ir.dmodule->llvmCompileUnit = DtoDwarfCompileUnit(this,true); } // process module members @@ -162,7 +162,7 @@ Logger::println("vmoduleinfo"); } if (needModuleInfo()) { - Logger::println("**** ATTENTION: module info is needed but skipped"); + Logger::attention("module info is needed but skipped"); } @@ -905,7 +905,7 @@ } if (isUnitTestDeclaration()) { - Logger::println("*** ATTENTION: ignoring unittest declaration: %s", toChars()); + Logger::attention("ignoring unittest declaration: %s", toChars()); return; } @@ -948,7 +948,11 @@ // debug info if (global.params.symdebug) { - llvmDwarfSubProgram = DtoDwarfSubProgram(this); + Module* mo = getModule(); + if (!mo->llvmCompileUnit) { + mo->llvmCompileUnit = DtoDwarfCompileUnit(mo,false); + } + llvmDwarfSubProgram = DtoDwarfSubProgram(this, mo->llvmCompileUnit); } assert(f->llvmType); @@ -1033,7 +1037,7 @@ vd->llvmValue = v; } else { - Logger::println("*** ATTENTION: some unknown argument: %s", arg ? arg->toChars() : 0); + Logger::attention("some unknown argument: %s", arg ? arg->toChars() : 0); } }