<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/67760>67760</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [mlir][TOSA] --tosa-validate crashed with assertion failure "cannot query rank of unranked shaped type"
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            mlir
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          anonymousMCS
      </td>
    </tr>
</table>

<pre>
    git version: 8c1270740f6bf659e5fbf556c1145ddaa7aa5366

system: Ubuntu 20.04.6 LTS (Focal Fossa)

reproduced with: mlir-opt --tosa-validate a.mlir

a.mlir:

```
func.func @func2()  {
  %56 = tensor.empty() : tensor<25xi1>
  %82 = tosa.slice %56 {size = array<i64>, start = array<i64>} : (tensor<25xi1>) -> tensor<*xi1>
  return 
}
// Crash will disappear when func.func removed
```

trace:

```
mlir-opt: /data/bin/llvm-project/build/tools/mlir/include/mlir/IR/BuiltinTypeInterfaces.h.inc:156: int64_t mlir::ShapedType::getRank() const: Assertion `(*this).hasRank() && "cannot query rank of unranked shaped type"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
 #0 0x000055d5cfd14d4f llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/data/bin/llvm-project/build/bin/mlir-opt+0x157cd4f)
 #1 0x000055d5cfd11de4 SignalHandler(int) Signals.cpp:0:0
 #2 0x00007fd5a1fd3420 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x14420)
 #3 0x00007fd5a1abe00b raise (/lib/x86_64-linux-gnu/libc.so.6+0x4300b)
 #4 0x00007fd5a1a9d859 abort (/lib/x86_64-linux-gnu/libc.so.6+0x22859)
 #5 0x00007fd5a1a9d729 (/lib/x86_64-linux-gnu/libc.so.6+0x22729)
 #6 0x00007fd5a1aaefd6 (/lib/x86_64-linux-gnu/libc.so.6+0x33fd6)
 #7 0x000055d5d1a48907 (anonymous namespace)::TosaValidation::levelCheckRank(mlir::Operation*, mlir::Value const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) (.isra.0) TosaValidation.cpp:0:0
 #8 0x000055d5d1a4da01 bool (anonymous namespace)::TosaValidation::levelCheckRanksFor<mlir::tosa::SliceOp>(mlir::Operation*) TosaValidation.cpp:0:0
 #9 0x000055d5d1a50b00 (anonymous namespace)::TosaValidation::levelCheckRanks(mlir::Operation*) TosaValidation.cpp:0:0
