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

    <tr>
        <th>Summary</th>
        <td>
            [mlir] Convert-linalg-to-std Pass trigger 'llvm::install_out_of_memory_new_handler()' and crash
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
      </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/a0138390
Reproduced with: 
` mlir-opt --convert-linalg-to-std temp.mlir`

temp.mlir:
``` 
  func.func @func(%arg0: tensor<4x8xf32>, %arg1: tensor<4x8xf32>) -> tensor<4x8xf32> {
    %0 = linalg.copy ins(%arg0 : tensor<4x8xf32>) outs(%arg1 : tensor<4x8xf32>) -> tensor<4x8xf32>
    return %0 : tensor<4x8xf32>
  }
```
 
trace:
```console  
Invalid type for linalg library name mangling
UNREACHABLE executed at /Users/haoyu/workspace/mlir-fuzz/mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp:1814!
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-linalg-to-std 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 0x0000000104dcc5bc llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 56
1  mlir-opt                 0x0000000104dcb624 llvm::sys::RunSignalHandlers() + 112
2  mlir-opt 0x0000000104dccc54 SignalHandler(int) + 344
3  libsystem_platform.dylib 0x00000001a56894c4 _sigtramp + 56
4  libsystem_pthread.dylib 0x00000001a5671ee0 pthread_kill + 288
5  libsystem_c.dylib 0x00000001a55ac340 abort + 168
6  mlir-opt 0x0000000104d93504 llvm::install_out_of_memory_new_handler() + 0
7 mlir-opt                 0x0000000105106ff0 (anonymous namespace)::EraseDeadLinalgOp::~EraseDeadLinalgOp() + 0
8  mlir-opt 0x00000001050a6bbc mlir::linalg::generateLibraryCallName(mlir::Operation*) + 620
9  mlir-opt 0x000000010515799c mlir::linalg::detail::LinalgOpInterfaceTraits::Model<mlir::linalg::CopyOp>::getLibraryCallName(mlir::linalg::detail::LinalgOpInterfaceTraits::Concept const*, mlir::Operation*) + 52
10 mlir-opt 0x0000000105c2097c mlir::linalg::LinalgOpToLibraryCallRewrite::matchAndRewrite(mlir::linalg::LinalgOp, mlir::PatternRewriter&) const + 112
11 mlir-opt 0x000000010626bbd0 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&)>) + 1440
12 mlir-opt                 0x00000001060194b0 (anonymous namespace)::OperationLegalizer::legalize(mlir::Operation*, mlir::ConversionPatternRewriter&) + 1948
13 mlir-opt 0x0000000106012b1c (anonymous namespace)::OperationConverter::convertOperations(llvm::ArrayRef<mlir::Operation*>, llvm::function_ref<void (mlir::Diagnostic&)>) + 928
14 mlir-opt 0x0000000106014db8 mlir::applyFullConversion(mlir::Operation*, mlir::ConversionTarget&, mlir::FrozenRewritePatternSet const&) + 80
15 mlir-opt                 0x0000000105c22110 (anonymous namespace)::ConvertLinalgToStandardPass::runOnOperation() + 556
16 mlir-opt                 0x0000000105fd74dc mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int) + 420
17 mlir-opt 0x0000000105fd7a0c mlir::detail::OpToOpPassAdaptor::runPipeline(mlir::OpPassManager&, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int, mlir::PassInstrumentor*, mlir::PassInstrumentation::PipelineParentInfo const*) + 320
18 mlir-opt                 0x0000000105fd9388 mlir::PassManager::run(mlir::Operation*) + 1148
19 mlir-opt 0x0000000105fd2840 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
20 mlir-opt                 0x0000000105fd2410 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
21 mlir-opt                 0x000000010603d02c 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
22 mlir-opt 0x0000000105fd0838 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
23 mlir-opt                 0x0000000105fd0d2c mlir::MlirOptMain(int, char**, llvm::StringRef, mlir::DialectRegistry&, bool) + 1208
24 mlir-opt 0x0000000104c6f0a0 main + 108
25 dyld 0x00000001097ad088 start + 516

```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsWUlv4zgW_jXMhYhBUYulQw6OE6MCOJ3ASQ8wczEokpY5RZEakkqV6zC_fUAttrwlTnUdCoMOAkuWHt_yvZU0sVYUivMbEN-C-O6K1G6tzc1US6krbVxt0VWu2ebmcf6wgHktpIPEQarLUji4dq6yIJwAPAN4Vgi3rvMR1SXAMynf-st1ZfS_OXUAz9p1AM8ICsI0zBBAdwBNFrwymtWUM_hNuDUIJ7B9ARIESynMta4cvL6mWr1x466lUEQW105fW8eg42U18lQg6fi1n7vn4WTLrv3v2EO4qhUd-Q8IIuSvAKcAx8QUyGvhuLLagHAafU-_r0IMwnuAp7ClCM5SZPAahPen3kEwvu1lQ88HQRDewdagEdXVBgpld0rAd2To2u0og_coz2mz08RwVxvVK3SaUUcMxncHaHZvOtQNofwYcaqV1ZLDjupBvREpGHSbisOVNh0CUIrcELOBipQclkQVUqiiXfLnH4v7yfTL5HZ-D_l3TmvHmY9FgGd_Wm4swLM10Zsa4Nk3bb7ayuuBZ034rOofP7p7H5QiB3h2J4hso3LeyAZ49rDYfnuq7IhWFQgnQRpEAAetEs_z-8nLPbR17uOfwLwuoOE-U6DTn88HYW3NveaQKAaForJmHLo1h9QQu4Y5oV8bQEet-BdH6FfI6rLaIoxGAGXPRheGlJCYoi65cl6JzyTOAfMmC3XtoN2UuZaNNywEOOXK1obDja7hmrxx2JjTEokf3ECh_DsDnyevX6A20HLXWMPVmzBaedXgGzEQJGg-_8fj8uWfj7dP84d_3S-WfonPTKdhpYVq8PSlIttZCncmoe-o_QtQxCiNc9ro4mnDid3Y9ubZCOUas16bqMTpjsiQb0ttneGkBDjxWS2UFwcBvoVx0ooMBiIP__ZVyBMcnVJhUasXUSgivxDFZBOmaS8lCHArBp-3jMYR3GMAcDpQNIyilkUIfe7YjXW8XFaSuJU25YhtpMgHLEmcpFlEI7i0onCGlNWeudEeE7c2nLBTPMYB5wh2BMuvQsqGDU7Tlk885ENPcIgJDSMESe4Tp4Ei6ZYm56DIwhgNERbKOiLlUtduqVfLkpfabJaKf1uut0D1KHUVanyRM-MAJasV8uFOlFabUte2zYC2omSt_HtDLL_jhPX1on383-PnR3qkp22MEUnynMK-ZYWTNl3b-4Irbojj87ZCTomUf5DSx_SO_qnyJEIrgCe9zAR3UrMzUoN4nGXnpDLuiJDtfW_Qg3LcrAjlr4YI18X5o2ZcgnB6ms1UVxuP0H1vi3vPjJ9SYKoV5ZUfTZR1jf1T-D4ycZd9AToNDMUoG58DptflVQ8sWfBvRjjeUpTE0fVEsf7hOQt3cTJU-Jk4x43qFpumRGWtcfu1IwhOap_gJM8ZOuY4qSopKHHafKzmPmofqTcdZKcfpfzCpeErEE5zrX2JSI8Y9O5Kmry6f5fJmxbsLzPZLZ7rQlAiF9zW0l3GtyvbUdSlVIAvqigJCrIo_7CibNGe84I0_bQLlu7rha6ZNr3eCq1Ox1BjQhZ19TYIT4cPCnAe0ItVboW6XuVu3ti-tnutd2IM2SwO3LFn0Kcj4U6QQmnrBD1yV4Z7U6NzpkYsTwcIkqqSm1kt5Q7KT2P_SkzBXZcXO4KZ0T9475HOPy_cDSOtUTrtIyy-rGdRjIPgwwjrvNRWnFf94ohixLBnYrsiamr1pAbmbTtXvJ2IkssUWrFxxIbFc1jIfdl8qrzYCSPVthSZWh2kobUfVPLhm4kicmOFfSSKFD7cp9DXHX-tVbPNZcMZL-obYzA-Xf9XbEzQ5014FhWXQh2mqyfdapb8cpv2i7O1D8o60-wFtDlRvYcEreT2Raf7MzFcuQe10oN-2k2cW9jSSyMhC9P0QHpvz0m_n2rWQbCtWNk5d-E0QrDixo--E3pcd45H_h7L_moda0mXy6Ab5NfEcLasnN8M71i96NpQ_lgYv7PeJe8Q5Mf5w2KqlePf-3Hkrzal_QDqW92-DV26om5bgNGlTsJRMJwW9hX5Gc2PsayV-E_Nj7B8bEb323q1agP8eCHjK1JLt2Rccj9enVvs58uDznHo82w7hFIipd9fL1dqz5BHKcxT5R6JUB9Ez-9h4a-Mpb2GKjl1C14I68zmTL5cdu26D8DREjWCUqlV8fsgeBQjTQ6NtzkUXDjlhQzhYb-wlRRuotiz0ZRb22v_m2TG_0Umv0txujYm_SiD8blGgtJw2LD-rgi_vCK050VB74nw0i6F2F6G7XumG4TomrQjz0HTfXFGqMLvOy62q5s9MOpmD3x6CxHRZIUIgiURql2xXRBDtpFsSJyNCUNpCq0j3eFX3ONwcGZ-xW5CloUZueI3QTIO4wwlKb5a3_AQUUJXLEwjlsY5phEPwmyF6ZhFY0ZXV-IGIxyiIAhREqQIj1LGGQ9YguMx4zwOQYR4SYQceXhG2hRXzVH0TZxlaXIlSc6l7X8TMjfNMW9eFxZESArr7G6ZE042vx41gMZ3cHryqNmHF3RGFAU3EODxp8_xAB43Z-TNufhVbeTNzx-2N0b-LwAA___DlzSs">