blob: 6a1021a22ec544301e2ad3c64dff3cf944ae7d63 [file] [log] [blame]
// RUN: mlir-opt %s -split-input-file -verify-diagnostics
// -----
func @rowheight() {
// expected-error@+1 {{'amx.tile_zero' op bad row height: 17}}
%0 = amx.tile_zero : vector<17x16xbf16>
}
// -----
func @colwidth() {
// expected-error@+1 {{'amx.tile_zero' op bad column width: 65}}
%0 = amx.tile_zero : vector<16x65xi8>
}
// -----
func @col4bytemultiple() {
// expected-error@+1 {{'amx.tile_zero' op bad column width: 5}}
%0 = amx.tile_zero : vector<16x5xi8>
}
// -----
func @memtilesize(%arg0: memref<?x?xf32>) {
%0 = arith.constant 0 : index
// expected-error@+1 {{'amx.tile_load' op bad column width: 68}}
%1 = amx.tile_load %arg0[%0, %0] : memref<?x?xf32> into vector<16x17xf32>
}
// -----
func @memindexsize(%arg0: memref<?x?xf32>) {
%0 = arith.constant 0 : index
// expected-error@+1 {{'amx.tile_load' op requires 2 indices}}
%1 = amx.tile_load %arg0[%0] : memref<?x?xf32> into vector<16x16xf32>
}
// -----
func @multsize() {
%0 = amx.tile_zero : vector<8x8xbf16>
%1 = amx.tile_zero : vector<8x8xbf16>
%2 = amx.tile_zero : vector<4x4xf32>
// expected-error@+1 {{'amx.tile_mulf' op bad mult shape: 4 x 4 x 4}}
%3 = amx.tile_mulf %0, %1, %2 : vector<8x8xbf16>, vector<8x8xbf16>, vector<4x4xf32>
}