From: Evan Cheng Date: Wed, 16 Nov 2011 08:38:55 +0000 (+0000) Subject: Match LLVM API change. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9254bf77d28731e70942e2bfe6053b495a634b64;p=clang Match LLVM API change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144789 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/BackendUtil.cpp b/lib/CodeGen/BackendUtil.cpp index bb44d1434c..3639dba49a 100644 --- a/lib/CodeGen/BackendUtil.cpp +++ b/lib/CodeGen/BackendUtil.cpp @@ -296,8 +296,16 @@ bool EmitAssemblyHelper::AddEmitPasses(BackendAction Action, RM = llvm::Reloc::DynamicNoPIC; } + CodeGenOpt::Level OptLevel = CodeGenOpt::Default; + switch (CodeGenOpts.OptimizationLevel) { + default: break; + case 0: OptLevel = CodeGenOpt::None; break; + case 3: OptLevel = CodeGenOpt::Aggressive; break; + } + TargetMachine *TM = TheTarget->createTargetMachine(Triple, TargetOpts.CPU, - FeaturesStr, RM, CM); + FeaturesStr, RM, CM, + OptLevel); if (CodeGenOpts.RelaxAll) TM->setMCRelaxAll(true); @@ -312,13 +320,6 @@ bool EmitAssemblyHelper::AddEmitPasses(BackendAction Action, // Create the code generator passes. PassManager *PM = getCodeGenPasses(); - CodeGenOpt::Level OptLevel = CodeGenOpt::Default; - - switch (CodeGenOpts.OptimizationLevel) { - default: break; - case 0: OptLevel = CodeGenOpt::None; break; - case 3: OptLevel = CodeGenOpt::Aggressive; break; - } // Normal mode, emit a .s or .o file by running the code generator. Note, // this also adds codegenerator level optimization passes. @@ -336,7 +337,7 @@ bool EmitAssemblyHelper::AddEmitPasses(BackendAction Action, if (LangOpts.ObjCAutoRefCount) PM->add(createObjCARCContractPass()); - if (TM->addPassesToEmitFile(*PM, OS, CGFT, OptLevel, + if (TM->addPassesToEmitFile(*PM, OS, CGFT, /*DisableVerify=*/!CodeGenOpts.VerifyModule)) { Diags.Report(diag::err_fe_unable_to_interface_with_target); return false;