#10 0x000055d5d1a531d3 (anonymous namespace)::TosaValidation::applyLevelCheck(mlir::Operation*) TosaValidation.cpp:0:0
#11 0x000055d5d1a54067 void llvm::function_ref<void (mlir::Operation*)>::callback_fn<(anonymous namespace)::TosaValidation::runOnOperation()::'lambda'(mlir::Operation*)>(long, mlir::Operation*) TosaValidation.cpp:0:0
#12 0x000055d5d1a55d65 (anonymous namespace)::TosaValidation::runOnOperation() TosaValidation.cpp:0:0
#13 0x000055d5d2747e8e mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int) (/data/bin/llvm-project/build/bin/mlir-opt+0x3fafe8e)
#14 0x000055d5d274836a mlir::detail::OpToOpPassAdaptor::runPipeline(mlir::OpPassManager&, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int, mlir::PassInstrumentor*, mlir::PassInstrumentation::PipelineParentInfo const*) (/data/bin/llvm-project/build/bin/mlir-opt+0x3fb036a)
#15 0x000055d5d2748d6c mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::'lambda'(mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo&)::operator()(mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo&) const Pass.cpp:0:0
#16 0x000055d5d2748f5f std::_Function_handler<void (), mlir::LogicalResult mlir::failableParallelForEach<__gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::'lambda'(mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo&)&>(mlir::MLIRContext*, __gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, __gnu_cxx::__normal_iterator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo*, std::vector<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo, std::allocator<mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo>>>, mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::'lambda'(mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo&)&)::'lambda'()>::_M_invoke(std::_Any_data const&) Pass.cpp:0:0
#17 0x000055d5d273c762 std::_Function_handler<void (), llvm::ThreadPool::createTaskAndFuture(std::function<void ()>)::'lambda'()>::_M_invoke(std::_Any_data const&) (/data/bin/llvm-project/build/bin/mlir-opt+0x3fa4762)
#18 0x000055d5d55ca298 llvm::ThreadPool::processTasks(llvm::ThreadPoolTaskGroup*) (/data/bin/llvm-project/build/bin/mlir-opt+0x6e32298)
#19 0x000055d5d55cb0d9 void* llvm::thread::ThreadProxy<std::tuple<llvm::ThreadPool::grow(int)::'lambda'()>>(void*) ThreadPool.cpp:0:0
#20 0x00007fd5a1fc7609 start_thread (/lib/x86_64-linux-gnu/libpthread.so.0+0x8609)
#21 0x00007fd5a1b9a133 __clone (/lib/x86_64-linux-gnu/libc.so.6+0x11f133)
Aborted (core dumped)
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsWV1z4yrS_jXkhooLgT4vcqE48fumaqaSmmTPrQoJZLPBoAWUiffXb4FkW_Ikc5JJztmqramacWwB3U8_3dBNi1or1orzC5BcguTqjPZuo80FVVrttrq3X5f3Z7Vmu4u1cPCJGyu0AqSEeRPhDGUxatO6TZOCJ23dJknaRFGcMEZpRmlC0hSgK4DK4dPurONbv_ofda9cDzFaoHiRwi8P9xDgfKUbKuFKW0sBLqYrDe-MZn3DGfwu3MaL2EphznXn4Pm505aeP1EpGHUc0oUfmq4en5By-hCkaPwXfra9ahb-A4IY-b8Y4BzgAkKQXQ5TIAQ4SVIIyBV0XFltFnzbud040YMaHgOyxMmziAC5nqzM8bBSW7qwUjR8Ly67tOLfPAxSY-gOkKVIY78YL6F11LiXxrKroBHg_EeluIDngFwf4QBczvEY7nqj4EhFdjV-wSuAV3BpqN3A70JKyISlXcepgd83XMEjS4Zv9RNnL3I5fDpDG_5z0vc-HAxZMeoowKtaKIBXUj5tzzuj_8kb5x_2QjKAV05raQFeBY_ilVCN7Bk_Prj5BvDqshfSCfWw6_iNcty0tOF2sVkI1QBSRknqFQrl0rhycB8bpLzf0I4zv2r4vebuG1WPo38brWxAWlrLjRNaQW-IHyzdRliAi8WG2skKgFOAUwgwbqhS2sF_9dzsoKHqEeoW9sp_4wzaoBc6rxhjgDPYUiE5Wwws3X25Lu-voe3rrXCQwrpfQ8M7bRx0Gm6c66zHG3y3Fm7T14tGb0cKf2RSWNtzTyGkisGRQOg2HDbB7zVtHoPvRvUQYIIgekYIoSRhSdOyKGZxC4P4QJTd2eHLnRHK3TvaPD4E7-P8OMnQ75W2znC6DcQsvQcGmvI3On8YPEQNvkTPUZI1LG4P54VHG52gjRiP4b1YKyr_nyomuQE4H5UPj-2i6TpAShT-HwThUVDWsoRGLSMxRrCqDLdOG175jRmwS1EDvHrO0yqNz6VQ_fP5WvXDQOc2hlO2sHqBBsRxjNEML5mpoTVHqIaGCsvfIL_xktMgOSYI1TPJ8VxywfKkgLTWb0I-kYxxnhQzycmp5OzgyTfLzPBcZjqXSXnL0vfJJKRl6UxmNokFFtE4L1DmZR4SHFR0y20XorUYIvVBW_rHkE6GbAdIKfkTl8sNbx7HDX48Nm47boaZuPRhfRz5g8qejwfHEPLWsWGoqprn5ygaftTUiqayzgi1BmTZbKiZTfYPKmeocHY_vM8O4wwqpW6oC4f9fpxcT1QH5yyENdSHYQHnNr4c_vkJd4yiCNZay48TaFcB6pEqnxbHU9jnxtsuWPgqy28zoJgbkKAaoU_A_iFc_nxCJ7hIxMiv4KJdJ3dfDuA-jCs6wRWjNINPWrDJWe-zv5dQGd4CsgyjP1McIjEEMZXS55aqVaEiebe1ple3aiI9P8wGOJN0WzMKcPZnWHAutVrP9-mvcIVPuEpYmvyKD1-y6k0AyBQAzuKM53xiE-OOCrm370HfdnfU2pLRLpwSo-oZW37CD2fY66dbqajcWWG_UkXXPJxY_nDwf3sVbhXsU1I8aWnLc368EmASxSfG5ySl7zb-TnRcCsVPQsZPPdiUfjob00Ve1Y2yzvRbrjy0U6nzCZOw2WO_o4Yrd6NavT_sy08gvEYkpTPCk1PCWdq8m_BJoJd2p5qbbScBzgee_mwvf56K2-7uq2dsSIzDMx1WeQ-EY-XvUDw4DHphL-_w9JTzNmknFcRqfxJvxqL2eBoHE6Zx9EWvRUPlN257Ob3y-IsGraUPIyollyttrmmzAWRZVWvV-yJlX68obbZUVsKNRE2z919BUTkrcJ5483cofaWk-kuVhlJtLOj-N3YUTk-rt69fbr4ttXL82Y2e_R1f_434-s367139gV39ivJpmV99rYR60o--qjrmqlLtKl-NzG6kr2e-bJ75SJOl-F2Z73hfeQjtlztv13ANMZw6_kDtY6nYqne9mSHdX29ORIam6mfa_tGKOM5SPCvQZpf1JGkoLvKf0NAZ3XBrPQ921qY7TvRj_2d0331GTZlygnGRzyAXJ5BrxIpw3QS4nEAfGmgzdEY_7wBZHjh2fSc5IMvX7V0b_f3Q9fupI33iGkGEq9hB0IuhitG8R9hkKSqGrn01AP-VHmGeomJKFY5mWuqCRoTAqmqkVu9sEkZRGxFyEF7W2jgeQDbacMj6bcfZUfe-YX_GLggrSEHP-EWUFkmRZBHBZ5uLlrV1RnmCUJGkOMcZISxlWeFDlMR5ciYuMMIEFbhAJMJRtKAsa9uIJ2mWtCglLYgR31IhF957C23WZ6FFfZFmWYrOJK25tOH1FMZDkx-D5OrMXITgq_u1BTGSwjp7FOCEk-GVVliQXIHk8uH2vgTJ1Q-vi0LTe3yvBOmhte8L497w9zbvz3ojL369JR9M_k8AAAD__3PZb5s">