MLIR 22.0.0git
ArmSME.cpp
Go to the documentation of this file.
1//===- ArmSMEDialect.cpp - MLIR ArmSME dialect implementation -------------===//
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 implements the ArmSME dialect and its operations.
10//
11//===----------------------------------------------------------------------===//
12
16#include "llvm/ADT/TypeSwitch.h"
17
18using namespace mlir;
19using namespace mlir::arm_sme;
20
21namespace mlir::arm_sme::detail {
25} // namespace mlir::arm_sme::detail
26
27//===----------------------------------------------------------------------===//
28// Tablegen Definitions
29//===----------------------------------------------------------------------===//
30
31#include "mlir/Dialect/ArmSME/IR/ArmSMEDialect.cpp.inc"
32
33#include "mlir/Dialect/ArmSME/IR/ArmSMEEnums.cpp.inc"
34
35#include "mlir/Dialect/ArmSME/IR/ArmSMEOpInterfaces.cpp.inc"
36
37#define GET_OP_CLASSES
38#include "mlir/Dialect/ArmSME/IR/ArmSMEOps.cpp.inc"
39
40#define GET_OP_CLASSES
41#include "mlir/Dialect/ArmSME/IR/ArmSMEIntrinsicOps.cpp.inc"
42
43#define GET_TYPEDEF_CLASSES
44#include "mlir/Dialect/ArmSME/IR/ArmSMETypes.cpp.inc"
45
46#define GET_ATTRDEF_CLASSES
47#include "mlir/Dialect/ArmSME/IR/ArmSMEAttrDefs.cpp.inc"
48
49void ArmSMEDialect::initialize() {
50 addAttributes<
51#define GET_ATTRDEF_LIST
52#include "mlir/Dialect/ArmSME/IR/ArmSMEAttrDefs.cpp.inc"
53 >();
54
55 addOperations<
56#define GET_OP_LIST
57#include "mlir/Dialect/ArmSME/IR/ArmSMEOps.cpp.inc"
58 ,
59#define GET_OP_LIST
60#include "mlir/Dialect/ArmSME/IR/ArmSMEIntrinsicOps.cpp.inc"
61 >();
62}
Operation is the basic unit of execution within MLIR.
Definition Operation.h:88
An interface for operations that use Arm SME tiles.
LogicalResult verifyArmSMETileOpInterface(Operation *)
Definition ArmSME.cpp:22
LogicalResult verifyOperationHasValidTileId(Operation *)
Verifies the tile ID (if set) on this tile operation is valid.
Definition Utils.cpp:77
Include the generated interface declarations.