-
Notifications
You must be signed in to change notification settings - Fork 14.3k
[NFC][TableGen] Manually format StringSwitch
in X86RecognizableInstr.cpp
#141615
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
@llvm/pr-subscribers-backend-x86 @llvm/pr-subscribers-tablegen Author: Rahul Joshi (jurahul) ChangesApply workaround suggested in #140601 to have the Patch is 33.18 KiB, truncated to 20.00 KiB below, full version: https://github.com/llvm/llvm-project/pull/141615.diff 1 Files Affected:
diff --git a/llvm/utils/TableGen/X86RecognizableInstr.cpp b/llvm/utils/TableGen/X86RecognizableInstr.cpp
index f93e5fbcc4c27..3f86e0b2eb889 100644
--- a/llvm/utils/TableGen/X86RecognizableInstr.cpp
+++ b/llvm/utils/TableGen/X86RecognizableInstr.cpp
@@ -1038,131 +1038,132 @@ OperandType RecognizableInstr::typeFromString(StringRef Str, bool hasREX_W,
// immediate encoding is special.
Switch.Case("GR32", TYPE_Rv);
}
- OperandType Type = Switch.Case("i16mem", TYPE_M)
- .Case("i16imm", TYPE_IMM)
- .Case("i16i8imm", TYPE_IMM)
- .Case("GR16", TYPE_R16)
- .Case("GR16orGR32orGR64", TYPE_R16)
- .Case("i32mem", TYPE_M)
- .Case("i32imm", TYPE_IMM)
- .Case("i32i8imm", TYPE_IMM)
- .Case("GR32", TYPE_R32)
- .Case("GR32orGR64", TYPE_R32)
- .Case("i64mem", TYPE_M)
- .Case("i64i32imm", TYPE_IMM)
- .Case("i64i8imm", TYPE_IMM)
- .Case("GR64", TYPE_R64)
- .Case("i8mem", TYPE_M)
- .Case("i8imm", TYPE_IMM)
- .Case("u4imm", TYPE_UIMM8)
- .Case("u8imm", TYPE_UIMM8)
- .Case("i16u8imm", TYPE_UIMM8)
- .Case("i32u8imm", TYPE_UIMM8)
- .Case("i64u8imm", TYPE_UIMM8)
- .Case("GR8", TYPE_R8)
- .Case("VR128", TYPE_XMM)
- .Case("VR128X", TYPE_XMM)
- .Case("f128mem", TYPE_M)
- .Case("f256mem", TYPE_M)
- .Case("f512mem", TYPE_M)
- .Case("FR128", TYPE_XMM)
- .Case("FR64", TYPE_XMM)
- .Case("FR64X", TYPE_XMM)
- .Case("f64mem", TYPE_M)
- .Case("sdmem", TYPE_M)
- .Case("FR16X", TYPE_XMM)
- .Case("FR32", TYPE_XMM)
- .Case("FR32X", TYPE_XMM)
- .Case("f32mem", TYPE_M)
- .Case("f16mem", TYPE_M)
- .Case("ssmem", TYPE_M)
- .Case("shmem", TYPE_M)
- .Case("RST", TYPE_ST)
- .Case("RSTi", TYPE_ST)
- .Case("i128mem", TYPE_M)
- .Case("i256mem", TYPE_M)
- .Case("i512mem", TYPE_M)
- .Case("i512mem_GR16", TYPE_M)
- .Case("i512mem_GR32", TYPE_M)
- .Case("i512mem_GR64", TYPE_M)
- .Case("i64i32imm_brtarget", TYPE_REL)
- .Case("i8imm_brtarget", TYPE_REL)
- .Case("i16imm_brtarget", TYPE_REL)
- .Case("i32imm_brtarget", TYPE_REL)
- .Case("ccode", TYPE_IMM)
- .Case("cflags", TYPE_IMM)
- .Case("AVX512RC", TYPE_IMM)
- .Case("brtarget32", TYPE_REL)
- .Case("brtarget16", TYPE_REL)
- .Case("brtarget8", TYPE_REL)
- .Case("f80mem", TYPE_M)
- .Case("lea64_8mem", TYPE_M)
- .Case("lea64_16mem", TYPE_M)
- .Case("lea64_32mem", TYPE_M)
- .Case("lea64mem", TYPE_M)
- .Case("VR64", TYPE_MM64)
- .Case("i64imm", TYPE_IMM)
- .Case("anymem", TYPE_M)
- .Case("opaquemem", TYPE_M)
- .Case("sibmem", TYPE_MSIB)
- .Case("SEGMENT_REG", TYPE_SEGMENTREG)
- .Case("DEBUG_REG", TYPE_DEBUGREG)
- .Case("CONTROL_REG", TYPE_CONTROLREG)
- .Case("srcidx8", TYPE_SRCIDX)
- .Case("srcidx16", TYPE_SRCIDX)
- .Case("srcidx32", TYPE_SRCIDX)
- .Case("srcidx64", TYPE_SRCIDX)
- .Case("dstidx8", TYPE_DSTIDX)
- .Case("dstidx16", TYPE_DSTIDX)
- .Case("dstidx32", TYPE_DSTIDX)
- .Case("dstidx64", TYPE_DSTIDX)
- .Case("offset16_8", TYPE_MOFFS)
- .Case("offset16_16", TYPE_MOFFS)
- .Case("offset16_32", TYPE_MOFFS)
- .Case("offset32_8", TYPE_MOFFS)
- .Case("offset32_16", TYPE_MOFFS)
- .Case("offset32_32", TYPE_MOFFS)
- .Case("offset32_64", TYPE_MOFFS)
- .Case("offset64_8", TYPE_MOFFS)
- .Case("offset64_16", TYPE_MOFFS)
- .Case("offset64_32", TYPE_MOFFS)
- .Case("offset64_64", TYPE_MOFFS)
- .Case("VR256", TYPE_YMM)
- .Case("VR256X", TYPE_YMM)
- .Case("VR512", TYPE_ZMM)
- .Case("VK1", TYPE_VK)
- .Case("VK1WM", TYPE_VK)
- .Case("VK2", TYPE_VK)
- .Case("VK2WM", TYPE_VK)
- .Case("VK4", TYPE_VK)
- .Case("VK4WM", TYPE_VK)
- .Case("VK8", TYPE_VK)
- .Case("VK8WM", TYPE_VK)
- .Case("VK16", TYPE_VK)
- .Case("VK16WM", TYPE_VK)
- .Case("VK32", TYPE_VK)
- .Case("VK32WM", TYPE_VK)
- .Case("VK64", TYPE_VK)
- .Case("VK64WM", TYPE_VK)
- .Case("VK1Pair", TYPE_VK_PAIR)
- .Case("VK2Pair", TYPE_VK_PAIR)
- .Case("VK4Pair", TYPE_VK_PAIR)
- .Case("VK8Pair", TYPE_VK_PAIR)
- .Case("VK16Pair", TYPE_VK_PAIR)
- .Case("vx32mem", TYPE_MVSIBX)
- .Case("vx64mem", TYPE_MVSIBX)
- .Case("vy32mem", TYPE_MVSIBY)
- .Case("vy64mem", TYPE_MVSIBY)
- .Case("vx32xmem", TYPE_MVSIBX)
- .Case("vx64xmem", TYPE_MVSIBX)
- .Case("vy32xmem", TYPE_MVSIBY)
- .Case("vy64xmem", TYPE_MVSIBY)
- .Case("vz32mem", TYPE_MVSIBZ)
- .Case("vz64mem", TYPE_MVSIBZ)
- .Case("BNDR", TYPE_BNDR)
- .Case("TILE", TYPE_TMM)
- .Case("TILEPair", TYPE_TMM_PAIR)
- .Default(TYPE_NONE);
+ OperandType Type = // Comment for better clang-format.
+ Switch.Case("i16mem", TYPE_M)
+ .Case("i16imm", TYPE_IMM)
+ .Case("i16i8imm", TYPE_IMM)
+ .Case("GR16", TYPE_R16)
+ .Case("GR16orGR32orGR64", TYPE_R16)
+ .Case("i32mem", TYPE_M)
+ .Case("i32imm", TYPE_IMM)
+ .Case("i32i8imm", TYPE_IMM)
+ .Case("GR32", TYPE_R32)
+ .Case("GR32orGR64", TYPE_R32)
+ .Case("i64mem", TYPE_M)
+ .Case("i64i32imm", TYPE_IMM)
+ .Case("i64i8imm", TYPE_IMM)
+ .Case("GR64", TYPE_R64)
+ .Case("i8mem", TYPE_M)
+ .Case("i8imm", TYPE_IMM)
+ .Case("u4imm", TYPE_UIMM8)
+ .Case("u8imm", TYPE_UIMM8)
+ .Case("i16u8imm", TYPE_UIMM8)
+ .Case("i32u8imm", TYPE_UIMM8)
+ .Case("i64u8imm", TYPE_UIMM8)
+ .Case("GR8", TYPE_R8)
+ .Case("VR128", TYPE_XMM)
+ .Case("VR128X", TYPE_XMM)
+ .Case("f128mem", TYPE_M)
+ .Case("f256mem", TYPE_M)
+ .Case("f512mem", TYPE_M)
+ .Case("FR128", TYPE_XMM)
+ .Case("FR64", TYPE_XMM)
+ .Case("FR64X", TYPE_XMM)
+ .Case("f64mem", TYPE_M)
+ .Case("sdmem", TYPE_M)
+ .Case("FR16X", TYPE_XMM)
+ .Case("FR32", TYPE_XMM)
+ .Case("FR32X", TYPE_XMM)
+ .Case("f32mem", TYPE_M)
+ .Case("f16mem", TYPE_M)
+ .Case("ssmem", TYPE_M)
+ .Case("shmem", TYPE_M)
+ .Case("RST", TYPE_ST)
+ .Case("RSTi", TYPE_ST)
+ .Case("i128mem", TYPE_M)
+ .Case("i256mem", TYPE_M)
+ .Case("i512mem", TYPE_M)
+ .Case("i512mem_GR16", TYPE_M)
+ .Case("i512mem_GR32", TYPE_M)
+ .Case("i512mem_GR64", TYPE_M)
+ .Case("i64i32imm_brtarget", TYPE_REL)
+ .Case("i8imm_brtarget", TYPE_REL)
+ .Case("i16imm_brtarget", TYPE_REL)
+ .Case("i32imm_brtarget", TYPE_REL)
+ .Case("ccode", TYPE_IMM)
+ .Case("cflags", TYPE_IMM)
+ .Case("AVX512RC", TYPE_IMM)
+ .Case("brtarget32", TYPE_REL)
+ .Case("brtarget16", TYPE_REL)
+ .Case("brtarget8", TYPE_REL)
+ .Case("f80mem", TYPE_M)
+ .Case("lea64_8mem", TYPE_M)
+ .Case("lea64_16mem", TYPE_M)
+ .Case("lea64_32mem", TYPE_M)
+ .Case("lea64mem", TYPE_M)
+ .Case("VR64", TYPE_MM64)
+ .Case("i64imm", TYPE_IMM)
+ .Case("anymem", TYPE_M)
+ .Case("opaquemem", TYPE_M)
+ .Case("sibmem", TYPE_MSIB)
+ .Case("SEGMENT_REG", TYPE_SEGMENTREG)
+ .Case("DEBUG_REG", TYPE_DEBUGREG)
+ .Case("CONTROL_REG", TYPE_CONTROLREG)
+ .Case("srcidx8", TYPE_SRCIDX)
+ .Case("srcidx16", TYPE_SRCIDX)
+ .Case("srcidx32", TYPE_SRCIDX)
+ .Case("srcidx64", TYPE_SRCIDX)
+ .Case("dstidx8", TYPE_DSTIDX)
+ .Case("dstidx16", TYPE_DSTIDX)
+ .Case("dstidx32", TYPE_DSTIDX)
+ .Case("dstidx64", TYPE_DSTIDX)
+ .Case("offset16_8", TYPE_MOFFS)
+ .Case("offset16_16", TYPE_MOFFS)
+ .Case("offset16_32", TYPE_MOFFS)
+ .Case("offset32_8", TYPE_MOFFS)
+ .Case("offset32_16", TYPE_MOFFS)
+ .Case("offset32_32", TYPE_MOFFS)
+ .Case("offset32_64", TYPE_MOFFS)
+ .Case("offset64_8", TYPE_MOFFS)
+ .Case("offset64_16", TYPE_MOFFS)
+ .Case("offset64_32", TYPE_MOFFS)
+ .Case("offset64_64", TYPE_MOFFS)
+ .Case("VR256", TYPE_YMM)
+ .Case("VR256X", TYPE_YMM)
+ .Case("VR512", TYPE_ZMM)
+ .Case("VK1", TYPE_VK)
+ .Case("VK1WM", TYPE_VK)
+ .Case("VK2", TYPE_VK)
+ .Case("VK2WM", TYPE_VK)
+ .Case("VK4", TYPE_VK)
+ .Case("VK4WM", TYPE_VK)
+ .Case("VK8", TYPE_VK)
+ .Case("VK8WM", TYPE_VK)
+ .Case("VK16", TYPE_VK)
+ .Case("VK16WM", TYPE_VK)
+ .Case("VK32", TYPE_VK)
+ .Case("VK32WM", TYPE_VK)
+ .Case("VK64", TYPE_VK)
+ .Case("VK64WM", TYPE_VK)
+ .Case("VK1Pair", TYPE_VK_PAIR)
+ .Case("VK2Pair", TYPE_VK_PAIR)
+ .Case("VK4Pair", TYPE_VK_PAIR)
+ .Case("VK8Pair", TYPE_VK_PAIR)
+ .Case("VK16Pair", TYPE_VK_PAIR)
+ .Case("vx32mem", TYPE_MVSIBX)
+ .Case("vx64mem", TYPE_MVSIBX)
+ .Case("vy32mem", TYPE_MVSIBY)
+ .Case("vy64mem", TYPE_MVSIBY)
+ .Case("vx32xmem", TYPE_MVSIBX)
+ .Case("vx64xmem", TYPE_MVSIBX)
+ .Case("vy32xmem", TYPE_MVSIBY)
+ .Case("vy64xmem", TYPE_MVSIBY)
+ .Case("vz32mem", TYPE_MVSIBZ)
+ .Case("vz64mem", TYPE_MVSIBZ)
+ .Case("BNDR", TYPE_BNDR)
+ .Case("TILE", TYPE_TMM)
+ .Case("TILEPair", TYPE_TMM_PAIR)
+ .Default(TYPE_NONE);
if (Type != TYPE_NONE)
return Type;
@@ -1178,7 +1179,7 @@ OperandEncoding RecognizableInstr::immediateEncodingFromString(StringRef Str,
// immediate encoding is special.
Switch.Case("i16imm", ENCODING_IW);
}
- OperandEncoding Encoding =
+ OperandEncoding Encoding = // Comment for better clang-format.
Switch.Case("i32i8imm", ENCODING_IB)
.Case("AVX512RC", ENCODING_IRC)
.Case("i16imm", ENCODING_Iv)
@@ -1218,38 +1219,39 @@ OperandEncoding RecognizableInstr::immediateEncodingFromString(StringRef Str,
OperandEncoding
RecognizableInstr::rmRegisterEncodingFromString(StringRef Str, uint8_t OpSize) {
- auto Encoding = StringSwitch<OperandEncoding>(Str)
- .Case("RST", ENCODING_FP)
- .Case("RSTi", ENCODING_FP)
- .Case("GR16", ENCODING_RM)
- .Case("GR16orGR32orGR64", ENCODING_RM)
- .Case("GR32", ENCODING_RM)
- .Case("GR32orGR64", ENCODING_RM)
- .Case("GR64", ENCODING_RM)
- .Case("GR8", ENCODING_RM)
- .Case("VR128", ENCODING_RM)
- .Case("VR128X", ENCODING_RM)
- .Case("FR128", ENCODING_RM)
- .Case("FR64", ENCODING_RM)
- .Case("FR32", ENCODING_RM)
- .Case("FR64X", ENCODING_RM)
- .Case("FR32X", ENCODING_RM)
- .Case("FR16X", ENCODING_RM)
- .Case("VR64", ENCODING_RM)
- .Case("VR256", ENCODING_RM)
- .Case("VR256X", ENCODING_RM)
- .Case("VR512", ENCODING_RM)
- .Case("VK1", ENCODING_RM)
- .Case("VK2", ENCODING_RM)
- .Case("VK4", ENCODING_RM)
- .Case("VK8", ENCODING_RM)
- .Case("VK16", ENCODING_RM)
- .Case("VK32", ENCODING_RM)
- .Case("VK64", ENCODING_RM)
- .Case("BNDR", ENCODING_RM)
- .Case("TILE", ENCODING_RM)
- .Case("TILEPair", ENCODING_RM)
- .Default(ENCODING_NONE);
+ auto Encoding = // Comment for better clang-format.
+ StringSwitch<OperandEncoding>(Str)
+ .Case("RST", ENCODING_FP)
+ .Case("RSTi", ENCODING_FP)
+ .Case("GR16", ENCODING_RM)
+ .Case("GR16orGR32orGR64", ENCODING_RM)
+ .Case("GR32", ENCODING_RM)
+ .Case("GR32orGR64", ENCODING_RM)
+ .Case("GR64", ENCODING_RM)
+ .Case("GR8", ENCODING_RM)
+ .Case("VR128", ENCODING_RM)
+ .Case("VR128X", ENCODING_RM)
+ .Case("FR128", ENCODING_RM)
+ .Case("FR64", ENCODING_RM)
+ .Case("FR32", ENCODING_RM)
+ .Case("FR64X", ENCODING_RM)
+ .Case("FR32X", ENCODING_RM)
+ .Case("FR16X", ENCODING_RM)
+ .Case("VR64", ENCODING_RM)
+ .Case("VR256", ENCODING_RM)
+ .Case("VR256X", ENCODING_RM)
+ .Case("VR512", ENCODING_RM)
+ .Case("VK1", ENCODING_RM)
+ .Case("VK2", ENCODING_RM)
+ .Case("VK4", ENCODING_RM)
+ .Case("VK8", ENCODING_RM)
+ .Case("VK16", ENCODING_RM)
+ .Case("VK32", ENCODING_RM)
+ .Case("VK64", ENCODING_RM)
+ .Case("BNDR", ENCODING_RM)
+ .Case("TILE", ENCODING_RM)
+ .Case("TILEPair", ENCODING_RM)
+ .Default(ENCODING_NONE);
if (Encoding != ENCODING_NONE)
return Encoding;
errs() << "Unhandled R/M register encoding " << Str << "\n";
@@ -1258,51 +1260,52 @@ RecognizableInstr::rmRegisterEncodingFromString(StringRef Str, uint8_t OpSize) {
OperandEncoding
RecognizableInstr::roRegisterEncodingFromString(StringRef Str, uint8_t OpSize) {
- auto Encoding = StringSwitch<OperandEncoding>(Str)
- .Case("GR16", ENCODING_REG)
- .Case("GR16orGR32orGR64", ENCODING_REG)
- .Case("GR32", ENCODING_REG)
- .Case("GR32orGR64", ENCODING_REG)
- .Case("GR64", ENCODING_REG)
- .Case("GR8", ENCODING_REG)
- .Case("VR128", ENCODING_REG)
- .Case("FR128", ENCODING_REG)
- .Case("FR64", ENCODING_REG)
- .Case("FR32", ENCODING_REG)
- .Case("VR64", ENCODING_REG)
- .Case("SEGMENT_REG", ENCODING_REG)
- .Case("DEBUG_REG", ENCODING_REG)
- .Case("CONTROL_REG", ENCODING_REG)
- .Case("VR256", ENCODING_REG)
- .Case("VR256X", ENCODING_REG)
- .Case("VR128X", ENCODING_REG)
- .Case("FR64X", ENCODING_REG)
- .Case("FR32X", ENCODING_REG)
- .Case("FR16X", ENCODING_REG)
- .Case("VR512", ENCODING_REG)
- .Case("VK1", ENCODING_REG)
- .Case("VK2", ENCODING_REG)
- .Case("VK4", ENCODING_REG)
- .Case("VK8", ENCODING_REG)
- .Case("VK16", ENCODING_REG)
- .Case("VK32", ENCODING_REG)
- .Case("VK64", ENCODING_REG)
- .Case("VK1Pair", ENCODING_REG)
- .Case("VK2Pair", ENCODING_REG)
- .Case("VK4Pair", ENCODING_REG)
- .Case("VK8Pair", ENCODING_REG)
- .Case("VK16Pair", ENCODING_REG)
- .Case("VK1WM", ENCODING_REG)
- .Case("VK2WM", ENCODING_REG)
- .Case("VK4WM", ENCODING_REG)
- .Case("VK8WM", ENCODING_REG)
- .Case("VK16WM", ENCODING_REG)
- .Case("VK32WM", ENCODING_REG)
- .Case("VK64WM", ENCODING_REG)
- .Case("BNDR", ENCODING_REG)
- .Case("TILE", ENCODING_REG)
- .Case("TILEPair", ENCODING_REG)
- .Default(ENCODING_NONE);
+ auto Encoding = // Comment for better clang-format.
+ StringSwitch<OperandEncoding>(Str)
+ .Case("GR16", ENCODING_REG)
+ .Case("GR16orGR32orGR64", ENCODING_REG)
+ .Case("GR32", ENCODING_REG)
+ .Case("GR32orGR64", ENCODING_REG)
+ .Case("GR64", ENCODING_REG)
+ .Case("GR8", ENCODING_REG)
+ .Case("VR128", ENCODING_REG)
+ .Case("FR128", ENCODING_REG)
+ .Case("FR64", ENCODING_REG)
+ .Case("FR32", ENCODING_REG)
+ .Case("VR64", ENCODING_REG)
+ .Case("SEGMENT_REG", ENCODING_REG)
+ .Case("DEBUG_REG", ENCODING_REG)
+ .Case("CONTROL_REG", ENCODING_REG)
+ .Case("VR256", ENCODING_REG)
+ .Case("VR256X", ENCODING_REG)
+ .Case("VR128X", ENCODING_REG)
+ .Case("FR64X", ENCODING_REG)
+ .Case("FR32X", ENCODING_REG)
+ .Case("FR16X", ENCODING_REG)
+ .Case("VR512", ENCODING_REG)
+ .Case("VK1", ENCODING_REG)
+ .Case("VK2", ENCODING_REG)
+ .Case("VK4", ENCODING_REG)
+ .Case("VK8", ENCODING_REG)
+ .Case("VK16", ENCODING_REG)
+ .Case("VK32", ENCODING_REG)
+ .Case("VK64", ENCODING_REG)
+ .Case("VK1Pair", ENCODING_REG)
+ .Case("VK2Pair", ENCODING_REG)
+ .Case("VK4Pair", ENCODING_REG)
+ .Case("VK8Pair", ENCODING_REG)
+ .Case("VK16Pair", ENCODING_REG)
+ .Case("VK1WM", ENCODING_REG)
+ .Case("VK2WM", ENCODING_REG)
+ .Case("VK4WM", ENCODING_REG)
+ .Case("VK8WM", ENCODING_REG)
+ .Case("VK16WM", ENCODING_REG)
+ .Case("VK32WM", ENCODING_REG)
+ .Case("VK64WM", ENCODING_REG)
+ .Case("BNDR", ENCODING_REG)
+ .Case("TILE", ENCODING_REG)
+ .Case("TILEPair", ENCODING_REG)
+ .Default(ENCODING_NONE);
if (Encoding != ENCODING_NONE)
return Encoding;
@@ -1314,32 +1317,33 @@ RecognizableInstr::roRegisterEncodingFromString(StringRef Str, uint8_t OpSize) {
OperandEncoding
RecognizableInstr::vvvvRegisterEncodingFromString(StringRef Str,
...
[truncated]
|
@KanRobert @pcwang-thead @kazutakahirata gentle ping for this simple change. |
It seems hacky to control clang-format's result with an artificial comment. If you don't like the way clang-format formats your code, I'd rather use |
Fair point. Let me do that. |
703dc56
to
a3d3304
Compare
StringSwitch
in X86RecognizableInstr.cpp
Thanks |
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/116/builds/13764 Here is the relevant piece of the build log for the reference
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/59/builds/18881 Here is the relevant piece of the build log for the reference
|
…r.cpp (llvm#141615) Use manual formatting of code for `StringSwitch` with less indentation.
…r.cpp (llvm#141615) Use manual formatting of code for `StringSwitch` with less indentation.
Use manual formatting of code for
StringSwitch
with less indentation.