Skip to content

Commit a2bf00c

Browse files
kuhargithub-actions[bot]
authored andcommitted
Automerge: [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: llvm/llvm-project#163405.
2 parents 4712e31 + 57828a6 commit a2bf00c

File tree

9 files changed

+40
-40
lines changed

9 files changed

+40
-40
lines changed

clang/lib/Basic/Targets/AArch64.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -811,10 +811,10 @@ bool AArch64TargetInfo::validateCpuSupports(StringRef FeatureStr) const {
811811

812812
bool AArch64TargetInfo::hasFeature(StringRef Feature) const {
813813
return llvm::StringSwitch<bool>(Feature)
814-
.Cases("aarch64", "arm64", "arm", true)
814+
.Cases({"aarch64", "arm64", "arm"}, true)
815815
.Case("fmv", HasFMV)
816816
.Case("fp", FPU & FPUMode)
817-
.Cases("neon", "simd", FPU & NeonMode)
817+
.Cases({"neon", "simd"}, FPU & NeonMode)
818818
.Case("jscvt", HasJSCVT)
819819
.Case("fcma", HasFCMA)
820820
.Case("rng", HasRandGen)
@@ -829,8 +829,8 @@ bool AArch64TargetInfo::hasFeature(StringRef Feature) const {
829829
.Case("cssc", HasCSSC)
830830
.Case("sha2", HasSHA2)
831831
.Case("sha3", HasSHA3)
832-
.Cases("aes", "pmull", HasAES)
833-
.Cases("fp16", "fullfp16", HasFullFP16)
832+
.Cases({"aes", "pmull"}, HasAES)
833+
.Cases({"fp16", "fullfp16"}, HasFullFP16)
834834
.Case("dit", HasDIT)
835835
.Case("dpb", HasCCPP)
836836
.Case("dpb2", HasCCDP)
@@ -859,9 +859,9 @@ bool AArch64TargetInfo::hasFeature(StringRef Feature) const {
859859
.Case("memtag", HasMTE)
860860
.Case("sb", HasSB)
861861
.Case("predres", HasPredRes)
862-
.Cases("ssbs", "ssbs2", HasSSBS)
862+
.Cases({"ssbs", "ssbs2"}, HasSSBS)
863863
.Case("bti", HasBTI)
864-
.Cases("ls64", "ls64_v", "ls64_accdata", HasLS64)
864+
.Cases({"ls64", "ls64_v", "ls64_accdata"}, HasLS64)
865865
.Case("wfxt", HasWFxT)
866866
.Case("rcpc3", HasRCPC3)
867867
.Case("fp8", HasFP8)

clang/lib/Basic/Targets/PPC.h

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -122,41 +122,41 @@ class LLVM_LIBRARY_VISIBILITY PPCTargetInfo : public TargetInfo {
122122
.Case("970", ArchDefineName | ArchDefinePwr4 | ArchDefinePpcgr |
123123
ArchDefinePpcsq)
124124
.Case("a2", ArchDefineA2)
125-
.Cases("power3", "pwr3", ArchDefinePpcgr)
126-
.Cases("power4", "pwr4",
125+
.Cases({"power3", "pwr3"}, ArchDefinePpcgr)
126+
.Cases({"power4", "pwr4"},
127127
ArchDefinePwr4 | ArchDefinePpcgr | ArchDefinePpcsq)
128128
.Cases("power5", "pwr5",
129129
ArchDefinePwr5 | ArchDefinePwr4 | ArchDefinePpcgr |
130130
ArchDefinePpcsq)
131-
.Cases("power5x", "pwr5x",
131+
.Cases({"power5x", "pwr5x"},
132132
ArchDefinePwr5x | ArchDefinePwr5 | ArchDefinePwr4 |
133133
ArchDefinePpcgr | ArchDefinePpcsq)
134-
.Cases("power6", "pwr6",
135-
ArchDefinePwr6 | ArchDefinePwr5x | ArchDefinePwr5 |
136-
ArchDefinePwr4 | ArchDefinePpcgr | ArchDefinePpcsq)
137-
.Cases("power6x", "pwr6x",
134+
.Cases({"power6", "pwr6"}, ArchDefinePwr6 | ArchDefinePwr5x |
135+
ArchDefinePwr5 | ArchDefinePwr4 |
136+
ArchDefinePpcgr | ArchDefinePpcsq)
137+
.Cases({"power6x", "pwr6x"},
138138
ArchDefinePwr6x | ArchDefinePwr6 | ArchDefinePwr5x |
139139
ArchDefinePwr5 | ArchDefinePwr4 | ArchDefinePpcgr |
140140
ArchDefinePpcsq)
141-
.Cases("power7", "pwr7",
142-
ArchDefinePwr7 | ArchDefinePwr6 | ArchDefinePwr5x |
143-
ArchDefinePwr5 | ArchDefinePwr4 | ArchDefinePpcgr |
144-
ArchDefinePpcsq)
141+
.Cases({"power7", "pwr7"}, ArchDefinePwr7 | ArchDefinePwr6 |
142+
ArchDefinePwr5x | ArchDefinePwr5 |
143+
ArchDefinePwr4 | ArchDefinePpcgr |
144+
ArchDefinePpcsq)
145145
// powerpc64le automatically defaults to at least power8.
146-
.Cases("power8", "pwr8", "ppc64le",
146+
.Cases({"power8", "pwr8", "ppc64le"},
147147
ArchDefinePwr8 | ArchDefinePwr7 | ArchDefinePwr6 |
148148
ArchDefinePwr5x | ArchDefinePwr5 | ArchDefinePwr4 |
149149
ArchDefinePpcgr | ArchDefinePpcsq)
150-
.Cases("power9", "pwr9",
150+
.Cases({"power9", "pwr9"},
151151
ArchDefinePwr9 | ArchDefinePwr8 | ArchDefinePwr7 |
152152
ArchDefinePwr6 | ArchDefinePwr5x | ArchDefinePwr5 |
153153
ArchDefinePwr4 | ArchDefinePpcgr | ArchDefinePpcsq)
154-
.Cases("power10", "pwr10",
154+
.Cases({"power10", "pwr10"},
155155
ArchDefinePwr10 | ArchDefinePwr9 | ArchDefinePwr8 |
156156
ArchDefinePwr7 | ArchDefinePwr6 | ArchDefinePwr5x |
157157
ArchDefinePwr5 | ArchDefinePwr4 | ArchDefinePpcgr |
158158
ArchDefinePpcsq)
159-
.Cases("power11", "pwr11",
159+
.Cases({"power11", "pwr11"},
160160
ArchDefinePwr11 | ArchDefinePwr10 | ArchDefinePwr9 |
161161
ArchDefinePwr8 | ArchDefinePwr7 | ArchDefinePwr6 |
162162
ArchDefinePwr5x | ArchDefinePwr5 | ArchDefinePwr4 |

clang/lib/Frontend/CompilerInvocation.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3214,7 +3214,7 @@ static bool ParseFrontendArgs(FrontendOptions &Opts, ArgList &Args,
32143214
DashX = llvm::StringSwitch<InputKind>(XValue)
32153215
.Case("cpp-output", InputKind(Language::C).getPreprocessed())
32163216
.Case("assembler-with-cpp", Language::Asm)
3217-
.Cases("ast", "pcm", "precompiled-header",
3217+
.Cases({"ast", "pcm", "precompiled-header"},
32183218
InputKind(Language::Unknown, InputKind::Precompiled))
32193219
.Case("ir", Language::LLVM_IR)
32203220
.Case("cir", Language::CIR)

clang/lib/Lex/LiteralSupport.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1283,10 +1283,10 @@ bool NumericLiteralParser::isValidUDSuffix(const LangOptions &LangOpts,
12831283
// Per tweaked N3660, "il", "i", and "if" are also used in the library.
12841284
// In C++2a "d" and "y" are used in the library.
12851285
return llvm::StringSwitch<bool>(Suffix)
1286-
.Cases("h", "min", "s", true)
1287-
.Cases("ms", "us", "ns", true)
1288-
.Cases("il", "i", "if", true)
1289-
.Cases("d", "y", LangOpts.CPlusPlus20)
1286+
.Cases({"h", "min", "s"}, true)
1287+
.Cases({"ms", "us", "ns"}, true)
1288+
.Cases({"il", "i", "if"}, true)
1289+
.Cases({"d", "y"}, LangOpts.CPlusPlus20)
12901290
.Default(false);
12911291
}
12921292

llvm/lib/CodeGen/TargetOptionsImpl.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ bool TargetOptions::FramePointerIsReserved(const MachineFunction &MF) const {
4444
return false;
4545

4646
return StringSwitch<bool>(FPAttr.getValueAsString())
47-
.Cases("all", "non-leaf", "reserved", true)
47+
.Cases({"all", "non-leaf", "reserved"}, true)
4848
.Case("none", false);
4949
}
5050

llvm/lib/MC/MCParser/MasmParser.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5844,11 +5844,11 @@ bool MasmParser::lookUpField(const StructInfo &Structure, StringRef Member,
58445844

58455845
bool MasmParser::lookUpType(StringRef Name, AsmTypeInfo &Info) const {
58465846
unsigned Size = StringSwitch<unsigned>(Name)
5847-
.CasesLower("byte", "db", "sbyte", 1)
5848-
.CasesLower("word", "dw", "sword", 2)
5849-
.CasesLower("dword", "dd", "sdword", 4)
5850-
.CasesLower("fword", "df", 6)
5851-
.CasesLower("qword", "dq", "sqword", 8)
5847+
.CasesLower({"byte", "db", "sbyte"}, 1)
5848+
.CasesLower({"word", "dw", "sword"}, 2)
5849+
.CasesLower({"dword", "dd", "sdword"}, 4)
5850+
.CasesLower({"fword", "df"}, 6)
5851+
.CasesLower({"qword", "dq", "sqword"}, 8)
58525852
.CaseLower("real4", 4)
58535853
.CaseLower("real8", 8)
58545854
.CaseLower("real10", 10)

llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3533,10 +3533,10 @@ bool X86AsmParser::parseInstruction(ParseInstructionInfo &Info, StringRef Name,
35333533
while (isLockRepeatNtPrefix(Name.lower())) {
35343534
unsigned Prefix =
35353535
StringSwitch<unsigned>(Name)
3536-
.Cases("lock", "lock", X86::IP_HAS_LOCK)
3537-
.Cases("rep", "repe", "repz", X86::IP_HAS_REPEAT)
3538-
.Cases("repne", "repnz", X86::IP_HAS_REPEAT_NE)
3539-
.Cases("notrack", "notrack", X86::IP_HAS_NOTRACK)
3536+
.Case("lock", X86::IP_HAS_LOCK)
3537+
.Cases({"rep", "repe", "repz"}, X86::IP_HAS_REPEAT)
3538+
.Cases({"repne", "repnz"}, X86::IP_HAS_REPEAT_NE)
3539+
.Case("notrack", X86::IP_HAS_NOTRACK)
35403540
.Default(X86::IP_NO_PREFIX); // Invalid prefix (impossible)
35413541
Flags |= Prefix;
35423542
if (getLexer().is(AsmToken::EndOfStatement)) {

llvm/tools/llvm-cov/llvm-cov.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,8 +71,8 @@ int main(int argc, const char **argv) {
7171
.Case("gcov", gcovMain)
7272
.Case("report", reportMain)
7373
.Case("show", showMain)
74-
.Cases("-h", "-help", "--help", helpMain)
75-
.Cases("-version", "--version", versionMain)
74+
.Cases({"-h", "-help", "--help"}, helpMain)
75+
.Cases({"-version", "--version"}, versionMain)
7676
.Default(nullptr);
7777

7878
if (Func) {

llvm/unittests/ADT/StringSwitchTest.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ TEST(StringSwitchTest, Cases) {
157157

158158
auto Translate = [](StringRef S) {
159159
return llvm::StringSwitch<OSType>(S)
160-
.Cases(StringLiteral::withInnerNUL("wind\0ws"), "win32", "winnt",
160+
.Cases({StringLiteral::withInnerNUL("wind\0ws"), "win32", "winnt"},
161161
OSType::Windows)
162162
.Cases({"linux", "unix", "*nix", "posix"}, OSType::Linux)
163163
.Cases({"macos", "osx"}, OSType::MacOS)
@@ -189,7 +189,7 @@ TEST(StringSwitchTest, CasesLower) {
189189

190190
auto Translate = [](StringRef S) {
191191
return llvm::StringSwitch<OSType>(S)
192-
.CasesLower(StringLiteral::withInnerNUL("wind\0ws"), "win32", "winnt",
192+
.CasesLower({StringLiteral::withInnerNUL("wind\0ws"), "win32", "winnt"},
193193
OSType::Windows)
194194
.CasesLower({"linux", "unix", "*nix", "posix"}, OSType::Linux)
195195
.CasesLower({"macos", "osx"}, OSType::MacOS)

0 commit comments

Comments
 (0)