Fix 'the the' typo.
authorAlexander Belyaev <pifon@google.com>
Wed, 20 Nov 2019 13:37:49 +0000 (05:37 -0800)
committerA. Unique TensorFlower <gardener@tensorflow.org>
Wed, 20 Nov 2019 13:38:14 +0000 (05:38 -0800)
PiperOrigin-RevId: 281501234

mlir/g3doc/DeclarativeRewrites.md
mlir/g3doc/OpDefinitions.md
mlir/include/mlir/Analysis/CallGraph.h
mlir/lib/Analysis/CallGraph.cpp
mlir/test/Transforms/loop-fusion.mlir
mlir/test/lib/TestDialect/TestPatterns.cpp

index 5c344a1..2d9fb5b 100644 (file)
@@ -230,7 +230,7 @@ COp::build(..., ArrayRef<Type> resultTypes, Array<Value *> operands,
 ArrayRef<NamedAttribute> attr)`. The pattern in the above calls this `build()`
 method for constructing the `COp`.
 
-In general, arguments in the the result pattern will be passed directly to the
+In general, arguments in the result pattern will be passed directly to the
 `build()` method to leverage the auto-generated `build()` method, list them in
 the pattern by following the exact same order as the ODS `arguments` definition.
 Otherwise, a custom `build()` method that matches the argument list is required.
index 2a18982..ea79496 100644 (file)
@@ -727,7 +727,7 @@ several mechanisms: `StrEnumAttr`, `IntEnumAttr`, and `BitEnumAttr`.
 *   `BitEnumAttr`: each enum case is a bit, the attribute is stored as a
     [`IntegerAttr`][IntegerAttr] in the op.
 
-All these `*EnumAttr` attributes require fully specifying all of the the allowed
+All these `*EnumAttr` attributes require fully specifying all of the allowed
 cases via their corresponding `*EnumAttrCase`. With this, ODS is able to
 generate additional verification to only accept allowed cases. To facilitate the
 interaction between `*EnumAttr`s and their C++ consumers, the
index 506a115..700a016 100644 (file)
@@ -208,7 +208,7 @@ public:
   iterator begin() const { return nodes.begin(); }
   iterator end() const { return nodes.end(); }
 
-  /// Dump the the graph in a human readable format.
+  /// Dump the graph in a human readable format.
   void dump() const;
   void print(raw_ostream &os) const;
 
index 2b5894f..93017ca 100644 (file)
@@ -206,7 +206,7 @@ CallGraphNode *CallGraph::resolveCallable(CallInterfaceCallable callable,
 //===----------------------------------------------------------------------===//
 // Printing
 
-/// Dump the the graph in a human readable format.
+/// Dump the graph in a human readable format.
 void CallGraph::dump() const { print(llvm::errs()); }
 void CallGraph::print(raw_ostream &os) const {
   os << "// ---- CallGraph ----\n";
index 592b45d..7431ead 100644 (file)
@@ -766,7 +766,7 @@ func @should_fuse_at_src_depth1_and_dst_depth1() {
       "op2"(%v2) : (f32) -> ()
     }
   }
-  // We can slice iterations of the '%i0' and '%i1' loops in the the source
+  // We can slice iterations of the '%i0' and '%i1' loops in the source
   // loop nest, but slicing at depth 2 and inserting the slice in the
   // destination loop nest at depth2 causes extra computation. Instead,
   // the fusion algorithm should detect that the source loop should be sliced
index 5ef0360..92f1326 100644 (file)
@@ -272,8 +272,7 @@ struct TestUpdateConsumerType : public ConversionPattern {
   PatternMatchResult
   matchAndRewrite(Operation *op, ArrayRef<Value *> operands,
                   ConversionPatternRewriter &rewriter) const final {
-    // Verify that the the incoming operand has been successfully remapped to
-    // F64.
+    // Verify that the incoming operand has been successfully remapped to F64.
     if (!operands[0]->getType().isF64())
       return matchFailure();
     rewriter.replaceOpWithNewOp<TestTypeConsumerOp>(op, operands[0]);