diff options
author | Arthur Eubanks <aeubanks@google.com> | 2023-09-14 14:10:14 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-09-14 14:10:14 -0700 |
commit | 0a1aa6cda2758b0926a95f87d39ffefb1cb90200 (patch) | |
tree | 766dc35b70235864f287a9f0a2cef45d487203ad /llvm/lib/LTO | |
parent | ae84b160d2fe61a7211817262ce717a17d27c0ae (diff) | |
download | llvm-0a1aa6cda2758b0926a95f87d39ffefb1cb90200.zip llvm-0a1aa6cda2758b0926a95f87d39ffefb1cb90200.tar.gz llvm-0a1aa6cda2758b0926a95f87d39ffefb1cb90200.tar.bz2 |
[NFC][CodeGen] Change CodeGenOpt::Level/CodeGenFileType into enum classes (#66295)
This will make it easy for callers to see issues with and fix up calls
to createTargetMachine after a future change to the params of
TargetMachine.
This matches other nearby enums.
For downstream users, this should be a fairly straightforward
replacement,
e.g. s/CodeGenOpt::Aggressive/CodeGenOptLevel::Aggressive
or s/CGFT_/CodeGenFileType::
Diffstat (limited to 'llvm/lib/LTO')
-rw-r--r-- | llvm/lib/LTO/LTO.cpp | 4 | ||||
-rw-r--r-- | llvm/lib/LTO/LTOCodeGenerator.cpp | 7 | ||||
-rw-r--r-- | llvm/lib/LTO/ThinLTOCodeGenerator.cpp | 2 |
3 files changed, 7 insertions, 6 deletions
diff --git a/llvm/lib/LTO/LTO.cpp b/llvm/lib/LTO/LTO.cpp index 2a3f44d..3e008ed 100644 --- a/llvm/lib/LTO/LTO.cpp +++ b/llvm/lib/LTO/LTO.cpp @@ -142,8 +142,8 @@ void llvm::computeLTOCacheKey( AddUnsigned(-1); for (const auto &S : Conf.MllvmArgs) AddString(S); - AddUnsigned(Conf.CGOptLevel); - AddUnsigned(Conf.CGFileType); + AddUnsigned(static_cast<int>(Conf.CGOptLevel)); + AddUnsigned(static_cast<int>(Conf.CGFileType)); AddUnsigned(Conf.OptLevel); AddUnsigned(Conf.Freestanding); AddString(Conf.OptPipeline); diff --git a/llvm/lib/LTO/LTOCodeGenerator.cpp b/llvm/lib/LTO/LTOCodeGenerator.cpp index 1402da7..52a4a9b 100644 --- a/llvm/lib/LTO/LTOCodeGenerator.cpp +++ b/llvm/lib/LTO/LTOCodeGenerator.cpp @@ -200,7 +200,7 @@ void LTOCodeGenerator::setOptLevel(unsigned Level) { Config.OptLevel = Level; Config.PTO.LoopVectorization = Config.OptLevel > 1; Config.PTO.SLPVectorization = Config.OptLevel > 1; - std::optional<CodeGenOpt::Level> CGOptLevelOrNone = + std::optional<CodeGenOptLevel> CGOptLevelOrNone = CodeGenOpt::getLevel(Config.OptLevel); assert(CGOptLevelOrNone && "Unknown optimization level!"); Config.CGOptLevel = *CGOptLevelOrNone; @@ -306,7 +306,7 @@ bool LTOCodeGenerator::runAIXSystemAssembler(SmallString<128> &AssemblyFile) { bool LTOCodeGenerator::compileOptimizedToFile(const char **Name) { if (useAIXSystemAssembler()) - setFileType(CGFT_AssemblyFile); + setFileType(CodeGenFileType::AssemblyFile); // make unique temp output file to put generated code SmallString<128> Filename; @@ -314,7 +314,8 @@ bool LTOCodeGenerator::compileOptimizedToFile(const char **Name) { auto AddStream = [&](size_t Task, const Twine &ModuleName) -> std::unique_ptr<CachedFileStream> { - StringRef Extension(Config.CGFileType == CGFT_AssemblyFile ? "s" : "o"); + StringRef Extension( + Config.CGFileType == CodeGenFileType::AssemblyFile ? "s" : "o"); int FD; std::error_code EC = diff --git a/llvm/lib/LTO/ThinLTOCodeGenerator.cpp b/llvm/lib/LTO/ThinLTOCodeGenerator.cpp index f207b27..02a4535 100644 --- a/llvm/lib/LTO/ThinLTOCodeGenerator.cpp +++ b/llvm/lib/LTO/ThinLTOCodeGenerator.cpp @@ -338,7 +338,7 @@ std::unique_ptr<MemoryBuffer> codegenModule(Module &TheModule, PM.add(createObjCARCContractPass()); // Setup the codegen now. - if (TM.addPassesToEmitFile(PM, OS, nullptr, CGFT_ObjectFile, + if (TM.addPassesToEmitFile(PM, OS, nullptr, CodeGenFileType::ObjectFile, /* DisableVerify */ true)) report_fatal_error("Failed to setup codegen"); |