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

    <tr>
        <th>Summary</th>
        <td>
            [mlir] cananicalize pass crashed with segmentation fault
        </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>
    Reproduced at commit [fdbc55a5](https://github.com/llvm/llvm-project/commit/fdbc55a5)
` mlir-opt --canonicalize temp.mlir`

[temp.mlir.txt](https://github.com/llvm/llvm-project/files/9915414/temp.mlir.txt)


```
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 --canonicalize 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                 0x000000010223931c llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 56
1  mlir-opt                 0x0000000102238374 llvm::sys::RunSignalHandlers() + 112
2  mlir-opt                 0x00000001022399b4 SignalHandler(int) + 344
3  libsystem_platform.dylib 0x00000001a33254c4 _sigtramp + 56
4  mlir-opt                 0x00000001029ce100 std::__1::enable_if<!std::is_convertible<mlir::ValueRange&, mlir::Operation*>::value, void>::type mlir::ResultRange::replaceAllUsesWith<mlir::ValueRange&>(mlir::ValueRange&) + 96
5  mlir-opt                 0x000000010335e410 mlir::RewriterBase::replaceOp(mlir::Operation*, mlir::ValueRange) + 88
6  mlir-opt                 0x0000000102523a78 (anonymous namespace)::DeduplicateAndRemoveDeadOperandsAndResults::matchAndRewrite(mlir::linalg::GenericOp, mlir::PatternRewriter&) const + 7696
7  mlir-opt                 0x00000001034ca6b8 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&)>) + 1400
8  mlir-opt                 0x0000000103297214 mlir::applyPatternsAndFoldGreedily(llvm::MutableArrayRef<mlir::Region>, mlir::FrozenRewritePatternSet const&, mlir::GreedyRewriteConfig) + 3280
9  mlir-opt                 0x000000010324ac58 mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int) + 408
10 mlir-opt                 0x000000010324b1a0 mlir::detail::OpToOpPassAdaptor::runPipeline(mlir::OpPassManager&, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int, mlir::PassInstrumentor*, mlir::PassInstrumentation::PipelineParentInfo const*) + 320
11 mlir-opt                 0x000000010324c86c mlir::PassManager::run(mlir::Operation*) + 744
12 mlir-opt                 0x0000000103246164 performActions(llvm::raw_ostream&, bool, bool, llvm::SourceMgr&, mlir::MLIRContext*, llvm::function_ref<mlir::LogicalResult (mlir::PassManager&)>, bool, bool) + 504
13 mlir-opt                 0x0000000103245cd8 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&) + 672
14 mlir-opt                 0x00000001032aea34 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
15 mlir-opt                 0x0000000103244128 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
16 mlir-opt                 0x0000000103244610 mlir::MlirOptMain(int, char**, llvm::StringRef, mlir::DialectRegistry&, bool) + 1196
17 mlir-opt                 0x00000001020d993c main + 108
18 dyld                     0x0000000106491088 start + 516
```


</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJztWNtu2zgQ_Rr7hWigu6UHPzhJb0CCBE63i90Xg5LGMndpUktSad2v36Eo2ZLTtOrloVisYViySA7POTMcDpXL8rBcQ61k2RRQEmpIIfd7ZsgsvtyWeRHHNJ7F17Mg3RlT61m4mgWv8Fsxs2vyC-yMfzh_7C8v0NRfUBj86wzhzdFOkM2865m3miUe2XOmXsjakBcvCiqkYAXl7BMQA_v6wjZip663-40vj00X5qP5TlBbxkHjNcv8OPIjvBtbPUIc_iIS923_3t-8XD28JLrJrU6U5E1FFNRSGWIk-WZETOumhUSoKAkTBW9KlGEHpFBU70hOi7-NogVcuOkfDD4gZbOv7SztIw-bsnslK0X3hKqq2YMwFsQElc9skg-IWDaG6MM-l5wIugdNUGkQulFADrIhO_oIpGXhOqFBhcBtmyL3q3dviFREg2lJgHhkSgqLiDxSRVDGm5v3t5uHP24v727e_vlyvbFDbEigerVkopWRta44EiQnJucf76PnPr4XBGEW-kWLzY4NV_qg3c29QsMtzXdWSyR06qToh43URgFF9ySz4ArJ2OmR9iWJEwfBnwwhDRfR5yCsG_HAKkH5G3Q0B4U-T_tZfD9w0wTTmWZ5REYG0d4AeBhFzmRICGc5wkCnb2pOzVaq_UV5wIcDkzQMgzgqIrLRrMJ4w1AY0o8m4soK8D2PaFM60puN725A0JzDhm1n4dUs8I8dmN4UUjyCMgzbsbGNyrbpPeUNrKmooHPLqemuBkUNk2IW4N-X7uGj7W_7PUpWHp-aQw2DkWvQDTfOqvM-oCYFrDj_TYP-HcP_CyDQaJA-i9AJn3WSxdMkC8MYIt8bQfygmAF1SfUY4109mn0kwkieIS4HKk0dqGSiH-MgpIvULnybNg572WiXC-p29WRunmsom5pjUjGwEuUa9vIRroGWLTJR6vah1btbAntqil37sGU4YsMZRnLl7l-DAMUKy3dI654alEX0-nSaY_ho05JcJL32i4naRwVN8vTpFKva0ZLq68Cfd8Pn8F4NUsO2EYUduFFgl0UuMeGOTHcGHEVHtw3BLxixsf_DRk6Db2Rl9wznxWl2u4wWed1-mU70RZAtAj8ayEfRCYduFhtKryQvXyuAkvHDKIHfNsYml5VS9LA-I7CGyrrGET49fqXkJ-g9083xAGZAZti7nfXQ9b6SYsuqY5oN0o5nNpVnRIt4GHMlGMp4H0zv5F19T7VelbQ-xp9qxJn2Wj8Jt-cDcYVL66CZvqWCVjYQr4gNNnttBOZ7AeVwz4u8Llv43lRKuU-9b6Z0z2rAZX--nGzXI9IvJf7v4zheoVq_RY-rtmRCaE-X8LCDm9k1dNjvqcKGt2Ir-9hZnUKjiwzfnypjkSbF2ew9n8_GwVgON-2i3_j9YOq0iZ9EBE3ZymDVJgL9lQqpl7a_nvo-YBVYwG311He3N2_XuHgMfDSdzj-agMZx0qe1MbaujPN6UcKposRFOVylYyDfg_xpUdQI9k8Dm9rgkKtBPsONVB0um-3WxfHTgSVsKVrdlMDBwPODbRF0lurPfZkdKyUEy-1pY7MVIyK3eHdXm1vKxFei4tdg-DNj6dTjmlGOJza7nyDnwzPrYNq1K59mQbTxXE3Jpah-HQWfxEi7hpJFd0jpdumvryEKNBzu6BqrKoM7OZ5VC9C6R_-LrIz_xEr-Yo_P58bkeMaNp-bGyA-GufH_DPHTM0TrmcDvPZNM9kwyOkuOPdPVP8WOukrnbBN-MIqJylbQk3n1ry_6g5e_mHa-9MosC7HUQVzOwrHkTEl54OWTwWcGkijDISmGBVXu8Bf3Wp29rnO_c1j6SbII4yTx0nm5DMsszOjcMMNhOYsvW7bxNSnQw8e3ZDW63L2Fw9rRvhgjGqpjHUja8Js3ii-__6VfnC6ieL5b-osyzgMvT-OioHmcBEkZLiBKtyHGcFrkc05z4NpCnQWBgA-kNYH3iHrOloEXBL7VNQiTKL2Io7AAP8dDWFxm_jaYRR6g1vzC4riQqpqrZQspbyqNjRw9q0-NyNsWzK0y1j5tzE6q5ZXkXNoXnY325u38yxb_v3jGsHc">