llvm-project/llvm/test/tools/llvm-objdump/Inputs
Kevin Enderby a8d256cb36 Add the rest of the error checking for Mach-O dyld compact bind entry errors
and test cases for each of the error checks.

To do this more plumbing was needed so that the segment indexes and
segment offsets can be checked.  Basically what was done was the SegInfo
from llvm-objdump’s MachODump.cpp was moved into libObject for Mach-O
objects as BindRebaseSegInfo and it is only created when an iterator for
bind or rebase entries are created.

This commit really only adds the error checking and test cases for the
bind table entires and the checking for the lazy bind and weak bind entries
are still to be fully done as well as the rebase entires.  Though some of
the plumbing for those are added with this commit.  Those other error
checks and test cases will be added in follow on commits.

Note, the two llvm_unreachable() calls should now actually be unreachable
with the error checks in place and would take a logic bug in the error
checking code to be reached if the segment indexes and segment
offsets are used from a checked bind entry.  Comments have been added
to the methods that require the arguments to have been checked
prior to calling.

llvm-svn: 298292
2017-03-20 19:46:55 +00:00
..
LLVM-bundle.macho-x86_64
bad-ordinal.macho-x86_64
bind.macho-x86_64
bind2.macho-x86_64
common-symbol-elf
compact-unwind.macho-i386
compact-unwind.macho-x86_64
eh_frame.elf-mipsel
eh_frame.macho-arm64
eh_frame_zero_cie.o
empty.macho-armv7
export.dll.coff-i386
exports-trie.macho-x86_64
file-aux-record.yaml
file.obj.coff-arm
large-bss.obj.coff-i386
lazy-bind.macho-x86_64
libbogus1.a
libbogus2.a
libbogus3.a
libbogus4.a
libbogus5.a
libbogus6.a
libbogus7.a
libbogus8.a
libbogus9.a
libbogus10.a
libbogus11.a Reapply "More fixes to get good error messages for bad archives." 2016-08-03 19:02:50 +00:00
libbogus12.a Reapply "More fixes to get good error messages for bad archives." 2016-08-03 19:02:50 +00:00
libbogus13.a Reapply "More fixes to get good error messages for bad archives." 2016-08-03 19:02:50 +00:00
libbogus14.a Reapply "More fixes to get good error messages for bad archives." 2016-08-03 19:02:50 +00:00
library.lib llvm-objdump: add coff import library symbol listing support 2016-08-18 16:39:19 +00:00
macho-bind-add-addr-imm-scaled Add the rest of the error checking for Mach-O dyld compact bind entry errors 2017-03-20 19:46:55 +00:00
macho-bind-add_addr_uleb Add the rest of the error checking for Mach-O dyld compact bind entry errors 2017-03-20 19:46:55 +00:00
macho-bind-bad-opcode-value Add the rest of the error checking for Mach-O dyld compact bind entry errors 2017-03-20 19:46:55 +00:00
macho-bind-bind-add-addr-uleb Add the rest of the error checking for Mach-O dyld compact bind entry errors 2017-03-20 19:46:55 +00:00
macho-bind-do-bind-no-segIndex Add the rest of the error checking for Mach-O dyld compact bind entry errors 2017-03-20 19:46:55 +00:00
macho-bind-dylib-ordinal-uleb Add the rest of the error checking for Mach-O dyld compact bind entry errors 2017-03-20 19:46:55 +00:00
macho-bind-dylib-ordinal-uleb-malformed-uleb128 Add the rest of the error checking for Mach-O dyld compact bind entry errors 2017-03-20 19:46:55 +00:00
macho-bind-dylib-ordinal-uleb-too-big Add the rest of the error checking for Mach-O dyld compact bind entry errors 2017-03-20 19:46:55 +00:00
macho-bind-dylib-special-imm Add the rest of the error checking for Mach-O dyld compact bind entry errors 2017-03-20 19:46:55 +00:00
macho-bind-seg-too-big Add the rest of the error checking for Mach-O dyld compact bind entry errors 2017-03-20 19:46:55 +00:00
macho-bind-segoff-too-big Add the rest of the error checking for Mach-O dyld compact bind entry errors 2017-03-20 19:46:55 +00:00
macho-bind-set-addend-sleb Add the rest of the error checking for Mach-O dyld compact bind entry errors 2017-03-20 19:46:55 +00:00
macho-bind-set-symbol Add the rest of the error checking for Mach-O dyld compact bind entry errors 2017-03-20 19:46:55 +00:00
macho-bind-set-type-imm Add the rest of the error checking for Mach-O dyld compact bind entry errors 2017-03-20 19:46:55 +00:00
macho-bind-uleb-times-skipping-uleb Add the rest of the error checking for Mach-O dyld compact bind entry errors 2017-03-20 19:46:55 +00:00
macho-do-bind-no-dylib-ordinal Add the rest of the error checking for Mach-O dyld compact bind entry errors 2017-03-20 19:46:55 +00:00
macho-do-bind-no-symbol Add the rest of the error checking for Mach-O dyld compact bind entry errors 2017-03-20 19:46:55 +00:00
malformed-macho.bin
malformed-unwind.macho-x86_64 llvm-objdump: deal with unexpected object files more gracefully. 2016-11-15 20:26:01 +00:00
many-relocs.obj-i386
nop.exe.coff-i386
out-of-section-sym.s
proc-specific-section-elf
rebase.macho-x86_64
section-filter.obj
section.macho-armv7
test.wasm [WebAssembly] Update llvm-objdump tests for the new wasm version number. 2017-02-22 20:24:16 +00:00
tls.exe.coff-x86_64
unwind-info-no-relocs.macho-x86_64
unwind-info.macho-arm64
unwind-info.macho-x86_64
weak-bind.macho-x86_64
win64-unwind.exe.coff-x86_64.asm
win64-unwind.exe.coff-x86_64.exe
win64-unwind.exe.coff-x86_64.obj