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

    <tr>
        <th>Summary</th>
        <td>
            [MLIR] crashed on a empty func: Assertion `map && "uninitialized map storage"'
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

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

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

<pre>
    Test on commit: https://github.com/llvm/llvm-project/commit/029313cc979ae71877b65794b1063d4e51184cc8

steps to reproduce:
```
mlir-opt -affine-super-vectorizer-test -compose-maps test.mlir
```
test case:
```
module {
  func.func @main() {
    return
  }
}
```
crash trace:
```
mlir-opt: /home/ty/llvm-project/mlir/lib/IR/AffineMap.cpp:333: llvm::ArrayRef<mlir::AffineExpr> mlir::AffineMap::getResults() const: Assertion `map && "uninitialized map storage"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.      Program arguments: /home/ty/llvm-project/build/bin/mlir-opt -affine-super-vectorizer-test -compose-maps test.mlir
 #0 0x0000564b15e2060a llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/ty/llvm-project/build/bin/mlir-opt+0x22460a)
 #1 0x0000564b15e1d89c SignalHandler(int) Signals.cpp:0:0
 #2 0x00007fc83b422980 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x12980)
 #3 0x00007fc83a51ae87 raise /build/glibc-CVJwZb/glibc-2.27/signal/../sysdeps/unix/sysv/linux/raise.c:51:0
 #4 0x00007fc83a51c7f1 abort /build/glibc-CVJwZb/glibc-2.27/stdlib/abort.c:81:0
 #5 0x00007fc83a50c3fa __assert_fail_base /build/glibc-CVJwZb/glibc-2.27/assert/assert.c:89:0
 #6 0x00007fc83a50c472 (/lib/x86_64-linux-gnu/libc.so.6+0x30472)
 #7 0x0000564b15dd9877 (/home/ty/llvm-project/build/bin/mlir-opt+0x1dd877)
 #8 0x0000564b177bdf51 mlir::simplifyAffineMap(mlir::AffineMap) (/home/ty/llvm-project/build/bin/mlir-opt+0x1bc1f51)
 #9 0x0000564b1733af08 (anonymous namespace)::VectorizerTestPass::runOnOperation() (.part.261) TestVectorizationUtils.cpp:0:0
#10 0x0000564b1733d0ab (anonymous namespace)::VectorizerTestPass::runOnOperation() TestVectorizationUtils.cpp:0:0
#11 0x0000564b176ee269 mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int) (/home/ty/llvm-project/build/bin/mlir-opt+0x1af2269)
#12 0x0000564b176ee58a mlir::detail::OpToOpPassAdaptor::runPipeline(mlir::OpPassManager&, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int, mlir::PassInstrumentor*, mlir::PassInstrumentation::PipelineParentInfo const*) (/home/ty/llvm-project/build/bin/mlir-opt+0x1af258a)
#13 0x0000564b176ee908 mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::'lambda'(mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo&)::operator()(mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool)::OpPMInfo&) const Pass.cpp:0:0
#14 0x0000564b176eda45 mlir::detail::OpToOpPassAdaptor::runOnOperationAsyncImpl(bool) (/home/ty/llvm-project/build/bin/mlir-opt+0x1af1a45)
#15 0x0000564b176ee1da mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int) (/home/ty/llvm-project/build/bin/mlir-opt+0x1af21da)
#16 0x0000564b176ef0c3 mlir::detail::OpToOpPassAdaptor::runPipeline(mlir::OpPassManager&, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int, mlir::PassInstrumentor*, mlir::PassInstrumentation::PipelineParentInfo const*) (.constprop.495) Pass.cpp:0:0
#17 0x0000564b176ef7ad mlir::PassManager::run(mlir::Operation*) (/home/ty/llvm-project/build/bin/mlir-opt+0x1af37ad)
#18 0x0000564b176e26d3 performActions(llvm::raw_ostream&, std::shared_ptr<llvm::SourceMgr> const&, mlir::MLIRContext*, mlir::MlirOptMainConfig const&) MlirOptMain.cpp:0:0
#19 0x0000564b176e2e09 processBuffer(llvm::raw_ostream&, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, mlir::MlirOptMainConfig const&, mlir::DialectRegistry&, llvm::ThreadPool*) MlirOptMain.cpp:0:0
#20 0x0000564b176e3131 mlir::LogicalResult llvm::function_ref<mlir::LogicalResult (std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>::callback_fn<mlir::MlirOptMain(llvm::raw_ostream&, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, mlir::DialectRegistry&, mlir::MlirOptMainConfig const&)::'lambda'(std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>(long, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&) MlirOptMain.cpp:0:0
#21 0x0000564b177adf60 mlir::splitAndProcessBuffer(std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::function_ref<mlir::LogicalResult (std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>, llvm::raw_ostream&, bool, bool) (/home/ty/llvm-project/build/bin/mlir-opt+0x1bb1f60)
#22 0x0000564b176dfe13 mlir::MlirOptMain(llvm::raw_ostream&, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, mlir::DialectRegistry&, mlir::MlirOptMainConfig const&) (/home/ty/llvm-project/build/bin/mlir-opt+0x1ae3e13)
#23 0x0000564b176e3526 mlir::MlirOptMain(int, char**, llvm::StringRef, mlir::DialectRegistry&, bool) (/home/ty/llvm-project/build/bin/mlir-opt+0x1ae7526)
#24 0x0000564b15dec770 main (/home/ty/llvm-project/build/bin/mlir-opt+0x1f0770)
#25 0x00007fc83a4fdc87 __libc_start_main /build/glibc-CVJwZb/glibc-2.27/csu/../csu/libc-start.c:344:0
#26 0x0000564b15dff5ca _start (/home/ty/llvm-project/build/bin/mlir-opt+0x2035ca)
```

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsWV1z2yr6_zT4hrEHgSSkC1-4ST3__qeZZJLuuTg3HgTIZiuBFlAbn0-_A3IcSU3bZJPtnrOzM4ktBDy_5_e8mRfmnNprKdcgeweyywXr_cHY9TvJmt9ldzjaRWXEcf1JOg-Nhty0rfKAbODB-84BsgF4C_B2r_yhr1bctABvm-bLw9eys-bvknuAt6epeItwSRLCeUlLJmlSUFrlGS3TKkE5EanMkqRIOS8AugRoM3w6LzsHvYFWdtaInssAPQzI0ekvNttG2aXpPFyyulZaLl3fSbv8Irk3Vv0h7dIHLktu2s44uWxZECydX4WZT4qMEzhz38c0om8kBPTd0Iaw7jVfhQ8IUtQypQEuAC7HQyC00vdWP7QBvTwJPz9MUbhl7gC9ZT8nHxwE8PZgWgnw1h-_9UYki7eNqgDefrgFeLuJ5rpi3Yp3HSAbQkgQE51JNoBsNtay462sAbmIs4eXcdb7-84C8h7O31-xbmjupb-Vrm-8OxmCG-2imhvnpPXKaAhy1LIOApwDnEOAca-VVl6xRv0hBQx9zhvL9hJgDDCFNVONFKuB-s3H95u799D1Vas8ZLDq9yFYjPUhbF4crcq5XjqAt5BpAZXmTS8k9AcJBzdUjH-OrjjB33nGP0PRt93ZN2gFUHljzd6yFjK771upvfu5a6peNSJ8h6jZvkU8Q4AJgugeIYSyPK2STGKUIzZyrju64eHGKu0jm08x0nDxOMiyrzvjvJWsjV66gEr7GNbBqS_nBPA7dI9xmiMGcPmoazLVNRFFyeGd2mvW_B_TopEW4OIEPbx2p6BF8f8sCJ8E0ZoXpEoxLgsEdzsrQyDJnfUnzYc0uC_yXZ4uG6X7--Ve90NH5w9WMrFyZoWiwkmQMtGXjGFYljBZUGiZchKOuO8bVfHlxW____X36tzEK0wB3rrIAuDtahVaRydkF6Kv1-p-ePElaqP70IyiVxyQTZZMCaczTTitE8gqE5k-TxMvBmvEWRGkmIFkUxDESc3gbsdiJu9CVu4q9nzuw7zzwwBZTiHzOWRK8TN8x4PX8ug1glKKJ16jkygToiwofVUkJ0IUlE4wijEGpZWos2RUJZ1qu0bVx8dqiYunaugrUyypeFJnyUSzcqIZIaxGRQBh2uhja3oHNWul62INKAeFfjsXnbAeuGHuVDNsr6_1dSctC4X84acOF6uOWb_CeUCGYcqDgDjub149lbch_9FMOYFY9abKvUSZSTWiuZQ4L0c-FNIz1QzP190nc90F7I1gnTf2rMLEsVE5vAkF9PHlSMVZz0az5uiUu2Ka7UPtu4CVMU347nVcvom3KMQJqzHOy3OUBO54zj0r2Iu536hONkrLiQ2GoWdK-ZsbYzwpQH3Qztv4G2zsN1KnAwbkoeOk-w2zUvsPujanpUuQ8Hp7ZwWb2JvM7V2i4sX2HoX7xh01_9B2DcDFYKZTtgBMG9ZWgoFQg4t_B8R1d3MVDBade3pn4qzggJCGvwR48BcMwp7O73Rmc8HS7I1t_to4SViaTeIkm8dJIl6el3-RmpSIaY7kM-414uR_NWlSk1ax3VnTrdIyRM4Pwp_OzUmZmGnxwOvJwJma5dXuJpSJibuLmX44FwR20tbGthsegN1PNinOi9Ny68CsFLvOW0AuHmfcmd5yebWPW9iTJWe-v_r44fbCaC_v_Td-umqUve78FVP6wuha7UcySjjqfdr-5ZyfRCXsrOHSuXd9XcfNzrPo9Vr9o5ff0LuSrbHHB1Gj8ULWrG_8TshGevn9OeR9-Hs25_G4S8Uayf2t3Cvn7fHU_4jzKe6tbmKybJ5jLoxm5iIJGa-oP5q94qwZDhtGQHWvY6zs7OwAYzoB4OLXmfP7Ti3joNDDWdNUjH_e1Xqi9shOf8LweNrtz0yZJxcofxqv4KIxev9rDfsDlX6eMNPtC2WiztF4C9o1ym-0uJlVnP8Eu79gkv5wxOMy4E3WgVWV1Dka_zji2f5M1DIhT-fZf1uVeOU6QxKZkIkp51svkuH8u6Y8reb4gQ3rts00EO68VXp_K-vnEH6bPYKk2RCUZ0Lp9HxLckoRbJnSr0OqEaXTIJyeB6a14AWFu12jKr5znlm_O6E-6ziQu_7hHHR4jJ1RTjwaJGk6LXD5lGddZ5zBAfh1B9OIZHy09ZhetSzEmoiSlGwh10lOS4JSSsvFYU1RkglcyVQIiliWMZoIUVEuEUsqnlULtcYIE0QwQiXBWbmqeZ7RXOYFSQTO0xSkSLZMNaug68rY_SLeRqzzJCPpomGVbFy8r8NYy68wdgKMQXa5sOvIr-r3DqSoUc67Ryle-SZe9IXVLMguh6sMKaDRkEHZdv4YL65edy2z6G2z_tfvWyLJfwYAAP__2J_Ksg">