llvm-project/llvm/test/Object
Rafael Espindola 3dc0d05bf4 Improve error handling of getRelocationAddend.
This patch changes getRelocationAddend to use ErrorOr and considers it an error
to try to get the addend of a REL section.

If, for example, a x86_64 file has a REL section, that file is corrupted and
we should reject it.

Using ErrorOr is not ideal since we check the section type once per relocation
instead of once per section.

Checking once per section would involve getRelocationAddend just asserting and
callers checking the section before iterating over the relocations.

In any case, this is an improvement and includes a test.

llvm-svn: 240176
2015-06-19 20:58:43 +00:00
..
AArch64 [ELFYAML] Provide default value 0 for YAML relocation addendum field 2015-01-29 06:56:24 +00:00
ARM Plumb in the ARM thumb symbolizer in llvm-objdump’s Mach-O disassembler and 2014-11-06 19:00:13 +00:00
Inputs Improve error handling of getRelocationAddend. 2015-06-19 20:58:43 +00:00
Mips [llvm-readobj/obj2yaml/yaml2obj] Support MIPS machine ELF header flags 2015-05-08 07:04:59 +00:00
X86 Move test that depends on x86 to the x86 directory. 2015-06-04 15:25:47 +00:00
ar-create.test
ar-error.test llvm/test/Object/ar-error.test: Don't check the message "No such file or directory". 2014-05-24 08:47:11 +00:00
archive-delete.test lit: Add 'cd' support to the internal shell and port some tests 2015-03-02 21:33:18 +00:00
archive-error-tmp.txt Remove "REQUIRES:shell" from tests. They work for me. 2014-11-04 13:41:33 +00:00
archive-extract-dir.test lit: Add 'cd' support to the internal shell and port some tests 2015-03-02 21:33:18 +00:00
archive-format.test Make llvm/test/Object/archive-format.test CRLF-tolerant. 2015-03-03 15:54:48 +00:00
archive-long-index.test Changed the lvm-nm alias "-s" for -print-armap to "-M". 2014-07-08 23:47:31 +00:00
archive-move.test lit: Add 'cd' support to the internal shell and port some tests 2015-03-02 21:33:18 +00:00
archive-replace-pos.test
archive-symtab.test Object, support both mach-o archive t.o.c file names 2014-11-12 01:37:45 +00:00
archive-toc.test Start adding thin archive support. 2014-12-16 01:43:41 +00:00
archive-update.test lit: Add 'cd' support to the internal shell and port some tests 2015-03-02 21:33:18 +00:00
check_binary_output.ll
coff-archive-short.test Object, COFF: Cleanup symbol type code, improve binutils compatibility 2014-10-31 05:07:00 +00:00
coff-archive.test Object, COFF: Cleanup symbol type code, improve binutils compatibility 2014-10-31 05:07:00 +00:00
corrupt.test
directory.ll Use std::error_code instead of llvm::error_code. 2014-06-11 19:05:50 +00:00
dllimport.ll Object: Prepend __imp_ when mangling a dllimport symbol in IRObjectFile. 2015-06-11 21:42:18 +00:00
elf-reloc-no-sym.test
elf-unknown-type.test [Object][ELF] Test unknown type. 2015-01-23 21:58:09 +00:00
extract.ll lit: Add 'cd' support to the internal shell and port some tests 2015-03-02 21:33:18 +00:00
invalid.test Improve error handling of getRelocationAddend. 2015-06-19 20:58:43 +00:00
kext.test Object: Test for reading kext bundles 2015-02-27 18:58:23 +00:00
lit.local.cfg
macho-invalid.test [Object, MachO] Don't crash on incomplete MachO segment load commands. 2015-06-04 22:26:44 +00:00
mangle-ir.ll Mark intrinsic functions as llvm-specific. 2014-07-04 15:58:00 +00:00
mri-addlib.test Re-enable tests in llvm/test/Object, corresponding to line_iterator's 2014-11-04 13:19:29 +00:00
mri-addmod.test Re-enable tests in llvm/test/Object, corresponding to line_iterator's 2014-11-04 13:19:29 +00:00
mri-crlf.test Add CRLF support to LineIterator. 2014-11-03 14:09:47 +00:00
mri1.test Re-enable tests in llvm/test/Object, corresponding to line_iterator's 2014-11-04 13:19:29 +00:00
mri2.test llvm-ar: Start adding support for mri scripts. 2014-10-10 18:33:51 +00:00
mri3.test Re-enable tests in llvm/test/Object, corresponding to line_iterator's 2014-11-04 13:19:29 +00:00
mri4.test Re-enable tests in llvm/test/Object, corresponding to line_iterator's 2014-11-04 13:19:29 +00:00
mri5.test llvm-ar: Start adding support for mri scripts. 2014-10-10 18:33:51 +00:00
nm-archive.test LibDriver, llvm-lib: introduce. 2015-06-09 21:50:22 +00:00
nm-darwin-m.test Added the -m option as an alias for -format=darwin to llvm-nm and llvm-size 2014-06-20 00:04:16 +00:00
nm-error.test
nm-irix6.test [Object] Support reading 64-bit MIPS ELF archives 2015-02-17 18:54:22 +00:00
nm-shared-object.test Fix llvm-nm to print the full 64-bit address for symbols in 64-bit object files. 2014-05-09 23:57:49 +00:00
nm-trivial-object.test Fix llvm-nm -S option. 2015-05-22 13:28:35 +00:00
nm-universal-binary.test pr20589: Fix duplicated arch flag. 2014-08-08 16:18:29 +00:00
nm-weak-global-macho.test
obj2yaml-coff-long-file-symbol.test
obj2yaml-coff-long-section-name.test obj2yaml, COFF: Handle long section names 2014-10-10 00:17:57 +00:00
obj2yaml-coff-section-aux-symbol.test Add tests for r219479. 2014-10-10 06:59:05 +00:00
obj2yaml-coff-weak-external.test
obj2yaml-sectiongroup.test [obj2yaml/yaml2obj] Add SHT_GROUP support. 2015-02-21 04:28:26 +00:00
obj2yaml.test Fix the interpretation of a 0 st_name. 2015-06-03 05:14:22 +00:00
objdump-export-list.test [Object] Don't crash on empty export lists. 2014-12-19 02:31:01 +00:00
objdump-file-header.test
objdump-no-sectionheaders.test objdump: Add test for ELF file with no section table 2014-06-30 20:03:02 +00:00
objdump-private-headers.test Add mach-o LC_RPATH support to llvm-objdump 2014-12-04 07:37:02 +00:00
objdump-reloc-shared.test llvm-objdump: don't print relocations in non-relocatable files. 2014-08-17 19:09:37 +00:00
objdump-relocations.test Fix getRelocationValueString to return the symbol name for EM_386. 2014-10-29 18:37:13 +00:00
objdump-section-content.test
objdump-sectionheaders.test
objdump-symbol-table.test Stop inventing symbol sizes. 2015-05-22 15:43:00 +00:00
readobj-elf-versioning.test
readobj-shared-object.test Fix the interpretation of a 0 st_name. 2015-06-03 05:14:22 +00:00
readobj.test
relocation-executable.test
simple-archive.test Changed the lvm-nm alias "-s" for -print-armap to "-M". 2014-07-08 23:47:31 +00:00
size-trivial-macho.test Add the -arch flag support to llvm-size like what was done to llvm-nm 2014-07-01 17:19:10 +00:00
yaml2obj-coff-multi-doc.test [yaml2obj] Add new command line option `-docnum`. 2014-05-31 04:51:07 +00:00
yaml2obj-elf-bits-endian.test
yaml2obj-elf-file-headers-with-e_flags.yaml [yaml2obj] Allow yaml2obj tool to recognize EF_MIPS_NAN2008 flag 2014-11-04 13:33:36 +00:00
yaml2obj-elf-file-headers.yaml
yaml2obj-elf-multi-doc.test [yaml2obj] Add new command line option `-docnum`. 2014-05-31 04:51:07 +00:00
yaml2obj-elf-rel-noref.yaml Support arm32 R_ARM_V4BX relocation format 2015-04-22 15:26:43 +00:00
yaml2obj-elf-rel.yaml
yaml2obj-elf-section-basic.yaml [yaml2obj][ELF] Add an optional `Size` field to the YAML section declaration. 2014-05-16 16:01:00 +00:00
yaml2obj-elf-section-invalid-size.yaml [yaml2obj][ELF] Add an optional `Size` field to the YAML section declaration. 2014-05-16 16:01:00 +00:00
yaml2obj-elf-symbol-LocalGlobalWeak.yaml
yaml2obj-elf-symbol-basic.yaml
yaml2obj-elf-symbol-visibility.yaml [ELF][yaml2obj] Handle additional MIPS specific st_other field flags 2014-11-06 22:46:24 +00:00
yaml2obj-readobj.test [yaml2obj] Add "-o" command line option to specify an output file name. 2014-05-15 16:14:02 +00:00