diff options
Diffstat (limited to 'backend/lib/CodeGen/CommandFlags.cpp')
| -rw-r--r-- | backend/lib/CodeGen/CommandFlags.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/backend/lib/CodeGen/CommandFlags.cpp b/backend/lib/CodeGen/CommandFlags.cpp index dfbaadc..2a659eb 100644 --- a/backend/lib/CodeGen/CommandFlags.cpp +++ b/backend/lib/CodeGen/CommandFlags.cpp @@ -148,6 +148,16 @@ Expected<CodeGenFileType> parseCodeGenFileType(std::string_view Value) { return makeUnexpected(ErrorCode::InvalidInvocation, "unknown file type"); } +Expected<GlobalISelAbortMode> parseGlobalISelAbortMode(std::string_view Value) { + if (Value == "0") + return GlobalISelAbortMode::Disable; + if (Value == "1") + return GlobalISelAbortMode::Enable; + if (Value == "2") + return GlobalISelAbortMode::DisableWithDiagnostic; + return makeUnexpected(ErrorCode::InvalidInvocation, "-global-isel-abort requires 0, 1, or 2"); +} + Expected<bool> parseCodeGenCommandFlag(std::span<const std::string_view> Arguments, std::size_t &Index, CodeGenCommandFlags &Flags) { const std::string_view Argument = Arguments[Index]; |
