xref: /llvm-project/mlir/include/mlir/Dialect/XeGPU/IR/XeGPUDialect.td (revision 03bb10dfb3725ec2c31fb66deede96d066f2b49a)
1//===- XeGPUDialect.td - XeGPU dialect definition -----------*- tablegen -*-===//
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#ifndef MLIR_DIALECT_XEGPU_IR_XEGPUDIALECT_TD
10#define MLIR_DIALECT_XEGPU_IR_XEGPUDIALECT_TD
11
12include "mlir/IR/OpBase.td"
13
14def XeGPU_Dialect : Dialect {
15    let name = "xegpu";
16    let cppNamespace = "::mlir::xegpu";
17    let summary = "The XeGPU dialect that models Intel GPU's ISA";
18    let description = [{
19      The XeGPU dialect models Intel Xe ISA semantics but works at vector and
20      TensorDesc data type. It provides 1:1 mappings to match Xe instructions
21      like DPAS and 2D block load. The matrix size being processed at this level
22      exactly matches the hardware instructions or the intrinsic supported by
23      the lower-level GPU compiler.
24    }];
25
26    let dependentDialects = ["arith::ArithDialect"];
27
28    let useDefaultTypePrinterParser = true;
29    let useDefaultAttributePrinterParser = true;
30}
31
32#endif // MLIR_DIALECT_XEGPU_IR_XEGPUDIALECT_TD
33