Fix broken docs links (WritingAPass.md was renamed PassManagement.md)

This commit is contained in:
Mehdi Amini 2020-04-19 04:37:26 +00:00
parent ad0d3bbb27
commit 1b012a9146
5 changed files with 5 additions and 5 deletions

View File

@ -5,7 +5,7 @@
With [Regions](LangRef.md#regions), the multi-level aspect of MLIR is structural With [Regions](LangRef.md#regions), the multi-level aspect of MLIR is structural
in the IR. A lot of infrastructure within the compiler is built around this in the IR. A lot of infrastructure within the compiler is built around this
nesting structure; including the processing of operations within the nesting structure; including the processing of operations within the
[pass manager](WritingAPass.md#pass-manager). One advantage of the MLIR design [pass manager](PassManagement.md#pass-manager). One advantage of the MLIR design
is that it is able to process operations in parallel, utilizing multiple is that it is able to process operations in parallel, utilizing multiple
threads. This is possible due to a property of the IR known as threads. This is possible due to a property of the IR known as
[`IsolatedFromAbove`](Traits.md#isolatedfromabove). [`IsolatedFromAbove`](Traits.md#isolatedfromabove).

View File

@ -217,7 +217,7 @@ foo.region_op {
``` ```
This trait is an important structural property of the IR, and enables operations This trait is an important structural property of the IR, and enables operations
to have [passes](WritingAPass.md) scheduled under them. to have [passes](PassManagement.md) scheduled under them.
### Single Block with Implicit Terminator ### Single Block with Implicit Terminator

View File

@ -251,5 +251,5 @@ constant propagation or other, unrelated, optimization passes.
Optimization passes that do not fit/are difficult to specify in the above Optimization passes that do not fit/are difficult to specify in the above
structure can be specified as general iterations across modules/functions. See structure can be specified as general iterations across modules/functions. See
[Writing a Pass](WritingAPass.md) for a general overview and introduction to [Writing a Pass](../PassManagement.md) for a general overview and introduction to
optimization passes in MLIR. optimization passes in MLIR.

View File

@ -310,7 +310,7 @@ void MulOp::inferShapes() { getResult().setType(getOperand(0).getType()); }
At this point, each of the necessary Toy operations provide a mechanism by which At this point, each of the necessary Toy operations provide a mechanism by which
to infer their output shapes. The ShapeInferencePass is a FunctionPass: it will to infer their output shapes. The ShapeInferencePass is a FunctionPass: it will
run on each Function in isolation. MLIR also supports general run on each Function in isolation. MLIR also supports general
[OperationPasses](../../WritingAPass.md#operation-pass) that run on any isolated [OperationPasses](../../PassManagement.md#operation-pass) that run on any isolated
operation (i.e. other function-like operations), but here our module only operation (i.e. other function-like operations), but here our module only
contains functions, so there is no need to generalize to all operations. contains functions, so there is no need to generalize to all operations.

View File

@ -315,7 +315,7 @@ $ echo 'def main() { print([[1, 2], [3, 4]]); }' | ./bin/toyc-ch6 -emit=jit
You can also play with `-emit=mlir`, `-emit=mlir-affine`, `-emit=mlir-llvm`, and You can also play with `-emit=mlir`, `-emit=mlir-affine`, `-emit=mlir-llvm`, and
`-emit=llvm` to compare the various levels of IR involved. Also try options like `-emit=llvm` to compare the various levels of IR involved. Also try options like
[`--print-ir-after-all`](../../WritingAPass.md#ir-printing) to track the [`--print-ir-after-all`](../../PassManagement.md#ir-printing) to track the
evolution of the IR throughout the pipeline. evolution of the IR throughout the pipeline.
The example code used throughout this section can be found in The example code used throughout this section can be found in