Closed lethean1 closed 2 years ago
Thank you for your report!
Interesting, would you mind using the main branch? It might have hit some hidden bugs that unit tests aren't able to discover.
Also, the example code has just been updated to match the latest MLIR fashion, please check those out if that's possible.
Let me know if this would work. Thanks!
It seems that your latest commit of main branch doesn't provide llvm directory, and I want to know which version I should use. And the example code I used is as follows:
func @matmul() {
%A = memref.alloc() : memref<64x64xf32>
%B = memref.alloc() : memref<64x64xf32>
%C = memref.alloc() : memref<64x64xf32>
affine.for %i = 0 to 64 {
affine.for %j = 0 to 64 {
affine.for %k = 0 to 64 {
%0 = affine.load %A[%i, %k] : memref<64x64xf32>
%1 = affine.load %B[%k, %j] : memref<64x64xf32>
%2 = mulf %0, %1 : f32
%3 = affine.load %C[%i, %j] : memref<64x64xf32>
%4 = addf %2, %3 : f32
affine.store %4, %C[%i, %j] : memref<64x64xf32>
}
}
}
return
}
And mulf op still belongs to std dialect in the mlir version I used
You could find the LLVM version from the Polygeist repo at the point of this commit ID: https://github.com/kumasento/polymer/blob/e87c27c36b3d346612e505a1b5d7939e6b6aeb41/.github/workflows/buildAndTest.yml#L34-L40
from which I reach to: https://github.com/llvm/llvm-project/tree/40b9c39db15929b2b70762b68ecc6c16721f9fb1
I installed pact branch of polymer and passed check-polymer, but met this error when running the matmul.mlir example:
And any help on how to run this correctly is appreciated. Thanks