r290762 - CodeGen: use a StringSwitch instead of cascasding ifs
Saleem Abdulrasool via cfe-commits
cfe-commits at lists.llvm.org
Fri Dec 30 10:45:04 PST 2016
Author: compnerd
Date: Fri Dec 30 12:45:03 2016
New Revision: 290762
URL: http://llvm.org/viewvc/llvm-project?rev=290762&view=rev
Log:
CodeGen: use a StringSwitch instead of cascasding ifs
Change the cascading ifs to a StringSwitch to simplify the conversion of
the relocation model. NFC
Modified:
cfe/trunk/lib/CodeGen/BackendUtil.cpp
Modified: cfe/trunk/lib/CodeGen/BackendUtil.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/BackendUtil.cpp?rev=290762&r1=290761&r2=290762&view=diff
==============================================================================
--- cfe/trunk/lib/CodeGen/BackendUtil.cpp (original)
+++ cfe/trunk/lib/CodeGen/BackendUtil.cpp Fri Dec 30 12:45:03 2016
@@ -504,21 +504,14 @@ void EmitAssemblyHelper::CreateTargetMac
// Keep this synced with the equivalent code in tools/driver/cc1as_main.cpp.
llvm::Optional<llvm::Reloc::Model> RM;
- if (CodeGenOpts.RelocationModel == "static") {
- RM = llvm::Reloc::Static;
- } else if (CodeGenOpts.RelocationModel == "pic") {
- RM = llvm::Reloc::PIC_;
- } else if (CodeGenOpts.RelocationModel == "ropi") {
- RM = llvm::Reloc::ROPI;
- } else if (CodeGenOpts.RelocationModel == "rwpi") {
- RM = llvm::Reloc::RWPI;
- } else if (CodeGenOpts.RelocationModel == "ropi-rwpi") {
- RM = llvm::Reloc::ROPI_RWPI;
- } else {
- assert(CodeGenOpts.RelocationModel == "dynamic-no-pic" &&
- "Invalid PIC model!");
- RM = llvm::Reloc::DynamicNoPIC;
- }
+ RM = llvm::StringSwitch<llvm::Reloc::Model>(CodeGenOpts.RelocationModel)
+ .Case("static", llvm::Reloc::Static)
+ .Case("pic", llvm::Reloc::PIC_)
+ .Case("ropi", llvm::Reloc::ROPI)
+ .Case("rwpi", llvm::Reloc::RWPI)
+ .Case("ropi-rwpi", llvm::Reloc::ROPI_RWPI)
+ .Case("dynamic-no-pic", llvm::Reloc::DynamicNoPIC);
+ assert(RM.hasValue() && "invalid PIC model!");
CodeGenOpt::Level OptLevel = CodeGenOpt::Default;
switch (CodeGenOpts.OptimizationLevel) {
More information about the cfe-commits
mailing list