|
MLIR 22.0.0git
|
#include "mlir/Dialect/ArmSME/IR/ArmSMEEnums.h"#include "mlir/Dialect/ArmSME/IR/ArmSMEOpInterfaces.h"#include "mlir/Dialect/SCF/IR/SCF.h"#include "mlir/IR/BuiltinTypes.h"#include "mlir/Interfaces/FunctionInterfaces.h"#include <optional>Go to the source code of this file.
Namespaces | |
| namespace | mlir |
| Include the generated interface declarations. | |
| namespace | mlir::arm_sme |
Functions | |
| unsigned | mlir::arm_sme::getSizeInBytes (TypeSize type) |
| Return the size represented by arm_sme::TypeSize in bytes. | |
| unsigned | mlir::arm_sme::getSMETileSliceMinNumElts (Type type) |
| Return minimum number of elements for the given element type in a vector of SVL bits. | |
| bool | mlir::arm_sme::isValidSMETileElementType (Type type) |
| Returns true if type is a valid element type for an SME tile or false otherwise. | |
| bool | mlir::arm_sme::isValidSMETileVectorType (VectorType vType) |
| Returns true if vType is a valid vector type for an SME tile or false otherwise. | |
| bool | mlir::arm_sme::isValidSMETileVectorType (Type type) |
| std::optional< ArmSMETileType > | mlir::arm_sme::getSMETileType (VectorType) |
| Returns the type of SME tile this vector type corresponds to, or none if the vector type does not fit within an SME tile. | |
| LogicalResult | mlir::arm_sme::verifyOperationHasValidTileId (Operation *) |
| Verifies the tile ID (if set) on this tile operation is valid. | |
| scf::ForOp | mlir::arm_sme::createLoopOverTileSlices (PatternRewriter &rewriter, Location loc, Value initTile, std::function< Value(OpBuilder &, Location, Value, Value)> makeLoopBody) |
| Generates a for loop over ZA tile slices where the induction variable is the tile slice index and each iteration yields a new tile. | |
| bool | mlir::arm_sme::isMultipleOfSMETileVectorType (VectorType vType) |
| Returns true if vType is a multiple of an SME tile size. | |
| VectorType | mlir::arm_sme::getSMETileTypeForElement (Type elementType) |
| Creates a vector type for the SME tile of elementType. | |
| void | mlir::arm_sme::eraseTriviallyDeadTileOps (IRRewriter &rewriter, FunctionOpInterface function) |
| Erase trivially dead tile ops from a function. | |
| bool | mlir::arm_sme::isTriviallyCloneableTileOp (arm_sme::ArmSMETileOpInterface tileOp) |
| Returns true if tileOp is trivially cloneable. | |
| bool | mlir::arm_sme::hasTileResult (arm_sme::ArmSMETileOpInterface tileOp) |
| Returns true if tileOp produces a tile result. | |
| OpOperand * | mlir::arm_sme::getTileOpOperand (arm_sme::ArmSMETileOpInterface tileOp) |
| Returns the tile OpOperand for this tileOp (or null). | |
| bool | mlir::arm_sme::isTileTypeGreaterOrEqual (ArmSMETileType typeA, ArmSMETileType typeB) |
| Returns true typeA is >= (in terms of bytes) than typeB. | |
Variables | |
| constexpr unsigned | mlir::arm_sme::MinStreamingVectorLengthInBits = 128 |