| /llvm-project-15.0.7/mlir/docs/Rationale/ |
| H A D | _index.md | 4 rationale for some of the design decisions behind MLIR. 7 : A discussion of how the adoption of MLIR can be taken in incremental steps, 9 that full adoption of MLIR is required before we can reap the benefits of 10 MLIR. 12 [MLIR Rationale](Rationale.md) 13 : Introduces the motivation for MLIR and captures design discussions and 14 decisions made for various core features of MLIR. 18 MLIR. 26 for polyhedral compiler techniques in MLIR instead of the traditional 29 [Usage of 'const' in MLIR, for core IR types](UsageOfConst.md) [all …]
|
| H A D | MLIRForGraphAlgorithms.md | 1 # MLIR: Incremental Application to Graph Algorithms in ML Frameworks 17 focuses on the use of MLIR for **graph-level algorithms**. MLIR will also unlock 26 MLIR in the future. 28 ### How is MLIR relevant? 44 MLIR infrastructure, but that isn't a focus of this doc.)) 94 MLIR supports converting from TensorFlow Graphs to MLIR and back, which means 101 uses MLIR for a single pass. In practice, we'll have the MLIR flag gated under 106 ## What benefit does MLIR provide? 331 ### Isn't MLIR a big dependency to take on? 335 points MLIR: [all …]
|
| H A D | RationaleGenericDAGRewriter.md | 4 infrastructure for MLIR. For up-to-date documentation on the user facing API, 17 repeatedly at scale, and is important for the goals of MLIR: matching one DAG of 24 A particular strength of MLIR (and a major difference vs other compiler 26 compiler IR to represent code at multiple levels of abstraction: an MLIR 29 specific instructions), or anything else that the MLIR operation system can 35 (SSA) representations like MLIR make it easy to access the operands and "users" 56 MLIR operations may override a 70 usually, narrow problem: MLIR on the other hand would like to solve many of 117 metaprogramming (MLIR has similar facilities). Here's a simple example: 250 We aim for MLIR transformations to be easy to implement and reduce the [all …]
|
| /llvm-project-15.0.7/mlir/test/Integration/Dialect/SparseTensor/taco/ |
| H A D | README.md | 1 # MLIR-PyTACO: Implementing PyTACO with MLIR 7 This directory contains the implementation of PyTACO using MLIR. In particular, 8 we implement a Python layer that accepts the PyTACO language, generates MLIR 10 computation, and invokes the MLIR sparse tensor code generator 11 (https://mlir.llvm.org/docs/Dialects/SparseTensorOps/) as well as other MLIR 12 compilation passes to generate an executable. Then, we invoke the MLIR execution 16 program to MLIR-PyTACO, we basically only need to replace this line that imports 23 with this line to import MLIR-PyTACO:
|
| /llvm-project-15.0.7/mlir/docs/ |
| H A D | doxygen-mainpage.dox | 1 /// \mainpage MLIR 4 /// Welcome to the MLIR project. 7 /// up MLIR, not the **external** use of MLIR. There are no instructions 8 /// here on how to use MLIR, only the APIs that make up the software. For 14 /// Since MLIR is constantly under active development, what you're about to
|
| H A D | LangRef.md | 1 # MLIR Language Reference 3 MLIR (Multi-Level IR) is a compiler intermediate representation with 58 One obvious application of MLIR is to represent an 68 Here's an example of an MLIR module: 190 consuming the MLIR syntax. [Operations](#operations), 256 A few of the dialects supported by MLIR: 307 semantics. For example, MLIR supports 580 In MLIR, graph-like semantics in a region is indicated by 598 In graph regions, MLIR operations naturally represent nodes, while each MLIR 634 Each value in MLIR has a type defined by the type system. MLIR has an open type [all …]
|
| H A D | README.txt | 1 MLIR documentation 4 Please note mlir.llvm.org is where MLIR's rendered documentation is displayed.
|
| /llvm-project-15.0.7/mlir/docs/Tutorials/Toy/ |
| H A D | _index.md | 4 MLIR. The goal of this tutorial is to introduce the concepts of MLIR; in 14 This tutorial assumes you have cloned and built MLIR; if you have not yet done 16 [Getting started with MLIR](../../../getting_started/). 22 - [Chapter #2](Ch-2.md): Traversing the AST to emit a dialect in MLIR, 23 introducing base MLIR concepts. Here we show how to start attaching 24 semantics to our custom operations in MLIR. 37 We'll demonstrate how to add a custom type to MLIR, and how it fits in the
|
| /llvm-project-15.0.7/mlir/tools/mlir-shlib/ |
| H A D | CMakeLists.txt | 24 # libClang needs this, but it causes problems for MLIR (probably 25 # because we use public library dependencies within MLIR.) 35 MLIR 46 target_link_libraries(MLIR PRIVATE ${LLVM_PTHREAD_LIB}) 52 mlir_check_all_link_libraries(MLIR)
|
| /llvm-project-15.0.7/mlir/include/mlir/Dialect/PDL/IR/ |
| H A D | PDLDialect.td | 9 // Defines the MLIR PDL dialect. 26 available in MLIR. This abstraction allows for representing patterns 27 transforming MLIR, as MLIR. This allows for applying all of the benefits 28 that the general MLIR infrastructure provides, to the infrastructure itself. 32 PDL abstracts over various different aspects of patterns and core MLIR data 37 are handle types to MLIR C++ types, with `!pdl.attribute`, `!pdl.operation`,
|
| /llvm-project-15.0.7/mlir/docs/Dialects/ |
| H A D | Vector.md | 5 MLIR supports multi-dimensional `vector` types and custom operations on those 9 MLIR today and operate on ssa-values of type `vector` along with pattern 13 proposal but rather a textual documentation of existing MLIR components along 28 abstractions in MLIR. 62 1. MLIR Rewrite Patterns applied by the MLIR `PatternRewrite` infrastructure to 216 there is an opportunity to revisit vectorization in MLIR. 262 and MLIR. 319 flattened lowering of an MLIR n-D vector to an LLVM 1-D vector. 456 extra MLIR patterns and costs. 471 even though MLIR will continue needing higher level abstractions. [all …]
|
| H A D | LLVM.md | 3 This dialect maps [LLVM IR](https://llvm.org/docs/LangRef.html) into MLIR by 5 represented as MLIR attributes, which offer additional structure verification. 9 "LLVM _dialect_" or "LLVM IR _dialect_" to refer to this MLIR dialect. 14 the differences in the IR structure, e.g., MLIR does not have `phi` operations 24 `LLVMContext`, such as an LLVM IR instruction or type. Instead, MLIR provides 31 IR modules use the built-in MLIR `ModuleOp` and support all its features. In 141 level. Globals are MLIR symbols and are identified by their name. 159 MLIR symbol visibility. 244 the metadata cannot be represented as structured MLIR attributes. 392 since MLIR modules can be arbitrarily nested. [all …]
|
| /llvm-project-15.0.7/mlir/lib/CAPI/ |
| H A D | CMakeLists.txt | 24 message(STATUS "Building MLIR-C dylib") 26 add_mlir_aggregate(MLIR-C 32 target_link_options(MLIR-C PRIVATE "-Wl,-exclude-libs,ALL") 35 …message(STATUS "MLIR-C on this platform exports all symbols. Recommend building with CMAKE_(C|CXX)…
|
| /llvm-project-15.0.7/mlir/cmake/modules/ |
| H A D | MLIRConfig.cmake.in | 1 # This file allows users to call find_package(MLIR) and pick up our targets. 26 # More specifically, configure MLIR so that it can be directly included in a top 33 # By creating these targets here, subprojects that depend on MLIR's 35 # in-tree with MLIR or not.
|
| /llvm-project-15.0.7/mlir/examples/toy/Ch2/ |
| H A D | toyc.cpp | 40 enum InputType { Toy, MLIR }; enumerator 45 cl::values(clEnumValN(MLIR, "mlir", 76 if (inputType != InputType::MLIR && in dumpMLIR() 112 if (inputType == InputType::MLIR) { in dumpAST()
|
| /llvm-project-15.0.7/mlir/examples/standalone/include/Standalone/ |
| H A D | StandaloneDialect.td | 20 let summary = "A standalone out-of-tree MLIR dialect."; 22 This dialect is an example of an out-of-tree MLIR dialect designed to 23 illustrate the basic setup required to develop MLIR-based tools without
|
| /llvm-project-15.0.7/mlir/docs/Tools/ |
| H A D | MLIRLSP.md | 1 # MLIR : Language Server Protocol 14 ## MLIR LSP Language Server : `mlir-lsp-server` 25 main MLIR repository provides support for all of the upstream MLIR dialects and 63 MLIR provides 375 languages: [MLIR](#mlir---mlir-textual-assembly-format), 378 #### `.mlir` - MLIR textual assembly format: 380 The MLIR extension adds language support for the 404 #### `.pdll` - MLIR PDLL pattern files: 406 The MLIR extension adds language support for the 415 - View intermediate AST, MLIR, or C++ output [all …]
|
| /llvm-project-15.0.7/mlir/utils/mbr/ |
| H A D | README.md | 1 # MBR - MLIR Benchmark Runner 3 benchmark programs. It uses MLIR's python bindings for MLIR benchmarks. 6 To build and enable MLIR benchmarks, pass `-DMLIR_ENABLE_PYTHON_BENCHMARKS=ON` 7 while building MLIR. If you make some changes to the `mbr` files itself, build 62 MLIR benchmarks can be run like this
|
| /llvm-project-15.0.7/mlir/examples/standalone/ |
| H A D | README.md | 1 # An out-of-tree MLIR dialect 3 This is an example of an out-of-tree [MLIR](https://mlir.llvm.org/) dialect along with a standalone… 7 This setup assumes that you have built LLVM and MLIR in `$BUILD_DIR` and installed them to `$PREFIX…
|
| /llvm-project-15.0.7/mlir/examples/toy/Ch3/ |
| H A D | toyc.cpp | 42 enum InputType { Toy, MLIR }; enumerator 47 cl::values(clEnumValN(MLIR, "mlir", 77 if (inputType != InputType::MLIR && in loadMLIR() 131 if (inputType == InputType::MLIR) { in dumpAST()
|
| /llvm-project-15.0.7/flang/include/flang/Optimizer/Dialect/ |
| H A D | CMakeLists.txt | 1 # This replicates part of the add_mlir_dialect cmake function from MLIR that 2 # cannot be used her because it expects to be run inside MLIR directory which 19 tablegen(MLIR ${dialect_doc_filename}.md -gen-op-doc "-I${MLIR_MAIN_SRC_DIR}" "-I${MLIR_INCLUDE_DIR…
|
| /llvm-project-15.0.7/mlir/examples/toy/Ch4/ |
| H A D | toyc.cpp | 43 enum InputType { Toy, MLIR }; enumerator 48 cl::values(clEnumValN(MLIR, "mlir", 78 if (inputType != InputType::MLIR && in loadMLIR() 140 if (inputType == InputType::MLIR) { in dumpAST()
|
| /llvm-project-15.0.7/mlir/docs/Tutorials/ |
| H A D | _index.md | 3 This section contains multiple MLIR tutorials. 4 See [Toy tutorial](toy) for an introduction to using MLIR infrastructure.
|
| /llvm-project-15.0.7/mlir/utils/vim/ftplugin/ |
| H A D | mlir.vim | 2 " Language: MLIR Assembly 3 " Maintainer: The MLIR team
|
| /llvm-project-15.0.7/mlir/examples/toy/Ch5/ |
| H A D | toyc.cpp | 45 enum InputType { Toy, MLIR }; enumerator 50 cl::values(clEnumValN(MLIR, "mlir", 82 if (inputType != InputType::MLIR && in loadMLIR() 163 if (inputType == InputType::MLIR) { in dumpAST()
|