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

    <tr>
        <th>Summary</th>
        <td>
            [mlir] Convert-vector-to-scf crashed due to unregistered dialect
        </td>
    </tr>

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

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

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

<pre>
    MLIR built at commit https://github.com/llvm/llvm-project/commit/97a1c98f
Reproduced with: 
` mlir-opt --convert-vector-to-scf temp.mlir`

temp.mlir:
``` milr 
func.func @func(%arg: tensor<f32>) -> vector<1xf32> {
    %f0 = arith.constant 0.0 : f32
    %0 = vector.transfer_read %arg[], %f0 {permutation_map = affine_map<()->(0)>} :
      tensor<f32>, vector<1xf32> 
    return %0: vector<1xf32>

```
 
trace:
```console 
LLVM ERROR: Building op `tensor.extract` but it isn't registered in this MLIRContext: the dialect may not be loaded or this operation isn't registered by the dialect. See also https://mlir.llvm.org/getting_started/Faq/#registered-loaded-dependent-whats-up-with-dialects-management
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.      Program arguments: mlir-opt --convert-vector-to-scf temp.mlir
Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to point to it):
0  mlir-opt 0x00000001010238c4 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 56
1  mlir-opt                 0x000000010102292c llvm::sys::RunSignalHandlers() + 112
2  mlir-opt 0x0000000101023f5c SignalHandler(int) + 344
3  libsystem_platform.dylib 0x00000001aad414c4 _sigtramp + 56
4  libsystem_pthread.dylib 0x00000001aad29ee0 pthread_kill + 288
5  libsystem_c.dylib 0x00000001aac64340 abort + 168
6  mlir-opt 0x0000000100fea318 llvm::report_fatal_error(llvm::Twine const&, bool) + 468
7  mlir-opt                 0x00000001020d5eb8 mlir::tensor::ExtractOp mlir::OpBuilder::create<mlir::tensor::ExtractOp, mlir::detail::TypedValue<mlir::ShapedType>, mlir::OperandRange>(mlir::Location, mlir::detail::TypedValue<mlir::ShapedType>&&, mlir::OperandRange&&) + 480
8  mlir-opt                 0x00000001020d5bc4 TransferOpReduceRank::matchAndRewrite(mlir::vector::TransferReadOp, mlir::PatternRewriter&) const + 836
9  mlir-opt 0x000000010293f53c mlir::PatternApplicator::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&, llvm::function_ref<bool (mlir::Pattern const&)>, llvm::function_ref<void (mlir::Pattern const&)>, llvm::function_ref<mlir::LogicalResult (mlir::Pattern const&)>) + 1420
10 mlir-opt                 0x00000001026eea08 mlir::applyPatternsAndFoldGreedily(llvm::MutableArrayRef<mlir::Region>, mlir::FrozenRewritePatternSet const&, mlir::GreedyRewriteConfig) + 3976
11 mlir-opt                 0x00000001023cd0ec (anonymous namespace)::ConvertVectorToSCFPass::runOnOperation() + 324
12 mlir-opt 0x000000010269f518 mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int) + 428
13 mlir-opt 0x000000010269fa48 mlir::detail::OpToOpPassAdaptor::runPipeline(mlir::OpPassManager&, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int, mlir::PassInstrumentor*, mlir::PassInstrumentation::PipelineParentInfo const*) + 320
14 mlir-opt                 0x00000001026a13c4 mlir::PassManager::run(mlir::Operation*) + 1148
15 mlir-opt 0x000000010269a788 performActions(llvm::raw_ostream&, bool, bool, std::__1::shared_ptr<llvm::SourceMgr> const&, mlir::MLIRContext*, llvm::function_ref<mlir::LogicalResult (mlir::PassManager&)>, bool, bool) + 504
16 mlir-opt                 0x000000010269a358 mlir::LogicalResult llvm::function_ref<mlir::LogicalResult (std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>::callback_fn<mlir::MlirOptMain(llvm::raw_ostream&, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::function_ref<mlir::LogicalResult (mlir::PassManager&)>, mlir::DialectRegistry&, bool, bool, bool, bool, bool, bool, bool)::$_0>(long, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&) + 704
17 mlir-opt                 0x000000010270504c mlir::splitAndProcessBuffer(std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::function_ref<mlir::LogicalResult (std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>, llvm::raw_ostream&, bool, bool) + 656
18 mlir-opt 0x0000000102698780 mlir::MlirOptMain(llvm::raw_ostream&, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::function_ref<mlir::LogicalResult (mlir::PassManager&)>, mlir::DialectRegistry&, bool, bool, bool, bool, bool, bool, bool) + 216
19 mlir-opt                 0x0000000102698c74 mlir::MlirOptMain(int, char**, llvm::StringRef, mlir::DialectRegistry&, bool) + 1208
20 mlir-opt 0x0000000100ec5cf0 main + 108
21 dyld 0x0000000105d59088 start + 516

```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsWctu4zjWfhpmQ9iQKMmWFlk4TvJ3AQkSOEEB_2wMijyyOUWRapJKyv30A1KS7-5yd80AhcEYQWSbh9-5X0hTa8VKAdyi7A5l9ze0dWttbudaSt1o41ob3ZSab26fn74scNkK6TB1mOm6Fg6vnWssSmaIPCLyuBJu3ZZjpmtEHqX8GB6jxuh_AnOIPHb7EHkspjRmRV6h6B5FswU0RvOWAcefwq1RMsPdAppEuJbCjHTj8GjEtPoA40YfwJw2I6dHllXYQd2MPRWaRP228H_3fTLbwnV_uBbS9DyqVrGx_4dRGvknIjkiGTUrL4cDZbVBybxKCEoeECnwCCUPuBMBJfP4e7eC0fSuA8QYY0SyKsIoucfUCLceM62so8rhaOy_nmG_aZ-6I-5Qx85QZSswSwOU416Y4CBE5gP29K4BU7eOOqHVsqZNx66qhAL_ESXzoEkxCnLnESKFfze9x1uD4PA60XF-Tr3tBgOuNSoI7TU5Ie1t7fkcWr2H6L1jKINTz3hDaQk90dPT12f8sFi8LDynu1ZILtQK6wajSdSJPYbvHsp5r5atw8JhYRUiU4cNrIR1YIBjobBbC4t9GM-1cvDdBe-uAXNBJTCHa7rBSjtcApaacuBYm26TbsAEK59DLjf7KGP8BoCptPooOXwcjn02jLVZ-WQB54RaLa2jxgFH5PGR_h5Ikx34qBNkxKEBxUG50eeaOjtqm5HPk1HP1I5qqugKalCus9vr08Ps7QHbtvRpSnHZrrABn9DYHUt2RdoKa1uwiDxiqrwtmWw5BLWZoXaNS8q-BX-OO_ZvjrJvmLd1s3VwNEZR8Wr0ytAaU7NqvbBeiL-S30fgoVjo1mG7qUstsaI1WIxIDsq2BvBGt3hNPwAHdToi8QcYHw0b3Rr8Onv_zXvZggvagPoQRisvGv6gxgeZj8Dl2_8_3708ffnHw2Lpt_hQcxo3WqhgT1_Rip2meKdS9D3qXnEURyTJWRpk8bTJzG5s9-bVCOWCWu8hKUi-IzL0c6mtM0BrRCY-NYXy7DAidzibdCzjPZbHr0MRSEHYOREWrXoTK0Xlb1RxCcZ2pSNwieO-VJHLmlUZwwcAiOR7giZp2kEkGEtR2o11UC8bSV2lTT3mGynKPUhKeRqnLMVLK1bO0Lo5UDc9AHFrXyXPYZACIMI9wfKbkDLAkDzvcLJ9HHYGgU3SJI0wLX3iBFNM-q2T86aIKqBJnO9ZuMu6ZUUdlUswRpsD975_CgU4dIfevaXWcjBbOrCbXudgEvEMyhwPTS-ZDaXdv3_oCuVLs7f-0oSiCv1HZoA6QMn8Bwhe0B0JB0eF7BXaNMC_UtkeorytaQPcL_YNZl8EMFTxBVWrbjHfrT1pFgrvz_Kb9Ma9wLVf742e940qv97oJUvxe9-0X5oF-FlmQdW3jldNHVvPFF_ApxEODjQcumfQpUdYAOXHNn6lzoFRPYTp5Q2BE6TOkz45ivORSYqkyhJ2ijhrGikY3QrxZ8K-DI0QkdmPxZvvpYGfq8KcYqBCydwHOT6A7gH2UqHoI-UiyIcW_KdB9mNtJRiVC7CtdNfh9vUxJX3ExNF1ETMBoNF-mtKmkZuei50p_qgl_z8DwIXcHNSL59bRUsLMGLpZHCmwgJV3zXF-PRr9Bwye6Xm8gTsoOjvqwHXTU8-1qsRqW8SL6dBv4uv0TBiPgHlbUqXVptat7Zp0E9pc0bGcd13_a8iEd_02f3yltu9LplUvai_stk0pIX1Hicn5eJ8UVRbnF6rGS_OuXxrPZsZps41906ojv1t7EuqXk2CmqNxYYZ_DNGZ21XyOWxXOWXy_e6ekr-5xclEFmv51FV5FA1Ko49T1pFvJzlXDn9PpsBpY-0VZZ8KU51veSbnYJ-g4dwu97K_UgHJfVKWHOJ3tPD9kW3plttE4YekR90Gfs34_NMcwBaWDu7JL7qLTPMcNGD_UzEKVsT8Y5gZbDk_reEe6XMb9iLamBviycf6ItYN6061h8Lwy_mx2PpX3zzqdA362Ch4G0FBbD3XoJ9NoSM_JlU4qaJLtx_qhIH9H8lNbtkr83sKJLZ-h1mZz11ZVF-CnGzlUtJVuyUFCmI8ubE4eTvrNsc-D1bphi0rpT07LSh0o8iyFeWncMxXqB9Hza2j474ylHcV9d7ZdhMOw2VzIl-uefaNBJF1G3YgptVr9OhY8iZGQQ9NtDk2vy6FplEXp_ohnGyncTPFXoxlYO0j_i2TGf0Um_ynF-do42R7b80uNJJ_mEf5fRfgPVoTuJiAePFFc26VyNk0veqYfhNiadiPPUdN9c0aolR_br9arnz1I1M8eJDp_7wAsY1WEaypUt2O7IcZ8I_k-ccazIspzHK4eu2492OHoMvaG3ya8SAp6A7fxZJomaT7Nkpv1bZrHlFRpETHOaMam07zkRQQ5KWiaThi9EbckIkkUExJFGUmSMScsi8sqjSOaQplOUBpBTYXc3onehEvG20kUF9MbSUuQNvwoQYiCTxwWESEou78xt-E-r2xXFqWRFNbZHYoTToZfM4J9s3s8P3unGO4tgWPeAnYat2rvRre_Vb1pjbz9-1elQZF_BQAA__9gY7jL">