[flang-commits] [flang] 5ad416c - [flang][fir] Fix Werror build failure after D96422

via flang-commits flang-commits at lists.llvm.org
Wed Feb 10 18:44:59 PST 2021


Author: Valentin Clement
Date: 2021-02-10T21:44:16-05:00
New Revision: 5ad416ca781837ec1f2142533f044bd46e87e83c

URL: https://github.com/llvm/llvm-project/commit/5ad416ca781837ec1f2142533f044bd46e87e83c
DIFF: https://github.com/llvm/llvm-project/commit/5ad416ca781837ec1f2142533f044bd46e87e83c.diff

LOG: [flang][fir] Fix Werror build failure after D96422

Added: 
    

Modified: 
    flang/lib/Optimizer/Dialect/FIRType.cpp

Removed: 
    


################################################################################
diff  --git a/flang/lib/Optimizer/Dialect/FIRType.cpp b/flang/lib/Optimizer/Dialect/FIRType.cpp
index 68b7bd3eafd9..c0fd3d3f86df 100644
--- a/flang/lib/Optimizer/Dialect/FIRType.cpp
+++ b/flang/lib/Optimizer/Dialect/FIRType.cpp
@@ -115,11 +115,6 @@ fir::ComplexType parseComplex(mlir::DialectAsmParser &parser) {
   return parseKindSingleton<fir::ComplexType>(parser);
 }
 
-// `shapeshift` `<` rank `>`
-ShapeShiftType parseShapeShift(mlir::DialectAsmParser &parser) {
-  return parseRankSingleton<ShapeShiftType>(parser);
-}
-
 // `slice` `<` rank `>`
 SliceType parseSlice(mlir::DialectAsmParser &parser) {
   return parseRankSingleton<SliceType>(parser);
@@ -386,10 +381,9 @@ mlir::Type fir::parseFirType(FIROpsDialect *dialect,
   if (typeNameLit == "ref")
     return parseReference(parser, loc);
   if (typeNameLit == "shape")
-    // TODO move to generatedTypeParser when all types have been moved
-    return ShapeType::parse(dialect->getContext(), parser);
+    return generatedTypeParser(dialect->getContext(), parser, typeNameLit);
   if (typeNameLit == "shapeshift")
-    return ShapeShiftType::parse(dialect->getContext(), parser);
+    return generatedTypeParser(dialect->getContext(), parser, typeNameLit);
   if (typeNameLit == "slice")
     return parseSlice(parser);
   if (typeNameLit == "tdesc")
@@ -1414,16 +1408,6 @@ void fir::printFirType(FIROpsDialect *, mlir::Type ty,
     os << '>';
     return;
   }
-  if (auto type = ty.dyn_cast<ShapeType>()) {
-    // TODO when all type are moved to TableGen can be replaced by
-    // generatedTypePrinter
-    type.print(p);
-    return;
-  }
-  if (auto type = ty.dyn_cast<ShapeShiftType>()) {
-    type.print(p);
-    return;
-  }
   if (auto type = ty.dyn_cast<SliceType>()) {
     os << "slice<" << type.getRank() << '>';
     return;
@@ -1497,6 +1481,10 @@ void fir::printFirType(FIROpsDialect *, mlir::Type ty,
     os << '>';
     return;
   }
+
+  if (mlir::succeeded(generatedTypePrinter(ty, p))) {
+    return;
+  }
 }
 
 bool fir::isa_unknown_size_box(mlir::Type t) {


        


More information about the flang-commits mailing list