[PATCH] D79146: [MLIR][docs] Update tutorial language around Op and Operation* and 'opaque'

River Riddle via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 29 17:18:07 PDT 2020


rriddle added inline comments.


================
Comment at: mlir/docs/Interfaces.md:3
 
-MLIR is generic and very extensible; it allows for opaquely representing many
-different dialects that have their own operations, attributes, types, and so on.
-This allows for dialects to be very expressive in their semantics and for MLIR
-to capture many different levels of abstraction. The downside to this is that
-transformations and analyses must be extremely conservative about the operations
-that they encounter, and must special-case the different dialects that they
-support. To combat this, MLIR provides the concept of `interfaces`.
+MLIR is generic and very extensible; it generically represents many
+different dialects that have their own operations, attributes, types,
----------------
Maybe just `it allows for representing` so we don't have generic and generically right after each other?


================
Comment at: mlir/docs/OpDefinitions.md:352
+[Operation interfaces](Interfaces.md#operation-interfaces) are a
+mechanism allowing operations to expose method calls, without the
+caller needing to know the exact operation type. Operation interfaces
----------------
nit: allowing -> by which operations can expose?


================
Comment at: mlir/docs/Tutorials/Toy/Ch-2.md:89
+using a small set of concepts, enabling operations to be reasoned
+about and manipulated generically.  These concepts are:
 
----------------
nit: Remove the double space here.


================
Comment at: mlir/docs/Tutorials/Toy/Ch-2.md:119
+MLIR is designed to allow most IR elements, such as attributes,
+operations, and types, to be customized.  At the same time, IR
+elements can always be reduced to the above fundmental concepts.  This
----------------
Same here and below, please use single space after punctuation.


================
Comment at: mlir/docs/Tutorials/Toy/Ch-2.md:282
+pointer (*passing by value* is a common idiom and applies similarly to
+attributes, types, etc).  Given an generic `Operation*` instance, we
+can always get a specific `Op` instance using LLVM's casting
----------------
nit: an -> a


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D79146/new/

https://reviews.llvm.org/D79146





More information about the llvm-commits mailing list