llvm-project/lld/test/ELF
Igor Kudrin fea8ed50ef [ELF/AArch64] Fix overflow checks for R_AARCH64_{ABS,PREL}{16,32} relocations.
ABI specifies the allowed range for these relocations as 2^(n-1) <= X < 2^n.

The patch fixes checks and introduces precise tests for these relocations.

Differential revision: http://reviews.llvm.org/D14957

llvm-svn: 254146
2015-11-26 10:05:24 +00:00
..
Inputs [ELF/AArch64] Fix overflow checks for R_AARCH64_{ABS,PREL}{16,32} relocations. 2015-11-26 10:05:24 +00:00
aarch64-abs16.s [ELF/AArch64] Fix overflow checks for R_AARCH64_{ABS,PREL}{16,32} relocations. 2015-11-26 10:05:24 +00:00
aarch64-abs32.s [ELF/AArch64] Fix overflow checks for R_AARCH64_{ABS,PREL}{16,32} relocations. 2015-11-26 10:05:24 +00:00
aarch64-call26-error.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
aarch64-data-relocs.s [ELF/AArch64] Fix overflow checks for R_AARCH64_{ABS,PREL}{16,32} relocations. 2015-11-26 10:05:24 +00:00
aarch64-hi21-error.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
aarch64-jump26-error.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
aarch64-lo21-error.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
aarch64-prel16.s [ELF/AArch64] Fix overflow checks for R_AARCH64_{ABS,PREL}{16,32} relocations. 2015-11-26 10:05:24 +00:00
aarch64-prel32.s [ELF/AArch64] Fix overflow checks for R_AARCH64_{ABS,PREL}{16,32} relocations. 2015-11-26 10:05:24 +00:00
aarch64-relocs.s [ELF/AArch64] Add support for LDST8_ABS_LO12_NC/LDST64_ABS_LO12_NC. 2015-11-20 21:35:38 +00:00
allow-multiple-definition.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
allow-shlib-undefined.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
archive.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
as-needed.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
basic-aarch64.s Revert "ELF: Make .note.GNU-stack more compatible with traditional linkers." 2015-11-24 18:48:16 +00:00
basic-freebsd.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
basic-mips.s Revert "ELF: Make .note.GNU-stack more compatible with traditional linkers." 2015-11-24 18:48:16 +00:00
basic.s Revert "ELF: Make .note.GNU-stack more compatible with traditional linkers." 2015-11-24 18:48:16 +00:00
basic32.s Revert "ELF: Make .note.GNU-stack more compatible with traditional linkers." 2015-11-24 18:48:16 +00:00
basic64be.s Revert "ELF: Make .note.GNU-stack more compatible with traditional linkers." 2015-11-24 18:48:16 +00:00
bss.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
comdat.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
common.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
default-output.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
discard-locals.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
discard-none.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
dt_flags.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
duplicate-internal.s [ELF] Prevent SEGFAULT in case of conflict with an internally defined symbol. 2015-11-19 19:08:45 +00:00
dynamic-reloc-index.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
dynamic-reloc-weak.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
dynamic-reloc.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
eh-frame-merge.s Revert "ELF: Make .note.GNU-stack more compatible with traditional linkers." 2015-11-24 18:48:16 +00:00
eh-frame-plt.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
eh-frame-rel.s Fix Elf_Rel processing for .eh_frame. 2015-11-23 15:28:28 +00:00
eh-frame-type.test Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
empty-archive.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
emulation.s [ELF/AArch64] Accept -m aarch64linux. 2015-11-20 02:48:53 +00:00
end-preserve.s [ELF] Define symbols "_end" and "end" if referenced. 2015-11-20 02:32:35 +00:00
end-update.s [ELF] Define symbols "_end" and "end" if referenced. 2015-11-20 02:32:35 +00:00
end.s [ELF] Define symbols "_end" and "end" if referenced. 2015-11-20 02:32:35 +00:00
entry.s [ELF] Define symbols "_end" and "end" if referenced. 2015-11-20 02:32:35 +00:00
gc-sections-eh.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
gc-sections.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
global_offset_table.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
gnu-hash-table.s Revert "ELF: Make .note.GNU-stack more compatible with traditional linkers." 2015-11-24 18:48:16 +00:00
gnu-unique.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
gnustack.s ELF: Omit PT_GNU_STACK segment if -z execstack is provided. 2015-11-24 23:42:33 +00:00
got-aarch64.s Reapply fixed r253967. 2015-11-24 10:15:50 +00:00
got.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
incompatible-ar-first.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
incompatible.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
init-fini.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
invalid-cie-length.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
invalid-cie-length2.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
invalid-cie-reference.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
invalid-elf.test Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
invalid-fde-rel.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
invalid-relocations.test Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
libsearch.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
linkerscript-ouputformat.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
linkerscript-outputarch.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
linkerscript-sections.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
linkerscript.s [ELF] Reapply r254031 - LinkerScript: lookup absolute paths under sysroot 2015-11-26 05:53:00 +00:00
linkerscript2.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
lit.local.cfg
local-dynamic.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
local-got-shared.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
local-got.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
local.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
many-sections.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
merge-invalid-size.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
merge-shared.s Revert "ELF: Make .note.GNU-stack more compatible with traditional linkers." 2015-11-24 18:48:16 +00:00
merge-string-align.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
merge-string-error.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
merge-string-no-null.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
merge-string.s Revert "ELF: Make .note.GNU-stack more compatible with traditional linkers." 2015-11-24 18:48:16 +00:00
merge-sym.s Revert "ELF: Make .note.GNU-stack more compatible with traditional linkers." 2015-11-24 18:48:16 +00:00
merge.s Revert "ELF: Make .note.GNU-stack more compatible with traditional linkers." 2015-11-24 18:48:16 +00:00
mips-call16.s [ELF2][MIPS] Support R_MIPS_CALL16 relocation 2015-11-25 20:58:52 +00:00
mips-dynamic.s Reapply fixed r253967. 2015-11-24 10:15:50 +00:00
mips-dynsym-sort.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
mips-gnu-hash.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
mips-got-relocs.s Reapply fixed r253967. 2015-11-24 10:15:50 +00:00
mips-relocs.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
new-dtags.test Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
no-inhibit-exec.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
no-obj.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
no-symtab.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
no-undefined.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
output-section.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
plt-aarch64.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
plt-i686.s Reapply r254098. 2015-11-25 22:15:01 +00:00
plt.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
ppc64-addr16-error.s [ELF] Factor out relocation checks into separate functions. 2015-11-26 09:49:44 +00:00
ppc64-rel-calls.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
ppc64-relocs.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
ppc64-shared-rel-toc.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
ppc64-toc-restore.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
ppc64-weak-undef-call-shared.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
ppc64-weak-undef-call.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
pre_init_fini_array.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
pre_init_fini_array_missing.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
progname.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
program-header-layout.s Revert "ELF: Make .note.GNU-stack more compatible with traditional linkers." 2015-11-24 18:48:16 +00:00
relative-dynamic-reloc-ppc64.s Revert "ELF: Make .note.GNU-stack more compatible with traditional linkers." 2015-11-24 18:48:16 +00:00
relative-dynamic-reloc.s Revert "ELF: Make .note.GNU-stack more compatible with traditional linkers." 2015-11-24 18:48:16 +00:00
relocatable.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
relocation-absolute.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
relocation-common.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
relocation-copy-i686.s [ELF] - R_386_COPY relocation implemented (x86) 2015-11-25 11:27:40 +00:00
relocation-copy.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
relocation-i686.s Reapply r254098. 2015-11-25 22:15:01 +00:00
relocation-in-merge.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
relocation-local.s Revert "ELF: Make .note.GNU-stack more compatible with traditional linkers." 2015-11-24 18:48:16 +00:00
relocation-past-merge-end.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
relocation-undefined-weak.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
relocation.s Revert "ELF: Make .note.GNU-stack more compatible with traditional linkers." 2015-11-24 18:48:16 +00:00
relro.s Reapply fixed r253967. 2015-11-24 10:15:50 +00:00
resolution.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
section-align-0.test Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
section-layout.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
section-name.s Reapply fixed r253967. 2015-11-24 10:15:50 +00:00
section-symbol.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
shared-be.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
shared.s Revert "ELF: Make .note.GNU-stack more compatible with traditional linkers." 2015-11-24 18:48:16 +00:00
soname.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
soname2.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
startstop-shared.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
startstop.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
string-table.s Revert "ELF: Make .note.GNU-stack more compatible with traditional linkers." 2015-11-24 18:48:16 +00:00
strip-all.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
symbols.s Revert "ELF: Make .note.GNU-stack more compatible with traditional linkers." 2015-11-24 18:48:16 +00:00
sysroot.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
tls-align.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
tls-dynamic.s Remove trailing whitespaces and untabify. 2015-11-20 22:47:40 +00:00
tls-error.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
tls-got.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
tls-i686.s [ELF/x86] Implemented R_386_TLS_LE_32, R_386_TLS_LE relocations. 2015-11-25 20:41:53 +00:00
tls-mismatch.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
tls-opt.s [ELF] - Implemented optimizations for @tlsld and @tlsgd 2015-11-25 21:46:05 +00:00
tls-static.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
tls.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
undef-start.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
undef.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
undefined-opt.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
visibility.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
whole-archive.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
writable-merge.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
x86-64-reloc-32-error.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
x86-64-reloc-32S-error.s Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00