MLIR 22.0.0git
XeGPUTransformOps.cpp File Reference
#include "mlir/Dialect/XeGPU/TransformOps/XeGPUTransformOps.h"
#include "mlir/Dialect/SCF/IR/SCF.h"
#include "mlir/Dialect/XeGPU/IR/XeGPU.h"
#include "mlir/Dialect/XeGPU/Utils/XeGPUUtils.h"
#include <optional>
#include "mlir/Dialect/XeGPU/TransformOps/XeGPUTransformOps.cpp.inc"

Go to the source code of this file.

Macros

#define GET_OP_LIST
#define GET_OP_CLASSES

Functions

static DiagnosedSilenceableFailure convertMixedValuesToInt (transform::TransformState &state, TransformOpInterface transformOp, SmallVectorImpl< int32_t > &result, ArrayRef< OpFoldResult > ofrs)
 Assuming that ofr is an index attr or a param of index type or a transform dialect handle mapped to exactly one op with one index result, get that value and cast it to int type.
static xegpu::LayoutAttr createLayoutAttr (MLIRContext *ctx, ArrayRef< int32_t > sgLayout, ArrayRef< int32_t > sgData, std::optional< ArrayRef< int32_t > > instData)
 Create a layout attribute from the given parameters.
static xegpu::CreateNdDescOp setDescLayout (transform::TransformRewriter &rewriter, xegpu::CreateNdDescOp descOp, xegpu::LayoutAttr layout)
 Replace xegpu.create_nd_desc op with a new one with the given layout.

Macro Definition Documentation

◆ GET_OP_CLASSES

#define GET_OP_CLASSES

Definition at line 220 of file XeGPUTransformOps.cpp.

◆ GET_OP_LIST

#define GET_OP_LIST

Function Documentation

◆ convertMixedValuesToInt()

DiagnosedSilenceableFailure convertMixedValuesToInt ( transform::TransformState & state,
TransformOpInterface transformOp,
SmallVectorImpl< int32_t > & result,
ArrayRef< OpFoldResult > ofrs )
static

Assuming that ofr is an index attr or a param of index type or a transform dialect handle mapped to exactly one op with one index result, get that value and cast it to int type.

Definition at line 22 of file XeGPUTransformOps.cpp.

References diag(), mlir::Operation::getLoc(), mlir::Value::getLoc(), mlir::Operation::getNumResults(), mlir::transform::TransformState::getParams(), mlir::transform::TransformState::getPayloadOps(), mlir::Operation::getResult(), mlir::Value::getType(), mlir::Type::isIndex(), mlir::m_Constant(), mlir::matchPattern(), result, and mlir::DiagnosedSilenceableFailure::success().

◆ createLayoutAttr()

xegpu::LayoutAttr createLayoutAttr ( MLIRContext * ctx,
ArrayRef< int32_t > sgLayout,
ArrayRef< int32_t > sgData,
std::optional< ArrayRef< int32_t > > instData )
static

Create a layout attribute from the given parameters.

Definition at line 81 of file XeGPUTransformOps.cpp.

References mlir::detail::DenseArrayAttrImpl< int32_t >::get().

◆ setDescLayout()

xegpu::CreateNdDescOp setDescLayout ( transform::TransformRewriter & rewriter,
xegpu::CreateNdDescOp descOp,
xegpu::LayoutAttr layout )
static

Replace xegpu.create_nd_desc op with a new one with the given layout.

Definition at line 95 of file XeGPUTransformOps.cpp.

References mlir::RewriterBase::replaceOpWithNewOp(), and mlir::OpBuilder::setInsertionPointAfter().