microsoft / triton-shared

Shared Middle-Layer for Triton Compilation
MIT License
142 stars 27 forks source link

error: LoadOp expects a memref, not a memref of pointers #13

Open manbearian opened 9 months ago

manbearian commented 9 months ago

created from #7.

I'm unsure of the nature of this failure; further investigation is needed.

repros.zip

triton-shared-opt -triton-to-linalg 1.mlir triton-shared-opt -triton-to-linalg 40.mlir triton-shared-opt -triton-to-linalg 60.mlir triton-shared-opt -triton-to-linalg 71.mlir triton-shared-opt -triton-to-linalg 73.mlir

Error output:

+++/home/ianb/test/ttirs_linalg_failed/1.mlir
/home/ianb/test/ttirs_linalg_failed/1.mlir:33:11: error: LoadOp expects a memref, not a memref of pointers
    %22 = tt.load %21 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<1xf32>
          ^
/home/ianb/test/ttirs_linalg_failed/1.mlir:33:11: note: see current operation: %109 = "tt.load"(%108) <{cache = 1 : i32, evict = 3 : i32, isVolatile = false, operand_segment_sizes = array<i32: 1, 0, 0>}> : (tensor<1x!tt.ptr<f32, 1>>) -> tensor<1xf32>
/home/ianb/test/ttirs_linalg_failed/1.mlir:33:11: error: failed to legalize operation 'tt.load'
    %22 = tt.load %21 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<1xf32>
          ^
/home/ianb/test/ttirs_linalg_failed/1.mlir:33:11: note: see current operation: %109 = "tt.load"(%108) <{cache = 1 : i32, evict = 3 : i32, isVolatile = false, operand_segment_sizes = array<i32: 1, 0, 0>}> : (tensor<1x!tt.ptr<f32, 1>>) -> tensor<1xf32>