Add MLIR dialects to website "Reference" section. (#14117)
Progress on https://github.com/openxla/iree/issues/5477
This adds a new subsection to the "Reference" section of our website for
MLIR dialect documentation:

Preview: https://scotttodd.github.io/iree/reference/mlir-dialects/
## Rationale / background
We have a diverse set of "users" in our website's target audience.
Historically, I've considered MLIR to be an implementation detail of the
IREE compiler. However, we're seeing more collaboration with developers
throughout the compiler ecosystem, and MLIR is the common language used
in that ecosystem. The newly added "Reference" section of the website
gives pages with no direct relationship with a user journey like these a
natural place to live.
## CI details
Generating markdown files from tablegen (.td) files requires fetching
the LLVM submodule and running CMake. I've added a script to do that and
included some notes in the files about where execution time is spent.
Here is a trial run on my fork:
https://github.com/ScottTodd/iree/actions/runs/5271864329/jobs/9533338273
(45s getting submodules, 30s installing deps, 3m30s building
`iree-tblgen`).
Website generation will succeed without running the script, but mkdocs
will warn about 404s / broken links.
diff --git a/docs/website/mkdocs.yml b/docs/website/mkdocs.yml
index 72d40af..959b8ec 100644
--- a/docs/website/mkdocs.yml
+++ b/docs/website/mkdocs.yml
@@ -104,6 +104,7 @@
- tables
- toc: # Table of Contents
permalink: 'link' # Use Material font's "link" icon; see openxla.css
+ toc_depth: 3
# Navigation with explicit ordering and nesting.
# https://www.mkdocs.org/user-guide/configuration/#nav
@@ -137,6 +138,18 @@
- Runtime C API: "reference/bindings/c-api.md"
- Python: "reference/bindings/python.md"
- TensorFlow Lite: "reference/bindings/tensorflow-lite.md"
+ - "MLIR dialects":
+ - "reference/mlir-dialects/index.md"
+ # Note: these files are generated by generate_extra_files.sh.
+ - Check: "reference/mlir-dialects/Check.md"
+ - Flow: "reference/mlir-dialects/Flow.md"
+ - HAL: "reference/mlir-dialects/HAL.md"
+ - HALInline: "reference/mlir-dialects/HALInline.md"
+ - HALLoader: "reference/mlir-dialects/HALLoader.md"
+ - Stream: "reference/mlir-dialects/Stream.md"
+ - Util: "reference/mlir-dialects/Util.md"
+ - VM: "reference/mlir-dialects/VM.md"
+ - VMVX: "reference/mlir-dialects/VMVX.md"
- "Other topics":
- Glossary: "reference/glossary.md"
- Optimization options: "reference/optimization-options.md"