llvm/test/MC/ELF
Michael Kuperstein 5020a9198d [X86] Avoid over-relaxation of 8-bit immediates in integer arithmetic instructions.
Only consider an instruction a candidate for relaxation if the last operand of the 
instruction is an expression. We previously checked whether any operand is an expression,
which is useless, since for all instructions concerned, the only operand that may be
affected by relaxation is the last one.
In addition, this removes the check for having RIP as an argument, since it was 
plain wrong - even when one of the arguments is RIP, relaxation may still be needed.

This fixes PR9807.

Patch by: david.l.kreitzer@intel.com
Differential Revision: http://reviews.llvm.org/D10766

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@241152 91177308-0d34-0410-b5e6-96231b3b80d8
2015-07-01 10:54:42 +00:00
..
ARM
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.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +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 Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
cfi-advance-loc2.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
cfi-def-cfa-offset.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
cfi-def-cfa-register.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
cfi-def-cfa.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
cfi-escape.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
cfi-large-model.s Use CIE version 1 for .eh_frame. 2015-04-27 22:04:24 +00:00
cfi-offset.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
cfi-reg.s
cfi-register.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
cfi-rel-offset2.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
cfi-rel-offset.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
cfi-remember.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
cfi-restore.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
cfi-same-value.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +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 CIE version 1 for .eh_frame. 2015-04-27 22:04:24 +00:00
cfi-undefined.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
cfi-version.ll [DWARF] Add CIE header fields address_size and segment_size when generating dwarf-4 2015-05-12 15:25:08 +00:00
cfi-window-save.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
cfi-zero-addr-delta.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
cfi.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
comdat-dup-group-name.s Omit unused section symbols from the symbol table. 2015-06-04 15:33:30 +00:00
comdat-reloc.s Write sections mostly in one pass. 2015-04-30 14:21:49 +00:00
comdat.s Omit unused section symbols from the symbol table. 2015-06-04 15:33:30 +00:00
common2.s Relax these tests a bit. 2015-05-22 21:37:13 +00:00
common-error1.s Produce errors when an assignment expression would use a common symbol. 2015-01-19 17:30:24 +00:00
common-error2.s Produce errors when an assignment expression would use a common symbol. 2015-01-19 17:30:24 +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 Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
diff2.s
diff.s
discriminator.s Diagnose undefined temporary symbols. 2015-06-25 20:10:45 +00:00
dot-symbol-assignment.s
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.s Omit unused section symbols from the symbol table. 2015-06-04 15:33:30 +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 Omit unused section symbols from the symbol table. 2015-06-04 15:33:30 +00:00
many-sections-3.s Don't get confused with sections whose section number is reserved. 2015-06-24 14:48:54 +00:00
many-sections.s Omit unused section symbols from the symbol table. 2015-06-04 15:33:30 +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 Fix a regression in .pop_section. 2015-06-08 20:08:55 +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] Avoid over-relaxation of 8-bit immediates in integer arithmetic instructions. 2015-07-01 10:54:42 +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-arith.s
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 Revert r240302 ("Bring r240130 back."). 2015-06-23 11:31:32 +00:00
relocation-pc.s Don't constrain the section order in tests that don't depend on it. 2015-04-29 13:55:07 +00:00
relocation.s Handle 16 bit PC relative relocations. 2015-06-06 02:29:56 +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 Omit unused section symbols from the symbol table. 2015-06-04 15:33:30 +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 Write the section header string table directly to the output stream. 2015-04-29 20:25:24 +00:00
section.s Relax these tests a bit. 2015-05-22 21:37:13 +00:00
set.s
size.s Expand variables when evaluating absolute expressions. 2015-03-04 22:03:21 +00:00
sleb.s
strtab-suffix-opt.s Don't special case undefined symbol when deciding the symbol order. 2015-05-28 21:59:34 +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 MC: Allow multiple comma-separated expressions on the .uleb128 directive. 2015-02-19 20:24:04 +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