llvm-mirror/test/DebugInfo/dwarfdump-decompression-error.test
David Blaikie 4f1d6dd171 llvm-dwarfdump: Return non-zero on error
Makes it easier to test "this doesn't produce an error" (& indeed makes
that the implied default so we don't accidentally write tests that have
silent/sneaky errors as well as the positive behavior we're testing for)

Though the support for applying relocations is patchy enough that a
bunch of tests treat lack of relocation application as more of a warning
than an error - so rather than me trying to figure out how to add
support for a bunch of relocation types, let's degrade that to a warning
to match the usage (& indeed, it's sort of more of a tool warning anyway
- it's not that the DWARF is wrong, just that the tool can't fully cope
with it - and it's not like the tool won't dump the DWARF, it just won't
follow/render certain relocations - I guess in the most general case it
might try to render an unrelocated value & instead render something
bogus... but mostly seems to be about interesting relocations used in
eh_frame (& honestly it might be nice if we were lazier about doing this
relocation resolution anyway - if you're not dumping eh_frame, should we
really be erroring about the relocations in it?))
2020-04-09 20:53:58 -07:00

16 lines
588 B
Plaintext

REQUIRES: zlib
// dwarfdump-decompression-error.elf-x86-64 is prepared using following
// source code and invocation:
// test.cpp:
// int main() { return 0; }
//
// gcc test.cpp -o out -g -Wl,--compress-debug-sections,zlib
//
// After that result object was modified manually. One random byte in compressed
// content of .debug_info section was changed to 0xff. That breaks normal
// decompression flow in runtime.
RUN: not llvm-dwarfdump %p/Inputs/dwarfdump-decompression-error.elf-x86-64 2>&1 | FileCheck %s
CHECK: error: failed to decompress '.debug_info', zlib error: Z_DATA_ERROR