<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/112716>112716</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[mlir]Why does the following error occur when using -pass-pipeline="builtin.module(func.func(tosa-to-linalg))" to lower tosa.mul?
</td>
</tr>
<tr>
<th>Labels</th>
<td>
mlir
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
loratadineH
</td>
</tr>
</table>
<pre>
### environments
Ubuntu 22.04 / LLVM-19.1.0-Linux-X64
commit id:a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4
### bash command:
`mlir-opt -pass-pipeline="builtin.module(func.func(tosa-to-linalg))" ../input/input.mlir -o ../output/res.mlir`
### test case:
`func.func @test_mul(%arg0: tensor<13x21x3xf32>, %arg1: tensor<13x1x3xf32>) -> tensor<13x21x3xf32> {
%0 = tosa.mul %arg0, %arg1 {shift = 1 : i8} : (tensor<13x21x3xf32>, tensor<13x1x3xf32>) -> tensor<13x21x3xf32>
return %0 : tensor<13x21x3xf32>
}`
### error:
`/home/workdir/input/input.mlir:2:8: error: failed to legalize operation 'tosa.mul'
%0 = tosa.mul %arg0, %arg1 {shift = 1 : i8} : (tensor<13x21x3xf32>, tensor<13x1x3xf32>) -> tensor<13x21x3xf32>
^
/home/workdir/input/manual_input.mlir:2:8: note: see current operation: %0 = "tosa.mul"(%arg0, %arg1) <{shift = 1 : i8}> : (tensor<13x21x3xf32>, tensor<13x1x3xf32>) -> tensor<13x21x3xf32>
`
But this pass works fine for following input file(change {shift = 1 : i8} to {shift = 0 : i8}):
`func.func @test_mul(%arg0: tensor<13x21x3xf32>, %arg1: tensor<13x1x3xf32>) -> tensor<13x21x3xf32> {
%0 = tosa.mul %arg0, %arg1 {shift = 0 : i8} : (tensor<13x21x3xf32>, tensor<13x1x3xf32>) -> tensor<13x21x3xf32>
return %0 : tensor<13x21x3xf32>
}`
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzclctu6zYQhp9mvBlIEIe6WAstnDhGF-myl90BJVEWW4o0eEly-vQFZTt2g5MuihZoawii4RkOf378PRTeq6ORsoPqAar9RsQwW9dp60QQozLyu01vx68dED8_KM2LctYs0gQPxR6K3Q99NCEiUV6UCHTA5-cfv89Ym7O8yJ6ViW_Zz3V5zh3ssqiAaoSnAzw8QrsTZT_Vw9gMU88EK4n1oqV-EO1YsKYv25bXQ1XJy_ybjl74GVM5YUbgu0u4LhatXGZPAbOT8D47qZPUykjgeyDqo9JBmXyxY9QSaDtFM-TpBbQN1oss2EwrI_QRqF0fQsxzoIMypxiuY55WQczsOWZjOAed9GsI6uIi6P79rj1IH3AQXt4Lf5eCUBYp48sSNdAWqBLuWADfYZDGWwf8kfE3Ym_8beIE_AnoEc9Z7GPWfVKLGfCnz4ogNA9nLZiKFQh8jwlJvkSNVxG3lVK-n9UU1kSGaWW1hWa_fks4Pxf71xRe1TkZojNXkZ9TOYNt9h8P42Zl59K82xEAHWa7SKDDq3W_jsp989yB7wj4bpvWvpbASSgtRwwWtTwKrX6TaE_SiaBsktpcSQI1_w3K6weqK8Y_IbMIE4X-8m1AxobkcvRS4hCdkybcwJz3cKEARDdIdGf8O3dTi8AfP2OyuvgfxfLBSg8xYJiVx9RqMJHxOCkjcbIOJ6u1fVXmiCsZnNTacYZZmKP8_FyD_WOsuNsftf-bhlH8uxvGZuz42PJWbGTHGmpZUxUF28xdK2TT1wMrCtY2dS-rqR_7lnFidV3W5bBRHRVUsoI1rCROLC_5dssqJoptX43T0EBZyEUonWv9suTWHTfK-yg7xqhh9UaLXmq_3sdE67-JKN3Mrkv5WR-PHspCKx_8rUJQQa93-Dqh2v80f8XRSo9hlndGXLsV2mGIDl9naTD69PPfdlOm7mdfpXu3AfDDJjrdzSGcfPIuHYAORxXm2OeDXYAOaQ-XITs5-4sc1m6bkHigw4XKS0e_BwAA__--z3_n">