llvm/test/MC/ELF
Rafael Espindola 888824fa23 Accept subtractions involving a weak symbol.
When a symbol S shows up in an expression in assembly there are two
possible interpretations
* The expression is referring to the value of S in this file.
* The expression is referring to the value after symbol resolution.

In the first case the assembler can reason about the value and try to
produce a relocation.
In the second case, that is only possible if the symbol cannot be
preempted.

Assemblers are not very consistent about which interpretation gets used.
This changes MC to agree with GAS in the case of an expression of the
form "Sym - WeakSym".

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@258329 91177308-0d34-0410-b5e6-96231b3b80d8
2016-01-20 18:57:48 +00:00
..
ARM [MC] Don't use the architecture to govern which object file format to use 2015-12-22 01:39:04 +00:00
abs.s
alias-reloc.s
alias-to-local.s Don't walk aliases from global to local symbols in comdats. 2015-04-17 08:46:11 +00:00
alias.s Omit unused section symbols from the symbol table. 2015-06-04 15:33:30 +00:00
align-bss.s
align-nops.s
align-size.s
align-text.s
align-zero.s [MC/ELF] Accept zero for .align directive 2015-09-08 18:59:47 +00:00
align.s Don't create empty sections just to look like gas. 2015-11-03 20:02:22 +00:00
bad-expr2.s
bad-expr3.s
bad-expr.s
bad-relocation.s
bad-section.s
basic-elf-32.s Revert r240302 ("Bring r240130 back."). 2015-06-23 11:31:32 +00:00
basic-elf-64.s Omit unused section symbols from the symbol table. 2015-06-04 15:33:30 +00:00
bracket-exprs.s [MC] Use LShr for constant evaluation of ">>" on ELF/arm64--darwin. 2015-04-28 01:37:11 +00:00
bracket.s
bss-large.ll
bss.ll
call-abs.s
cfi-adjust-cfa-offset.s Use SHT_X86_64_UNWIND on every OS. 2015-11-06 13:35:35 +00:00
cfi-advance-loc2.s Use SHT_X86_64_UNWIND on every OS. 2015-11-06 13:35:35 +00:00
cfi-def-cfa-offset.s Use SHT_X86_64_UNWIND on every OS. 2015-11-06 13:35:35 +00:00
cfi-def-cfa-register.s Use SHT_X86_64_UNWIND on every OS. 2015-11-06 13:35:35 +00:00
cfi-def-cfa.s Use SHT_X86_64_UNWIND on every OS. 2015-11-06 13:35:35 +00:00
cfi-escape.s Use SHT_X86_64_UNWIND on every OS. 2015-11-06 13:35:35 +00:00
cfi-large-model.s Use SHT_X86_64_UNWIND on every OS. 2015-11-06 13:35:35 +00:00
cfi-offset.s Use SHT_X86_64_UNWIND on every OS. 2015-11-06 13:35:35 +00:00
cfi-reg.s
cfi-register.s Use SHT_X86_64_UNWIND on every OS. 2015-11-06 13:35:35 +00:00
cfi-rel-offset2.s Use SHT_X86_64_UNWIND on every OS. 2015-11-06 13:35:35 +00:00
cfi-rel-offset.s Use SHT_X86_64_UNWIND on every OS. 2015-11-06 13:35:35 +00:00
cfi-remember.s Use SHT_X86_64_UNWIND on every OS. 2015-11-06 13:35:35 +00:00
cfi-restore.s Use SHT_X86_64_UNWIND on every OS. 2015-11-06 13:35:35 +00:00
cfi-same-value.s Use SHT_X86_64_UNWIND on every OS. 2015-11-06 13:35:35 +00:00
cfi-sections.s [DWARF] Add CIE header fields address_size and segment_size when generating dwarf-4 2015-05-12 15:25:08 +00:00
cfi-signal-frame.s Use SHT_X86_64_UNWIND on every OS. 2015-11-06 13:35:35 +00:00
cfi-undefined.s Use SHT_X86_64_UNWIND on every OS. 2015-11-06 13:35:35 +00:00
cfi-version.ll Accept dwarf version 5 for CIE versions. 2015-12-28 23:02:42 +00:00
cfi-window-save.s Use SHT_X86_64_UNWIND on every OS. 2015-11-06 13:35:35 +00:00
cfi-zero-addr-delta.s Use SHT_X86_64_UNWIND on every OS. 2015-11-06 13:35:35 +00:00
cfi.s Use SHT_X86_64_UNWIND on every OS. 2015-11-06 13:35:35 +00:00
comdat-dup-group-name.s Don't create empty sections just to look like gas. 2015-11-03 20:02:22 +00:00
comdat-reloc.s Don't create empty sections just to look like gas. 2015-11-03 20:02:22 +00:00
comdat.s Don't create empty sections just to look like gas. 2015-11-03 20:02:22 +00:00
common2.s Simplify local common output. 2015-11-03 18:50:51 +00:00
common-error1.s [Assembler] Make fatal assembler errors non-fatal 2015-11-17 10:00:43 +00:00
common-error2.s [Assembler] Make fatal assembler errors non-fatal 2015-11-17 10:00:43 +00:00
common-error3.s [MC] Common symbols weren't being checked for redeclaration which allowed an assembly file to generate an assertion in setCommon(): !isCommon(). This change allows redeclaration as long as the size and alignment match exactly, otherwise report a fatal error. 2015-06-06 20:12:40 +00:00
common-redeclare.s [MC] Common symbols weren't being checked for redeclaration which allowed an assembly file to generate an assertion in setCommon(): !isCommon(). This change allows redeclaration as long as the size and alignment match exactly, otherwise report a fatal error. 2015-06-06 20:12:40 +00:00
common.s Update tests to not be as dependent on section numbers. 2015-04-15 15:59:37 +00:00
comp-dir.s
compression.s Revert r240302 ("Bring r240130 back."). 2015-06-23 11:31:32 +00:00
debug-line2.s
debug-line.s Write section and section table entries in the same order. 2015-04-15 13:07:47 +00:00
debug-loc.s Remove unnecessary dependency on section and string positions. 2015-11-03 19:24:17 +00:00
diff2.s
diff.s
discriminator.s Diagnose undefined temporary symbols. 2015-06-25 20:10:45 +00:00
div-by-zero.s [MC] Don't crash on division by zero. 2015-09-11 20:47:35 +00:00
dot-symbol-assignment.s Simplify .org processing and make it a bit more powerful. 2015-11-04 23:50:29 +00:00
elf_directive_previous.s
elf_directive_section.s
empty-dwarf-lines.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
empty-twice.ll [llc/opt] Add an option to run all passes twice 2015-12-04 21:56:46 +00:00
empty.s Don't create empty sections just to look like gas. 2015-11-03 20:02:22 +00:00
entsize.ll [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
entsize.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
fde.s
file-double.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
file.s Relax these tests a bit. 2015-05-22 21:37:13 +00:00
gen-dwarf.s Don't print labels that on ELF are never used. 2015-03-11 04:20:31 +00:00
global-offset.s
gnu-type-diagnostics.s Revert part of r241149, "Fix PR23872: Integrated assembler error message when using .type directive with @ in AArch32 assembly." 2015-07-01 10:28:09 +00:00
gnu-type.s
got.s Don't create an unused _GLOBAL_OFFSET_TABLE_. 2015-05-28 15:20:00 +00:00
ident.s
ifunc-reloc.s Update tests to not be as dependent on section numbers. 2015-04-15 15:59:37 +00:00
invalid-symver.s
lcomm.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
leb128.s
lit.local.cfg
local-reloc.s Update tests to not be as dependent on section numbers. 2015-04-15 15:59:37 +00:00
many-sections-2.s Don't create empty sections just to look like gas. 2015-11-03 20:02:22 +00:00
many-sections-3.s Don't create empty sections just to look like gas. 2015-11-03 20:02:22 +00:00
many-sections.s Don't create empty sections just to look like gas. 2015-11-03 20:02:22 +00:00
merge.s Revert r240302 ("Bring r240130 back."). 2015-06-23 11:31:32 +00:00
n_bytes.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
no-fixup.s
no-reloc.s
nocompression.s
noexec.s Omit unused section symbols from the symbol table. 2015-06-04 15:33:30 +00:00
norelocation.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
offset.s
org.s
pic-diff.s
plt.s
popsection.s Remove unnecessary dependency on section and string positions. 2015-11-03 19:24:17 +00:00
pr9292.s
pr19430.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
pr19582.s MC: For variable symbols, maintain MCSymbol::Section as a cache. 2015-04-03 01:46:11 +00:00
relax-all-flag.s
relax-arith2.s [X86] Fix incorrect/inefficient pushw encodings for x86-64 targets 2015-07-05 10:25:41 +00:00
relax-arith3.s [X86] Avoid over-relaxation of 8-bit immediates in integer arithmetic instructions. 2015-07-01 10:54:42 +00:00
relax-arith4.s [X86] Fix incorrect/inefficient pushw encodings for x86-64 targets 2015-07-05 10:25:41 +00:00
relax-arith.s [X86] Add relaxtion logic for SBB instructions. 2015-12-15 00:09:23 +00:00
relax-crash.s
relax.s Relax these tests a bit. 2015-05-22 21:37:13 +00:00
reloc-same-name-section.s Omit unused section symbols from the symbol table. 2015-06-04 15:33:30 +00:00
relocation-386.s [ELF] elfiamcu triple should imply e_machine == EM_IAMCU 2015-11-04 11:21:50 +00:00
relocation-pc.s ELF can handle some relocations of the form -sym + constant. 2015-11-02 19:13:59 +00:00
relocation.s Accept subtractions involving a weak symbol. 2016-01-20 18:57:48 +00:00
rename.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
section-quoting.s
section-sym2.s Fix the interpretation of a 0 st_name. 2015-06-03 05:14:22 +00:00
section-sym-err.s
section-sym.s Don't create empty sections just to look like gas. 2015-11-03 20:02:22 +00:00
section-unique-err1.s Use a comma after the unique keyword. 2015-04-06 16:34:41 +00:00
section-unique-err2.s Use a comma after the unique keyword. 2015-04-06 16:34:41 +00:00
section-unique-err3.s Use a comma after the unique keyword. 2015-04-06 16:34:41 +00:00
section-unique-err4.s Use a comma after the unique keyword. 2015-04-06 16:34:41 +00:00
section-unique.s Don't create empty sections just to look like gas. 2015-11-03 20:02:22 +00:00
section.s Remove unnecessary dependency on section and string positions. 2015-11-03 19:24:17 +00:00
set.s
size.s Expand variables when evaluating absolute expressions. 2015-03-04 22:03:21 +00:00
sleb.s Convert tests under MC/ELF from macho-dump to llvm-readobj. 2015-08-14 15:16:37 +00:00
strtab-suffix-opt.s Don't create empty sections just to look like gas. 2015-11-03 20:02:22 +00:00
subsection.s
subtraction-error.s
symbol-names.s
symver-msvc.s Relax these tests a bit. 2015-05-22 21:37:13 +00:00
symver-pr23914.s Fix PR23914. 2015-06-22 23:36:03 +00:00
symver.s Omit unused section symbols from the symbol table. 2015-06-04 15:33:30 +00:00
tls-i386.s
tls.s Update tests to not be as dependent on section numbers. 2015-04-15 15:59:37 +00:00
type-propagate.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
type.s Relax these tests a bit. 2015-05-22 21:37:13 +00:00
uleb.s Convert tests under MC/ELF from macho-dump to llvm-readobj. 2015-08-14 15:16:37 +00:00
undef-temp.s Diagnose undefined temporary symbols. 2015-06-25 20:10:45 +00:00
undef.s Diagnose undefined temporary symbols. 2015-06-25 20:10:45 +00:00
version.s
weak-diff.s Compute A-B when A or B is weak. 2015-04-17 21:15:17 +00:00
weak-relocation.s
weak.s
weakref-plt.s
weakref-reloc.s Don't create an unused _GLOBAL_OFFSET_TABLE_. 2015-05-28 15:20:00 +00:00
weakref.s Omit unused section symbols from the symbol table. 2015-06-04 15:33:30 +00:00
x86_64-reloc-sizetest.s
zero.s