[Mlir-commits] [mlir] [mlir][gpu] Use `SmallString`, `FailureOr` and `StringRef` in `module-to-binary` infra (NFC) (PR #172284)

LLVM Continuous Integration llvmlistbot at llvm.org
Mon Dec 15 15:47:35 PST 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `mlir-rocm-mi200` running on `mi200-buildbot` while building `mlir` at step 7 "test-build-check-mlir-build-only-check-mlir".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/177/builds/25957

<details>
<summary>Here is the relevant piece of the build log for the reference</summary>

```
Step 7 (test-build-check-mlir-build-only-check-mlir) failure: test (failure)
******************** TEST 'MLIR :: Integration/GPU/ROCM/vector-transferops.mlir' FAILED ********************
Exit Code: 2

Command Output (stdout):
--
# RUN: at line 1
/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt /vol/worker/mi200-buildbot/mlir-rocm-mi200/llvm-project/mlir/test/Integration/GPU/ROCM/vector-transferops.mlir  | /vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt -convert-scf-to-cf  | /vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt -gpu-kernel-outlining  | /vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt -pass-pipeline='builtin.module(gpu.module(strip-debuginfo,convert-gpu-to-rocdl{chipset=gfx906 index-bitwidth=32}),rocdl-attach-target{chip=gfx906})'  | /vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt -gpu-to-llvm -reconcile-unrealized-casts -gpu-module-to-binary  | /vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-runner    --shared-libs=/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/lib/libmlir_rocm_runtime.so    --shared-libs=/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/lib/libmlir_runner_utils.so    --entry-point-result=void  | /vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/FileCheck /vol/worker/mi200-buildbot/mlir-rocm-mi200/llvm-project/mlir/test/Integration/GPU/ROCM/vector-transferops.mlir
# executed command: /vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt /vol/worker/mi200-buildbot/mlir-rocm-mi200/llvm-project/mlir/test/Integration/GPU/ROCM/vector-transferops.mlir
# executed command: /vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt -convert-scf-to-cf
# executed command: /vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt -gpu-kernel-outlining
# executed command: /vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt '-pass-pipeline=builtin.module(gpu.module(strip-debuginfo,convert-gpu-to-rocdl{chipset=gfx906 index-bitwidth=32}),rocdl-attach-target{chip=gfx906})'
# executed command: /vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt -gpu-to-llvm -reconcile-unrealized-casts -gpu-module-to-binary
# .---command stderr------------
# | mlir-opt: /vol/worker/mi200-buildbot/mlir-rocm-mi200/llvm-project/llvm/lib/Support/MemoryBuffer.cpp:52: void llvm::MemoryBuffer::init(const char *, const char *, bool): Assertion `(!RequiresNullTerminator || BufEnd[0] == 0) && "Buffer is not null terminated!"' failed.
# | PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace and instructions to reproduce the bug.
# | Stack dump:
# | 0.	Program arguments: /vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt -gpu-to-llvm -reconcile-unrealized-casts -gpu-module-to-binary
# |  #0 0x0000561372da1fc8 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt+0x62c0fc8)
# |  #1 0x0000561372d9f655 llvm::sys::RunSignalHandlers() (/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt+0x62be655)
# |  #2 0x0000561372da2d31 SignalHandler(int, siginfo_t*, void*) Signals.cpp:0:0
# |  #3 0x00007fd8c3980520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
# |  #4 0x00007fd8c39d49fc pthread_kill (/lib/x86_64-linux-gnu/libc.so.6+0x969fc)
# |  #5 0x00007fd8c3980476 gsignal (/lib/x86_64-linux-gnu/libc.so.6+0x42476)
# |  #6 0x00007fd8c39667f3 abort (/lib/x86_64-linux-gnu/libc.so.6+0x287f3)
# |  #7 0x00007fd8c396671b (/lib/x86_64-linux-gnu/libc.so.6+0x2871b)
# |  #8 0x00007fd8c3977e96 (/lib/x86_64-linux-gnu/libc.so.6+0x39e96)
# |  #9 0x0000561372d70301 (/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt+0x628f301)
# | #10 0x000056137497df4d mlir::ROCDL::assembleIsa(llvm::StringRef, llvm::StringRef, llvm::StringRef, llvm::StringRef, llvm::function_ref<mlir::InFlightDiagnostic ()>) (/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt+0x7e9cf4d)
# | #11 0x000056137497f0fe mlir::ROCDL::SerializeGPUModuleBase::compileToBinary(llvm::StringRef) (/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt+0x7e9e0fe)
# | #12 0x000056137497f6cd mlir::ROCDL::SerializeGPUModuleBase::moduleToObjectImpl(mlir::gpu::TargetOptions const&, llvm::Module&) (/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt+0x7e9e6cd)
# | #13 0x000056137497ff03 (anonymous namespace)::AMDGPUSerializer::moduleToObject(llvm::Module&) Target.cpp:0:0
# | #14 0x00005613754eae8b mlir::LLVM::ModuleToObject::run() (/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt+0x8a09e8b)
# | #15 0x000056137497fbf1 mlir::gpu::detail::TargetAttrInterfaceInterfaceTraits::FallbackModel<(anonymous namespace)::ROCDLTargetAttrImpl>::serializeToObject(mlir::gpu::detail::TargetAttrInterfaceInterfaceTraits::Concept const*, mlir::Attribute, mlir::Operation*, mlir::gpu::TargetOptions const&) Target.cpp:0:0
# | #16 0x000056137995bfd3 mlir::gpu::TargetAttrInterface::serializeToObject(mlir::Operation*, mlir::gpu::TargetOptions const&) const (/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt+0xce7afd3)
# | #17 0x000056137474bf6a mlir::gpu::transformGpuModulesToBinaries(mlir::Operation*, mlir::gpu::OffloadingLLVMTranslationAttrInterface, mlir::gpu::TargetOptions const&) (/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt+0x7c6af6a)
# | #18 0x000056137474ce4a (anonymous namespace)::GpuModuleToBinaryPass::runOnOperation() ModuleToBinary.cpp:0:0
# | #19 0x000056137a4f4a24 mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int) (/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt+0xda13a24)
# | #20 0x000056137a4f5815 mlir::detail::OpToOpPassAdaptor::runPipeline(mlir::OpPassManager&, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int, mlir::PassInstrumentor*, mlir::PassInstrumentation::PipelineParentInfo const*) (/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt+0xda14815)
# | #21 0x000056137a4fcab4 mlir::PassManager::runPasses(mlir::Operation*, mlir::AnalysisManager) (/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt+0xda1bab4)
# | #22 0x000056137a4fc16c mlir::PassManager::run(mlir::Operation*) (/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt+0xda1b16c)
# | #23 0x0000561372db4106 performActions(llvm::raw_ostream&, std::shared_ptr<llvm::SourceMgr> const&, mlir::MLIRContext*, mlir::MlirOptMainConfig const&) MlirOptMain.cpp:0:0
# | #24 0x0000561372db32d8 llvm::LogicalResult llvm::function_ref<llvm::LogicalResult (std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::MemoryBufferRef const&, 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&)::$_0>(long, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::MemoryBufferRef const&, llvm::raw_ostream&) MlirOptMain.cpp:0:0
# | #25 0x000056137a80f065 mlir::splitAndProcessBuffer(std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::function_ref<llvm::LogicalResult (std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, llvm::MemoryBufferRef const&, llvm::raw_ostream&)>, llvm::raw_ostream&, llvm::StringRef, llvm::StringRef) (/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt+0xdd2e065)
# | #26 0x0000561372da7fa6 mlir::MlirOptMain(llvm::raw_ostream&, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer>>, mlir::DialectRegistry&, mlir::MlirOptMainConfig const&) (/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt+0x62c6fa6)
# | #27 0x0000561372da82d2 mlir::MlirOptMain(int, char**, llvm::StringRef, llvm::StringRef, mlir::DialectRegistry&) (/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt+0x62c72d2)
# | #28 0x0000561372da853b mlir::MlirOptMain(int, char**, llvm::StringRef, mlir::DialectRegistry&) (/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt+0x62c753b)
# | #29 0x0000561372cf4133 main (/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt+0x6213133)
# | #30 0x00007fd8c3967d90 (/lib/x86_64-linux-gnu/libc.so.6+0x29d90)
# | #31 0x00007fd8c3967e40 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x29e40)
# | #32 0x0000561372cf3c65 _start (/vol/worker/mi200-buildbot/mlir-rocm-mi200/build/bin/mlir-opt+0x6212c65)
...

```

</details>

https://github.com/llvm/llvm-project/pull/172284


More information about the Mlir-commits mailing list