Home
last modified time | relevance | path

Searched refs:MLIR (Results 1 – 25 of 207) sorted by relevance

123456789

/llvm-project-15.0.7/mlir/docs/Rationale/
H A D_index.md4 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 DMLIRForGraphAlgorithms.md1 # 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 DRationaleGenericDAGRewriter.md4 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 DREADME.md1 # 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 Ddoxygen-mainpage.dox1 /// \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 DLangRef.md1 # 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 DREADME.txt1 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.md4 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 DCMakeLists.txt24 # 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 DPDLDialect.td9 // 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 DVector.md5 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 DLLVM.md3 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 DCMakeLists.txt24 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 DMLIRConfig.cmake.in1 # 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 Dtoyc.cpp40 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 DStandaloneDialect.td20 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 DMLIRLSP.md1 # 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 DREADME.md1 # 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 DREADME.md1 # 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 Dtoyc.cpp42 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 DCMakeLists.txt1 # 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 Dtoyc.cpp43 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.md3 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 Dmlir.vim2 " Language: MLIR Assembly
3 " Maintainer: The MLIR team
/llvm-project-15.0.7/mlir/examples/toy/Ch5/
H A Dtoyc.cpp45 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()

123456789