mirror of
https://github.com/intel/llvm.git
synced 2026-01-13 19:08:21 +08:00
[ADT] Prepare for deprecation of StringSwitch cases with 3+ args. NFC. (#165112)
Update `.Cases` and `.CasesLower` with 4+ args to use the `initializer_list` overload. The deprecation of these functions will come in a separate PR. For more context, see: https://github.com/llvm/llvm-project/pull/163405.
This commit is contained in:
@@ -811,10 +811,10 @@ bool AArch64TargetInfo::validateCpuSupports(StringRef FeatureStr) const {
|
||||
|
||||
bool AArch64TargetInfo::hasFeature(StringRef Feature) const {
|
||||
return llvm::StringSwitch<bool>(Feature)
|
||||
.Cases("aarch64", "arm64", "arm", true)
|
||||
.Cases({"aarch64", "arm64", "arm"}, true)
|
||||
.Case("fmv", HasFMV)
|
||||
.Case("fp", FPU & FPUMode)
|
||||
.Cases("neon", "simd", FPU & NeonMode)
|
||||
.Cases({"neon", "simd"}, FPU & NeonMode)
|
||||
.Case("jscvt", HasJSCVT)
|
||||
.Case("fcma", HasFCMA)
|
||||
.Case("rng", HasRandGen)
|
||||
@@ -829,8 +829,8 @@ bool AArch64TargetInfo::hasFeature(StringRef Feature) const {
|
||||
.Case("cssc", HasCSSC)
|
||||
.Case("sha2", HasSHA2)
|
||||
.Case("sha3", HasSHA3)
|
||||
.Cases("aes", "pmull", HasAES)
|
||||
.Cases("fp16", "fullfp16", HasFullFP16)
|
||||
.Cases({"aes", "pmull"}, HasAES)
|
||||
.Cases({"fp16", "fullfp16"}, HasFullFP16)
|
||||
.Case("dit", HasDIT)
|
||||
.Case("dpb", HasCCPP)
|
||||
.Case("dpb2", HasCCDP)
|
||||
@@ -859,9 +859,9 @@ bool AArch64TargetInfo::hasFeature(StringRef Feature) const {
|
||||
.Case("memtag", HasMTE)
|
||||
.Case("sb", HasSB)
|
||||
.Case("predres", HasPredRes)
|
||||
.Cases("ssbs", "ssbs2", HasSSBS)
|
||||
.Cases({"ssbs", "ssbs2"}, HasSSBS)
|
||||
.Case("bti", HasBTI)
|
||||
.Cases("ls64", "ls64_v", "ls64_accdata", HasLS64)
|
||||
.Cases({"ls64", "ls64_v", "ls64_accdata"}, HasLS64)
|
||||
.Case("wfxt", HasWFxT)
|
||||
.Case("rcpc3", HasRCPC3)
|
||||
.Case("fp8", HasFP8)
|
||||
|
||||
@@ -122,41 +122,41 @@ public:
|
||||
.Case("970", ArchDefineName | ArchDefinePwr4 | ArchDefinePpcgr |
|
||||
ArchDefinePpcsq)
|
||||
.Case("a2", ArchDefineA2)
|
||||
.Cases("power3", "pwr3", ArchDefinePpcgr)
|
||||
.Cases("power4", "pwr4",
|
||||
.Cases({"power3", "pwr3"}, ArchDefinePpcgr)
|
||||
.Cases({"power4", "pwr4"},
|
||||
ArchDefinePwr4 | ArchDefinePpcgr | ArchDefinePpcsq)
|
||||
.Cases("power5", "pwr5",
|
||||
ArchDefinePwr5 | ArchDefinePwr4 | ArchDefinePpcgr |
|
||||
ArchDefinePpcsq)
|
||||
.Cases("power5x", "pwr5x",
|
||||
.Cases({"power5x", "pwr5x"},
|
||||
ArchDefinePwr5x | ArchDefinePwr5 | ArchDefinePwr4 |
|
||||
ArchDefinePpcgr | ArchDefinePpcsq)
|
||||
.Cases("power6", "pwr6",
|
||||
ArchDefinePwr6 | ArchDefinePwr5x | ArchDefinePwr5 |
|
||||
ArchDefinePwr4 | ArchDefinePpcgr | ArchDefinePpcsq)
|
||||
.Cases("power6x", "pwr6x",
|
||||
.Cases({"power6", "pwr6"}, ArchDefinePwr6 | ArchDefinePwr5x |
|
||||
ArchDefinePwr5 | ArchDefinePwr4 |
|
||||
ArchDefinePpcgr | ArchDefinePpcsq)
|
||||
.Cases({"power6x", "pwr6x"},
|
||||
ArchDefinePwr6x | ArchDefinePwr6 | ArchDefinePwr5x |
|
||||
ArchDefinePwr5 | ArchDefinePwr4 | ArchDefinePpcgr |
|
||||
ArchDefinePpcsq)
|
||||
.Cases("power7", "pwr7",
|
||||
ArchDefinePwr7 | ArchDefinePwr6 | ArchDefinePwr5x |
|
||||
ArchDefinePwr5 | ArchDefinePwr4 | ArchDefinePpcgr |
|
||||
ArchDefinePpcsq)
|
||||
.Cases({"power7", "pwr7"}, ArchDefinePwr7 | ArchDefinePwr6 |
|
||||
ArchDefinePwr5x | ArchDefinePwr5 |
|
||||
ArchDefinePwr4 | ArchDefinePpcgr |
|
||||
ArchDefinePpcsq)
|
||||
// powerpc64le automatically defaults to at least power8.
|
||||
.Cases("power8", "pwr8", "ppc64le",
|
||||
.Cases({"power8", "pwr8", "ppc64le"},
|
||||
ArchDefinePwr8 | ArchDefinePwr7 | ArchDefinePwr6 |
|
||||
ArchDefinePwr5x | ArchDefinePwr5 | ArchDefinePwr4 |
|
||||
ArchDefinePpcgr | ArchDefinePpcsq)
|
||||
.Cases("power9", "pwr9",
|
||||
.Cases({"power9", "pwr9"},
|
||||
ArchDefinePwr9 | ArchDefinePwr8 | ArchDefinePwr7 |
|
||||
ArchDefinePwr6 | ArchDefinePwr5x | ArchDefinePwr5 |
|
||||
ArchDefinePwr4 | ArchDefinePpcgr | ArchDefinePpcsq)
|
||||
.Cases("power10", "pwr10",
|
||||
.Cases({"power10", "pwr10"},
|
||||
ArchDefinePwr10 | ArchDefinePwr9 | ArchDefinePwr8 |
|
||||
ArchDefinePwr7 | ArchDefinePwr6 | ArchDefinePwr5x |
|
||||
ArchDefinePwr5 | ArchDefinePwr4 | ArchDefinePpcgr |
|
||||
ArchDefinePpcsq)
|
||||
.Cases("power11", "pwr11",
|
||||
.Cases({"power11", "pwr11"},
|
||||
ArchDefinePwr11 | ArchDefinePwr10 | ArchDefinePwr9 |
|
||||
ArchDefinePwr8 | ArchDefinePwr7 | ArchDefinePwr6 |
|
||||
ArchDefinePwr5x | ArchDefinePwr5 | ArchDefinePwr4 |
|
||||
|
||||
@@ -3214,7 +3214,7 @@ static bool ParseFrontendArgs(FrontendOptions &Opts, ArgList &Args,
|
||||
DashX = llvm::StringSwitch<InputKind>(XValue)
|
||||
.Case("cpp-output", InputKind(Language::C).getPreprocessed())
|
||||
.Case("assembler-with-cpp", Language::Asm)
|
||||
.Cases("ast", "pcm", "precompiled-header",
|
||||
.Cases({"ast", "pcm", "precompiled-header"},
|
||||
InputKind(Language::Unknown, InputKind::Precompiled))
|
||||
.Case("ir", Language::LLVM_IR)
|
||||
.Case("cir", Language::CIR)
|
||||
|
||||
@@ -1283,10 +1283,10 @@ bool NumericLiteralParser::isValidUDSuffix(const LangOptions &LangOpts,
|
||||
// Per tweaked N3660, "il", "i", and "if" are also used in the library.
|
||||
// In C++2a "d" and "y" are used in the library.
|
||||
return llvm::StringSwitch<bool>(Suffix)
|
||||
.Cases("h", "min", "s", true)
|
||||
.Cases("ms", "us", "ns", true)
|
||||
.Cases("il", "i", "if", true)
|
||||
.Cases("d", "y", LangOpts.CPlusPlus20)
|
||||
.Cases({"h", "min", "s"}, true)
|
||||
.Cases({"ms", "us", "ns"}, true)
|
||||
.Cases({"il", "i", "if"}, true)
|
||||
.Cases({"d", "y"}, LangOpts.CPlusPlus20)
|
||||
.Default(false);
|
||||
}
|
||||
|
||||
|
||||
@@ -44,7 +44,7 @@ bool TargetOptions::FramePointerIsReserved(const MachineFunction &MF) const {
|
||||
return false;
|
||||
|
||||
return StringSwitch<bool>(FPAttr.getValueAsString())
|
||||
.Cases("all", "non-leaf", "reserved", true)
|
||||
.Cases({"all", "non-leaf", "reserved"}, true)
|
||||
.Case("none", false);
|
||||
}
|
||||
|
||||
|
||||
@@ -5844,11 +5844,11 @@ bool MasmParser::lookUpField(const StructInfo &Structure, StringRef Member,
|
||||
|
||||
bool MasmParser::lookUpType(StringRef Name, AsmTypeInfo &Info) const {
|
||||
unsigned Size = StringSwitch<unsigned>(Name)
|
||||
.CasesLower("byte", "db", "sbyte", 1)
|
||||
.CasesLower("word", "dw", "sword", 2)
|
||||
.CasesLower("dword", "dd", "sdword", 4)
|
||||
.CasesLower("fword", "df", 6)
|
||||
.CasesLower("qword", "dq", "sqword", 8)
|
||||
.CasesLower({"byte", "db", "sbyte"}, 1)
|
||||
.CasesLower({"word", "dw", "sword"}, 2)
|
||||
.CasesLower({"dword", "dd", "sdword"}, 4)
|
||||
.CasesLower({"fword", "df"}, 6)
|
||||
.CasesLower({"qword", "dq", "sqword"}, 8)
|
||||
.CaseLower("real4", 4)
|
||||
.CaseLower("real8", 8)
|
||||
.CaseLower("real10", 10)
|
||||
|
||||
@@ -3533,10 +3533,10 @@ bool X86AsmParser::parseInstruction(ParseInstructionInfo &Info, StringRef Name,
|
||||
while (isLockRepeatNtPrefix(Name.lower())) {
|
||||
unsigned Prefix =
|
||||
StringSwitch<unsigned>(Name)
|
||||
.Cases("lock", "lock", X86::IP_HAS_LOCK)
|
||||
.Cases("rep", "repe", "repz", X86::IP_HAS_REPEAT)
|
||||
.Cases("repne", "repnz", X86::IP_HAS_REPEAT_NE)
|
||||
.Cases("notrack", "notrack", X86::IP_HAS_NOTRACK)
|
||||
.Case("lock", X86::IP_HAS_LOCK)
|
||||
.Cases({"rep", "repe", "repz"}, X86::IP_HAS_REPEAT)
|
||||
.Cases({"repne", "repnz"}, X86::IP_HAS_REPEAT_NE)
|
||||
.Case("notrack", X86::IP_HAS_NOTRACK)
|
||||
.Default(X86::IP_NO_PREFIX); // Invalid prefix (impossible)
|
||||
Flags |= Prefix;
|
||||
if (getLexer().is(AsmToken::EndOfStatement)) {
|
||||
|
||||
@@ -71,8 +71,8 @@ int main(int argc, const char **argv) {
|
||||
.Case("gcov", gcovMain)
|
||||
.Case("report", reportMain)
|
||||
.Case("show", showMain)
|
||||
.Cases("-h", "-help", "--help", helpMain)
|
||||
.Cases("-version", "--version", versionMain)
|
||||
.Cases({"-h", "-help", "--help"}, helpMain)
|
||||
.Cases({"-version", "--version"}, versionMain)
|
||||
.Default(nullptr);
|
||||
|
||||
if (Func) {
|
||||
|
||||
@@ -157,7 +157,7 @@ TEST(StringSwitchTest, Cases) {
|
||||
|
||||
auto Translate = [](StringRef S) {
|
||||
return llvm::StringSwitch<OSType>(S)
|
||||
.Cases(StringLiteral::withInnerNUL("wind\0ws"), "win32", "winnt",
|
||||
.Cases({StringLiteral::withInnerNUL("wind\0ws"), "win32", "winnt"},
|
||||
OSType::Windows)
|
||||
.Cases({"linux", "unix", "*nix", "posix"}, OSType::Linux)
|
||||
.Cases({"macos", "osx"}, OSType::MacOS)
|
||||
@@ -189,7 +189,7 @@ TEST(StringSwitchTest, CasesLower) {
|
||||
|
||||
auto Translate = [](StringRef S) {
|
||||
return llvm::StringSwitch<OSType>(S)
|
||||
.CasesLower(StringLiteral::withInnerNUL("wind\0ws"), "win32", "winnt",
|
||||
.CasesLower({StringLiteral::withInnerNUL("wind\0ws"), "win32", "winnt"},
|
||||
OSType::Windows)
|
||||
.CasesLower({"linux", "unix", "*nix", "posix"}, OSType::Linux)
|
||||
.CasesLower({"macos", "osx"}, OSType::MacOS)
|
||||
|
||||
Reference in New Issue
Block a user