From cc83dc191c1ef04907ccd4308cc6aa5bf6fcd3c6 Mon Sep 17 00:00:00 2001 From: Christian Sigg Date: Wed, 7 Oct 2020 16:17:35 +0200 Subject: [PATCH] Import llvm::StringSwitch into mlir namespace. Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D88971 --- mlir/include/mlir/Support/LLVM.h | 4 ++++ mlir/lib/Conversion/GPUCommon/IndexIntrinsicsOpLowering.h | 2 +- mlir/lib/Dialect/LLVMIR/IR/LLVMTypeSyntax.cpp | 2 +- mlir/lib/Dialect/PDL/IR/PDL.cpp | 2 +- mlir/lib/ExecutionEngine/JitRunner.cpp | 2 +- mlir/lib/IR/SymbolTable.cpp | 2 +- mlir/lib/Parser/Lexer.cpp | 2 +- mlir/lib/TableGen/Format.cpp | 2 +- mlir/lib/TableGen/Predicate.cpp | 2 +- mlir/test/lib/Dialect/Test/TestDialect.cpp | 2 +- mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-gen.cpp | 2 +- mlir/tools/mlir-tblgen/OpFormatGen.cpp | 4 ++-- 12 files changed, 16 insertions(+), 12 deletions(-) diff --git a/mlir/include/mlir/Support/LLVM.h b/mlir/include/mlir/Support/LLVM.h index 17e0204..e8595ae 100644 --- a/mlir/include/mlir/Support/LLVM.h +++ b/mlir/include/mlir/Support/LLVM.h @@ -60,6 +60,8 @@ template class SmallVectorImpl; template class StringSet; +template +class StringSwitch; template class TinyPtrVector; template @@ -111,6 +113,8 @@ using llvm::SmallPtrSet; using llvm::SmallPtrSetImpl; using llvm::SmallVector; using llvm::SmallVectorImpl; +template +using StringSwitch = llvm::StringSwitch; using llvm::TinyPtrVector; template using TypeSwitch = llvm::TypeSwitch; diff --git a/mlir/lib/Conversion/GPUCommon/IndexIntrinsicsOpLowering.h b/mlir/lib/Conversion/GPUCommon/IndexIntrinsicsOpLowering.h index 9338105..f4b7ced 100644 --- a/mlir/lib/Conversion/GPUCommon/IndexIntrinsicsOpLowering.h +++ b/mlir/lib/Conversion/GPUCommon/IndexIntrinsicsOpLowering.h @@ -27,7 +27,7 @@ private: unsigned indexBitwidth; static dimension dimensionToIndex(Op op) { - return llvm::StringSwitch(op.dimension()) + return StringSwitch(op.dimension()) .Case("x", X) .Case("y", Y) .Case("z", Z) diff --git a/mlir/lib/Dialect/LLVMIR/IR/LLVMTypeSyntax.cpp b/mlir/lib/Dialect/LLVMIR/IR/LLVMTypeSyntax.cpp index aa611d7..574d0aa 100644 --- a/mlir/lib/Dialect/LLVMIR/IR/LLVMTypeSyntax.cpp +++ b/mlir/lib/Dialect/LLVMIR/IR/LLVMTypeSyntax.cpp @@ -440,7 +440,7 @@ static LLVMType parseTypeImpl(DialectAsmParser &parser, if (failed(parser.parseKeyword(&key))) return LLVMType(); - return llvm::StringSwitch>(key) + return StringSwitch>(key) .Case("void", [&] { return LLVMVoidType::get(ctx); }) .Case("half", [&] { return LLVMHalfType::get(ctx); }) .Case("bfloat", [&] { return LLVMBFloatType::get(ctx); }) diff --git a/mlir/lib/Dialect/PDL/IR/PDL.cpp b/mlir/lib/Dialect/PDL/IR/PDL.cpp index a0b9c96..ba1eb7b 100644 --- a/mlir/lib/Dialect/PDL/IR/PDL.cpp +++ b/mlir/lib/Dialect/PDL/IR/PDL.cpp @@ -34,7 +34,7 @@ Type PDLDialect::parseType(DialectAsmParser &parser) const { return Type(); Builder &builder = parser.getBuilder(); - Type result = llvm::StringSwitch(keyword) + Type result = StringSwitch(keyword) .Case("attribute", builder.getType()) .Case("operation", builder.getType()) .Case("type", builder.getType()) diff --git a/mlir/lib/ExecutionEngine/JitRunner.cpp b/mlir/lib/ExecutionEngine/JitRunner.cpp index 2b18adb..7d141e9 100644 --- a/mlir/lib/ExecutionEngine/JitRunner.cpp +++ b/mlir/lib/ExecutionEngine/JitRunner.cpp @@ -291,7 +291,7 @@ int mlir::JitRunnerMain( Error (*)(Options &, ModuleOp, StringRef, std::function); auto compileAndExecuteFn = - llvm::StringSwitch(options.mainFuncType.getValue()) + StringSwitch(options.mainFuncType.getValue()) .Case("i32", compileAndExecuteSingleReturnFunction) .Case("i64", compileAndExecuteSingleReturnFunction) .Case("f32", compileAndExecuteSingleReturnFunction) diff --git a/mlir/lib/IR/SymbolTable.cpp b/mlir/lib/IR/SymbolTable.cpp index b064d83..e18e691 100644 --- a/mlir/lib/IR/SymbolTable.cpp +++ b/mlir/lib/IR/SymbolTable.cpp @@ -166,7 +166,7 @@ SymbolTable::Visibility SymbolTable::getSymbolVisibility(Operation *symbol) { return Visibility::Public; // Otherwise, switch on the string value. - return llvm::StringSwitch(vis.getValue()) + return StringSwitch(vis.getValue()) .Case("private", Visibility::Private) .Case("nested", Visibility::Nested) .Case("public", Visibility::Public); diff --git a/mlir/lib/Parser/Lexer.cpp b/mlir/lib/Parser/Lexer.cpp index 9a3418e..ee31ff0 100644 --- a/mlir/lib/Parser/Lexer.cpp +++ b/mlir/lib/Parser/Lexer.cpp @@ -212,7 +212,7 @@ Token Lexer::lexBareIdentifierOrKeyword(const char *tokStart) { isAllDigit(spelling.drop_front(2)))) return Token(Token::inttype, spelling); - Token::Kind kind = llvm::StringSwitch(spelling) + Token::Kind kind = StringSwitch(spelling) #define TOK_KEYWORD(SPELLING) .Case(#SPELLING, Token::kw_##SPELLING) #include "TokenKinds.def" .Default(Token::bare_identifier); diff --git a/mlir/lib/TableGen/Format.cpp b/mlir/lib/TableGen/Format.cpp index 1273587..7d17a0a 100644 --- a/mlir/lib/TableGen/Format.cpp +++ b/mlir/lib/TableGen/Format.cpp @@ -60,7 +60,7 @@ Optional FmtContext::getSubstFor(StringRef placeholder) const { } FmtContext::PHKind FmtContext::getPlaceHolderKind(StringRef str) { - return llvm::StringSwitch(str) + return StringSwitch(str) .Case("_builder", FmtContext::PHKind::Builder) .Case("_op", FmtContext::PHKind::Op) .Case("_self", FmtContext::PHKind::Self) diff --git a/mlir/lib/TableGen/Predicate.cpp b/mlir/lib/TableGen/Predicate.cpp index 8927296..a37847f 100644 --- a/mlir/lib/TableGen/Predicate.cpp +++ b/mlir/lib/TableGen/Predicate.cpp @@ -119,7 +119,7 @@ static PredCombinerKind getPredCombinerKind(const Pred &pred) { return PredCombinerKind::Leaf; const auto &combinedPred = static_cast(pred); - return llvm::StringSwitch( + return StringSwitch( combinedPred.getCombinerDef()->getName()) .Case("PredCombinerAnd", PredCombinerKind::And) .Case("PredCombinerOr", PredCombinerKind::Or) diff --git a/mlir/test/lib/Dialect/Test/TestDialect.cpp b/mlir/test/lib/Dialect/Test/TestDialect.cpp index c84a771..4ca89bc 100644 --- a/mlir/test/lib/Dialect/Test/TestDialect.cpp +++ b/mlir/test/lib/Dialect/Test/TestDialect.cpp @@ -685,7 +685,7 @@ void SideEffectOp::getEffects( // Get the specific memory effect. MemoryEffects::Effect *effect = - llvm::StringSwitch( + StringSwitch( effectElement.get("effect").cast().getValue()) .Case("allocate", MemoryEffects::Allocate::get()) .Case("free", MemoryEffects::Free::get()) diff --git a/mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-gen.cpp b/mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-gen.cpp index 4fe3cd1..64424b4 100644 --- a/mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-gen.cpp +++ b/mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-gen.cpp @@ -288,7 +288,7 @@ Token Lexer::lexIdentifier(const char *tokStart) { // Check to see if this identifier is a keyword. StringRef str(tokStart, curPtr - tokStart); - Token::Kind kind = llvm::StringSwitch(str) + Token::Kind kind = StringSwitch(str) .Case("def", Token::Kind::kw_def) .Case("ods_def", Token::Kind::kw_ods_def) .Case("floordiv", Token::Kind::kw_floordiv) diff --git a/mlir/tools/mlir-tblgen/OpFormatGen.cpp b/mlir/tools/mlir-tblgen/OpFormatGen.cpp index 336c911..9b8f249 100644 --- a/mlir/tools/mlir-tblgen/OpFormatGen.cpp +++ b/mlir/tools/mlir-tblgen/OpFormatGen.cpp @@ -719,7 +719,7 @@ static void genLiteralParser(StringRef value, OpMethodBody &body) { body << "Keyword(\"" << value << "\")"; return; } - body << (StringRef)llvm::StringSwitch(value) + body << (StringRef)StringSwitch(value) .Case("->", "Arrow()") .Case(":", "Colon()") .Case(",", "Comma()") @@ -1936,7 +1936,7 @@ Token FormatLexer::lexIdentifier(const char *tokStart) { // Check to see if this identifier is a keyword. StringRef str(tokStart, curPtr - tokStart); Token::Kind kind = - llvm::StringSwitch(str) + StringSwitch(str) .Case("attr-dict", Token::kw_attr_dict) .Case("attr-dict-with-keyword", Token::kw_attr_dict_w_keyword) .Case("custom", Token::kw_custom) -- 2.7.4