MLIR
20.0.0git
include
mlir
CAPI
IR.h
Go to the documentation of this file.
1
//===- IR.h - C API Utils for Core MLIR classes -----------------*- C++ -*-===//
2
//
3
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
// See https://llvm.org/LICENSE.txt for license information.
5
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
//
7
//===----------------------------------------------------------------------===//
8
//
9
// This file contains declarations of implementation details of the C API for
10
// core MLIR classes. This file should not be included from C++ code other than
11
// C API implementation nor from C code.
12
//
13
//===----------------------------------------------------------------------===//
14
15
#ifndef MLIR_CAPI_IR_H
16
#define MLIR_CAPI_IR_H
17
18
#include "
mlir/Bytecode/BytecodeWriter.h
"
19
#include "
mlir/CAPI/Wrap.h
"
20
#include "
mlir/IR/BuiltinOps.h
"
21
#include "
mlir/IR/MLIRContext.h
"
22
#include "
mlir/IR/Operation.h
"
23
24
DEFINE_C_API_PTR_METHODS
(MlirAsmState,
mlir::AsmState
)
25
DEFINE_C_API_PTR_METHODS
(MlirBytecodeWriterConfig,
mlir::BytecodeWriterConfig
)
26
DEFINE_C_API_PTR_METHODS
(MlirContext,
mlir::MLIRContext
)
27
DEFINE_C_API_PTR_METHODS
(MlirDialect,
mlir::Dialect
)
28
DEFINE_C_API_PTR_METHODS
(MlirDialectRegistry,
mlir::DialectRegistry
)
29
DEFINE_C_API_PTR_METHODS
(MlirOperation,
mlir::Operation
)
30
DEFINE_C_API_PTR_METHODS
(MlirBlock,
mlir::Block
)
31
DEFINE_C_API_PTR_METHODS
(MlirOpOperand,
mlir::OpOperand
)
32
DEFINE_C_API_PTR_METHODS
(MlirOpPrintingFlags,
mlir::OpPrintingFlags
)
33
DEFINE_C_API_PTR_METHODS
(MlirRegion,
mlir::Region
)
34
DEFINE_C_API_PTR_METHODS
(MlirSymbolTable,
mlir::SymbolTable
)
35
36
DEFINE_C_API_METHODS
(MlirAttribute,
mlir::Attribute
)
37
DEFINE_C_API_METHODS
(MlirIdentifier, mlir::StringAttr)
38
DEFINE_C_API_METHODS
(MlirLocation,
mlir::Location
)
39
DEFINE_C_API_METHODS
(MlirModule, mlir::ModuleOp)
40
DEFINE_C_API_METHODS
(MlirType,
mlir::Type
)
41
DEFINE_C_API_METHODS
(MlirValue,
mlir::Value
)
42
43
#endif
// MLIR_CAPI_IR_H
BuiltinOps.h
BytecodeWriter.h
Operation.h
MLIRContext.h
Wrap.h
DEFINE_C_API_PTR_METHODS
#define DEFINE_C_API_PTR_METHODS(name, cpptype)
Definition:
Wrap.h:25
DEFINE_C_API_METHODS
#define DEFINE_C_API_METHODS(name, cpptype)
Definition:
Wrap.h:31
mlir::AsmState
This class provides management for the lifetime of the state used when printing the IR.
Definition:
AsmState.h:540
mlir::Attribute
Attributes are known-constant values of operations.
Definition:
Attributes.h:25
mlir::Block
Block represents an ordered list of Operations.
Definition:
Block.h:33
mlir::BytecodeWriterConfig
This class contains the configuration used for the bytecode writer.
Definition:
BytecodeWriter.h:75
mlir::DialectRegistry
The DialectRegistry maps a dialect namespace to a constructor for the matching dialect.
Definition:
DialectRegistry.h:139
mlir::Dialect
Dialects are groups of MLIR operations, types and attributes, as well as behavior associated with the...
Definition:
Dialect.h:38
mlir::Location
This class defines the main interface for locations in MLIR and acts as a non-nullable wrapper around...
Definition:
Location.h:66
mlir::MLIRContext
MLIRContext is the top-level object for a collection of MLIR operations.
Definition:
MLIRContext.h:60
mlir::OpOperand
This class represents an operand of an operation.
Definition:
Value.h:267
mlir::OpPrintingFlags
Set of flags used to control the behavior of the various IR print methods (e.g.
Definition:
OperationSupport.h:1136
mlir::Operation
Operation is the basic unit of execution within MLIR.
Definition:
Operation.h:88
mlir::Region
This class contains a list of basic blocks and a link to the parent operation it is attached to.
Definition:
Region.h:26
mlir::SymbolTable
This class allows for representing and managing the symbol table used by operations with the 'SymbolT...
Definition:
SymbolTable.h:24
mlir::Type
Instances of the Type class are uniqued, have an immutable identifier and an optional mutable compone...
Definition:
Types.h:74
mlir::Value
This class represents an instance of an SSA value in the MLIR system, representing a computable value...
Definition:
Value.h:96
Generated on Wed Nov 27 2024 04:32:01 for MLIR by
1.9.1