Skip to content

SEGV in llvm-readobj -unwind on X86-64 COFF binary #36090

Open
@mothran

Description

@mothran
Bugzilla Link 36742
Version trunk
OS Linux
Attachments Reproduction binary
CC @jh7370

Extended Description

When parsing the unwinding information in a x86-64 COFF binary (attached) llvm-readobj segfaults.

Reproduction:
llvm-readobj -unwind ./msvs_whatever_64_O1_psftp_stripped

bt:
Format: COFF-x86-64
Arch: x86_64
AddressSize: 64bit
UnwindInformation [
RuntimeFunction {
StartAddress: (0x0)
EndAddress: (0x4)
UnwindInfoAddress: (0x8)
#​0 0x000055992cc2f6b9 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (./bin/llvm-readobj+0x1d46b9)
#​1 0x000055992cc2da06 llvm::sys::RunSignalHandlers() (./bin/llvm-readobj+0x1d2a06)
#​2 0x000055992cc2db5c SignalHandler(int) (./bin/llvm-readobj+0x1d2b5c)
#​3 0x00007fc4bb7f9da0 __restore_rt (/usr/lib/libpthread.so.0+0x11da0)
#​4 0x000055992cbace25 llvm::object::COFFObjectFile::getSectionContents(llvm::object::coff_section const*, llvm::ArrayRef&) const (./bin/llvm-readobj+0x151e25)
#​5 0x000055992cb5dbbb llvm::Win64EH::Dumper::printRuntimeFunction(llvm::Win64EH::Dumper::Context const&, llvm::object::coff_section const*, unsigned long, llvm::Win64EH::RuntimeFunction const&) (./bin/llvm-readobj+0x102bbb)
#​6 0x000055992cb5e1d9 llvm::Win64EH::Dumper::printData(llvm::Win64EH::Dumper::Context const&) (./bin/llvm-readobj+0x1031d9)
#​7 0x000055992cad0201 (anonymous namespace)::COFFDumper::printUnwindInfo() (./bin/llvm-readobj+0x75201)
#​8 0x000055992cb48f7e dumpObject(llvm::object::ObjectFile const*, llvm::ScopedPrinter&) (./bin/llvm-readobj+0xedf7e)
#​9 0x000055992caaa5d8 main (./bin/llvm-readobj+0x4f5d8)
#​10 0x00007fc4ba317f4a __libc_start_main (/usr/lib/libc.so.6+0x20f4a)
#​11 0x000055992cac157a _start (./bin/llvm-readobj+0x6657a)
Stack dump:
0. Program arguments: ./bin/llvm-readobj -unwind msvs_whatever_64_O1_psftp_stripped
[1] 26476 segmentation fault (core dumped) ./bin/llvm-readobj -unwind

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions