MLIR 24.0.0git
VectorToXeGPU.h
Go to the documentation of this file.
1//===- VectorToXeGPU.h - Convert vector to XeGPU dialect --------*- 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#ifndef MLIR_CONVERSION_VECTORTOXEGPU_VECTORTOXEGPU_H
10#define MLIR_CONVERSION_VECTORTOXEGPU_VECTORTOXEGPU_H
11
13
14namespace mlir {
15class Pass;
17
18#define GEN_PASS_DECL_CONVERTVECTORTOXEGPU
19#include "mlir/Conversion/Passes.h.inc"
20
21/// Collect a set of patterns to convert from the vector to XeGPU ops.
22void populateVectorToXeGPUConversionPatterns(RewritePatternSet &patterns);
23
24/// Collect a set of patterns that bring vector ops into a form the conversion
25/// patterns lower directly: gather/scatter ops flattened to 1-D operands are
26/// un-flattened back to N-D, and transfer_read broadcast permutation maps are
27/// replaced by a transfer of the data plus the vector ops that expand it.
28/// Apply these before the conversion patterns.
29void populateVectorToXeGPULegalizationPatterns(RewritePatternSet &patterns);
30} // namespace mlir
31
32#endif // MLIR_CONVERSION_VECTORTOXEGPU_VECTORTOXEGPU_H
The abstract base pass class.
Definition Pass.h:52
Include the generated interface declarations.
void populateVectorToXeGPULegalizationPatterns(RewritePatternSet &patterns)
Collect a set of patterns that bring vector ops into a form the conversion patterns lower directly: g...
void populateVectorToXeGPUConversionPatterns(RewritePatternSet &patterns)
Collect a set of patterns to convert from the vector to XeGPU ops.