Public bug reported:
# What was expected
llvm-objdump-21 --offloading should successfully extract the offload
bundles from an object file created by clang-21 using --offload-
compress. This is what occurs with LLVM 22.
```
# llvm-objdump-22 --offloading
./obj-x86_64-linux-gnu/library/CMakeFiles/rocsparse.dir/src/level1/rocsparse_axpyi.cpp.o
./obj-x86_64-linux-gnu/library/CMakeFiles/rocsparse.dir/src/level1/rocsparse_axpyi.cpp.o:
file format elf64-x86-64
Extracting offload bundle:
./obj-x86_64-linux-gnu/library/CMakeFiles/rocsparse.dir/src/level1/rocsparse_axpyi.cpp.o.0.host-x86_64-unknown-linux-gnu-
Extracting offload bundle:
./obj-x86_64-linux-gnu/library/CMakeFiles/rocsparse.dir/src/level1/rocsparse_axpyi.cpp.o.0.hipv4-amdgcn-amd-amdhsa--gfx1010
Extracting offload bundle:
./obj-x86_64-linux-gnu/library/CMakeFiles/rocsparse.dir/src/level1/rocsparse_axpyi.cpp.o.0.hipv4-amdgcn-amd-amdhsa--gfx1030
Extracting offload bundle:
./obj-x86_64-linux-gnu/library/CMakeFiles/rocsparse.dir/src/level1/rocsparse_axpyi.cpp.o.0.hipv4-amdgcn-amd-amdhsa--gfx1100
Extracting offload bundle:
./obj-x86_64-linux-gnu/library/CMakeFiles/rocsparse.dir/src/level1/rocsparse_axpyi.cpp.o.0.hipv4-amdgcn-amd-amdhsa--gfx1101
Extracting offload bundle:
./obj-x86_64-linux-gnu/library/CMakeFiles/rocsparse.dir/src/level1/rocsparse_axpyi.cpp.o.0.hipv4-amdgcn-amd-amdhsa--gfx1102
Extracting offload bundle:
./obj-x86_64-linux-gnu/library/CMakeFiles/rocsparse.dir/src/level1/rocsparse_axpyi.cpp.o.0.hipv4-amdgcn-amd-amdhsa--gfx803
Extracting offload bundle:
./obj-x86_64-linux-gnu/library/CMakeFiles/rocsparse.dir/src/level1/rocsparse_axpyi.cpp.o.0.hipv4-amdgcn-amd-amdhsa--gfx900
Extracting offload bundle:
./obj-x86_64-linux-gnu/library/CMakeFiles/rocsparse.dir/src/level1/rocsparse_axpyi.cpp.o.0.hipv4-amdgcn-amd-amdhsa--gfx906
Extracting offload bundle:
./obj-x86_64-linux-gnu/library/CMakeFiles/rocsparse.dir/src/level1/rocsparse_axpyi.cpp.o.0.hipv4-amdgcn-amd-amdhsa--gfx908
Extracting offload bundle:
./obj-x86_64-linux-gnu/library/CMakeFiles/rocsparse.dir/src/level1/rocsparse_axpyi.cpp.o.0.hipv4-amdgcn-amd-amdhsa--gfx90a
```
# What happened instead
```
# LLVM_SYMBOLIZER_PATH=/usr/lib/llvm-21/bin/llvm-symbolizer llvm-objdump-21
--offloading
./obj-x86_64-linux-gnu/library/CMakeFiles/rocsparse.dir/src/level1/rocsparse_axpyi.cpp.o
./obj-x86_64-linux-gnu/library/CMakeFiles/rocsparse.dir/src/level1/rocsparse_axpyi.cpp.o:
file format elf64-x86-64
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and
include the crash backtrace.
Stack dump:
0. Program arguments: llvm-objdump-21 --offloading
./obj-x86_64-linux-gnu/library/CMakeFiles/rocsparse.dir/src/level1/rocsparse_axpyi.cpp.o
#0 0x00007f6355ed9eaf llvm::sys::PrintStackTrace(llvm::raw_ostream&, int)
(/usr/lib/x86_64-linux-gnu/libLLVM.so.21.1+0x44d9eaf)
#1 0x00007f6355ed7757 llvm::sys::RunSignalHandlers()
(/usr/lib/x86_64-linux-gnu/libLLVM.so.21.1+0x44d7757)
#2 0x00007f6355edac9a (/usr/lib/x86_64-linux-gnu/libLLVM.so.21.1+0x44dac9a)
#3 0x00007f6351245f30 (/usr/lib/x86_64-linux-gnu/libc.so.6+0x45f30)
#4 0x00007f6351397222 (/usr/lib/x86_64-linux-gnu/libc.so.6+0x197222)
#5 0x0000560424a75239 (/usr/lib/llvm-21/bin/llvm-objdump+0xc0239)
#6 0x0000560424a7478e (/usr/lib/llvm-21/bin/llvm-objdump+0xbf78e)
#7 0x00005604249f4156 (/usr/lib/llvm-21/bin/llvm-objdump+0x3f156)
#8 0x00005604249e9c50 (/usr/lib/llvm-21/bin/llvm-objdump+0x34c50)
#9 0x0000560424a7c823 (/usr/lib/llvm-21/bin/llvm-objdump+0xc7823)
#10 0x00007f635122a575 (/usr/lib/x86_64-linux-gnu/libc.so.6+0x2a575)
#11 0x00007f635122a628 __libc_start_main
(/usr/lib/x86_64-linux-gnu/libc.so.6+0x2a628)
#12 0x00005604249e11b5 (/usr/lib/llvm-21/bin/llvm-objdump+0x2c1b5)
Segmentation fault
LLVM_SYMBOLIZER_PATH=/usr/lib/llvm-21/bin/llvm-symbolizer llvm-objdump-21
--offloading
./obj-x86_64-linux-gnu/library/CMakeFiles/rocsparse.dir/src/level1/rocsparse_axpyi.cpp.o
```
The error that occurs when run on a shared object library is slightly
different, though probably related:
```
# llvm-objdump-21 --offloading
./obj-x86_64-linux-gnu/library/librocsparse.so.1.0
./obj-x86_64-linux-gnu/library/librocsparse.so.1.0: file format elf64-x86-64
llvm-objdump-21: error: './obj-x86_64-linux-gnu/library/librocsparse.so.1.0':
while extracting offload FatBin bundles: Failed to decompress input: Could not
decompress embedded file contents: Src size is incorrect
```
(The extraction of offload sections from the shared object library also
functions properly with llvm-objdump-22.)
# System Info
## lsb_release -rd
Description: Ubuntu Resolute Raccoon (development branch)
Release: 26.04
## apt-cache policy llvm-21
llvm-21:
Installed: 1:21.1.8-1ubuntu1
Candidate: 1:21.1.8-1ubuntu1
Version table:
1:21.1.8-3ubuntu1 100
100 http://archive.ubuntu.com/ubuntu resolute-proposed/universe amd64
Packages
*** 1:21.1.8-1ubuntu1 500
500 http://archive.ubuntu.com/ubuntu resolute/universe amd64 Packages
100 /var/lib/dpkg/status
** Affects: llvm
Importance: Unknown
Status: Unknown
** Affects: llvm-toolchain-21 (Ubuntu)
Importance: Undecided
Status: New
** Affects: llvm-toolchain-21 (Debian)
Importance: Unknown
Status: Unknown
** Attachment added: "The problem object file"
https://bugs.launchpad.net/bugs/2142335/+attachment/5947515/+files/rocsparse_axpyi.cpp.o
** Bug watch added: github.com/llvm/llvm-project/issues #182567
https://github.com/llvm/llvm-project/issues/182567
** Also affects: llvm via
https://github.com/llvm/llvm-project/issues/182567
Importance: Unknown
Status: Unknown
** Bug watch added: Debian Bug tracker #1128523
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1128523
** Also affects: llvm-toolchain-21 (Debian) via
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1128523
Importance: Unknown
Status: Unknown
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2142335
Title:
Segfault in llvm-objdump --offloading with object file
To manage notifications about this bug go to:
https://bugs.launchpad.net/llvm/+bug/2142335/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs