comparison gen/toobj.cpp @ 1341:681dd955c53b

Run backend without optimizations when no optimization parameters were used, even when not generating debug info.
author Frits van Bommel <fvbommel wxs.nl>
date Sun, 10 May 2009 20:22:08 +0200
parents 847b767b2d0b
children 46f6365a50d7
comparison
equal deleted inserted replaced
1340:206329112670 1341:681dd955c53b
274 unsigned LastArg = global.params.symdebug ? 0 : optLevel(); 274 unsigned LastArg = global.params.symdebug ? 0 : optLevel();
275 #else 275 #else
276 // Last argument is enum CodeGenOpt::Level OptLevel 276 // Last argument is enum CodeGenOpt::Level OptLevel
277 // debug info doesn't work properly with OptLevel != None! 277 // debug info doesn't work properly with OptLevel != None!
278 CodeGenOpt::Level LastArg = CodeGenOpt::Default; 278 CodeGenOpt::Level LastArg = CodeGenOpt::Default;
279 if (global.params.symdebug) 279 if (global.params.symdebug || !optimize())
280 LastArg = CodeGenOpt::None; 280 LastArg = CodeGenOpt::None;
281 else if (optLevel() >= 3) 281 else if (optLevel() >= 3)
282 LastArg = CodeGenOpt::Aggressive; 282 LastArg = CodeGenOpt::Aggressive;
283 #endif 283 #endif
284 FileModel::Model mod = Target.addPassesToEmitFile(Passes, out, TargetMachine::AssemblyFile, LastArg); 284 FileModel::Model mod = Target.addPassesToEmitFile(Passes, out, TargetMachine::AssemblyFile, LastArg);