forked from OSchip/llvm-project
[mlir] fix broken links to Glossary
Differential Revision: https://reviews.llvm.org/D72697
This commit is contained in:
parent
982a77b694
commit
58265ad42a
|
@ -13,7 +13,7 @@ high-performance target-specific code.
|
|||
|
||||
This document defines and describes the key concepts in MLIR, and is intended to
|
||||
be a dry reference document - the [rationale documentation](Rationale.md),
|
||||
[glossary](https://mlir.llvm.org/getting_started/Glossary/), and other content are hosted elsewhere.
|
||||
[glossary](../getting_started/Glossary.md), and other content are hosted elsewhere.
|
||||
|
||||
MLIR is designed to be used in three different forms: a human-readable textual
|
||||
form suitable for debugging, an in-memory form suitable for programmatic
|
||||
|
|
|
@ -118,7 +118,7 @@ compiler passes - does not include locations in the output by default. The
|
|||
MLIR is designed to be a completely extensible system, and as such, the
|
||||
infrastructure has the capability to opaquely represent all of its core
|
||||
components: attributes, operations, types, etc. This allows MLIR to parse,
|
||||
represent, and [round-trip](../../Glossary.md#round-trip) any valid IR. For
|
||||
represent, and [round-trip](../../../getting_started/Glossary.md#round-trip) any valid IR. For
|
||||
example, we could place our Toy operation from above into an `.mlir` file and
|
||||
round-trip through *mlir-opt* without registering anything:
|
||||
|
||||
|
|
|
@ -24,7 +24,7 @@ level buffer access, as they are concrete references to a region of memory.
|
|||
# Dialect Conversions
|
||||
|
||||
MLIR has many different dialects, so it is important to have a unified framework
|
||||
for [converting](../../Glossary.md#conversion) between them. This is where the
|
||||
for [converting](../../../getting_started/Glossary.md#conversion) between them. This is where the
|
||||
`DialectConversion` framework comes into play. This framework allows for
|
||||
transforming a set of `illegal` operations to a set of `legal` ones. To use this
|
||||
framework, we need to provide two things (and an optional third):
|
||||
|
@ -34,7 +34,7 @@ framework, we need to provide two things (and an optional third):
|
|||
- This is the formal specification of what operations or dialects are
|
||||
legal for the conversion. Operations that aren't legal will require
|
||||
rewrite patterns to perform
|
||||
[legalization](../../Glossary.md#legalization).
|
||||
[legalization](../../../getting_started/Glossary.md#legalization).
|
||||
|
||||
* A set of
|
||||
[Rewrite Patterns](../../DialectConversion.md#rewrite-pattern-specification)
|
||||
|
|
|
@ -16,7 +16,7 @@ lowered all but one of the `toy` operations, with the last being `toy.print`.
|
|||
Before going over the conversion to LLVM, let's lower the `toy.print` operation.
|
||||
We will lower this operation to a non-affine loop nest that invokes `printf` for
|
||||
each element. Note that, because the dialect conversion framework supports
|
||||
[transitive lowering](Glossary.md#transitive-lowering), we don't need to
|
||||
[transitive lowering](../../../getting_started/Glossary.md#transitive-lowering), we don't need to
|
||||
directly emit operations in the LLVM dialect. By transitive lowering, we mean
|
||||
that the conversion framework may apply multiple patterns to fully legalize an
|
||||
operation. In this example, we are generating a structured loop nest instead of
|
||||
|
@ -86,7 +86,7 @@ used for lowering. At this point in the compilation process, we have a
|
|||
combination of `toy`, `affine`, and `std` operations. Luckily, the `std` and
|
||||
`affine` dialects already provide the set of patterns needed to transform them
|
||||
into LLVM dialect. These patterns allow for lowering the IR in multiple stages
|
||||
by relying on [transitive lowering](Glossary.md#transitive-lowering).
|
||||
by relying on [transitive lowering](../../../getting_started/Glossary.md#transitive-lowering).
|
||||
|
||||
```c++
|
||||
mlir::OwningRewritePatternList patterns;
|
||||
|
|
Loading…
Reference in New Issue