llvm/test/MC/COFF
Rui Ueyama a24db2314e MC/COFF: Do not emit forward associative section referenceds.
MSVC link.exe cannot handle associative sections that refer later
sections in the section header. Technically, such COFF object doesn't
violate the Microsoft COFF spec, as the spec doesn't say anything
about that, but still we should avoid doing that to make it compatible
with MS tools.

This patch assigns smaller section numbers to non-associative sections
and larger numbers to associative sections. This should resolve the
compatibility issue.

Differential Revision: https://reviews.llvm.org/D30080

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295464 91177308-0d34-0410-b5e6-96231b3b80d8
2017-02-17 17:32:54 +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
alias.s Fix pr24486. 2015-10-05 12:07:05 +00:00
align-nops.s
bad-expr.s [Assembler] Make fatal assembler errors non-fatal 2015-11-17 10:00:43 +00:00
basic-coff-64.s [MC] Add support for generating COFF CRCs 2015-09-01 21:23:58 +00:00
basic-coff.s [MC] Add support for generating COFF CRCs 2015-09-01 21:23:58 +00:00
bigobj.py MC, COFF: Make bigobj test compatible with python3 2014-10-14 22:35:11 +00:00
bss_section.ll MC: Emit COFF section flags in the "proper" order 2015-02-07 08:26:40 +00:00
bss.s
comm-align.s COFF: Don't oversize COMMON symbols when targeting BFD ld 2014-10-08 06:38:53 +00:00
comm.ll MC: Support aligned COMMON symbols for COFF 2014-09-21 09:18:07 +00:00
comm.s MC: Support aligned COMMON symbols for COFF 2014-09-21 09:18:07 +00:00
const-gv-with-rel-init.ll MC: Emit COFF section flags in the "proper" order 2015-02-07 08:26:40 +00:00
cross-section-relative.ll CodeGen: Use PLT relocations for relative references to unnamed_addr functions. 2016-04-22 20:40:10 +00:00
cross-section-relative.s Revise test to run llc and llvm-mc separately. 2015-05-28 21:49:50 +00:00
cv-compiler-info.ll Emit S_COMPILE3 record once per TU rather than once per function 2016-11-02 21:30:35 +00:00
cv-def-range-gap.s [CodeView] Fix off-by-one error in def range gap emission 2017-01-24 16:57:55 +00:00
cv-def-range.s [codeview] Add new directives to record inlined call site line info 2016-09-07 16:15:31 +00:00
cv-empty-file-table.s [codeview] Avoid emitting an empty file checksum table 2016-06-08 17:50:29 +00:00
cv-empty-linetable.s [codeview] Add new directives to record inlined call site line info 2016-09-07 16:15:31 +00:00
cv-errors.s Give an x86 assembler test a triple 2016-09-08 15:40:43 +00:00
cv-inline-linetable-infloop.s [codeview] Add new directives to record inlined call site line info 2016-09-07 16:15:31 +00:00
cv-inline-linetable-unlikely.s [codeview] Add new directives to record inlined call site line info 2016-09-07 16:15:31 +00:00
cv-inline-linetable-unreachable.s [codeview] Add new directives to record inlined call site line info 2016-09-07 16:15:31 +00:00
cv-inline-linetable.s [codeview] Add new directives to record inlined call site line info 2016-09-07 16:15:31 +00:00
cv-loc-cross-section.s Let test pass for builds that support X86, but do not default to it 2016-10-11 16:34:49 +00:00
cv-loc.s [codeview] Add new directives to record inlined call site line info 2016-09-07 16:15:31 +00:00
diff.s MC: Calculate intra-section symbol differences correctly for COFF 2015-02-09 06:31:31 +00:00
directive-section-characteristics.ll MC, COFF: Align section contents to a four byte boundary 2015-02-11 22:22:30 +00:00
early-dce.s
eh-frame.s
feat00.s llvm-readobj: pretty-print special COFF section names 2014-09-20 00:25:06 +00:00
file.s llvm-readobj: pretty-print special COFF section names 2014-09-20 00:25:06 +00:00
global_ctors_dtors.ll [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
initialised-data.ll MC: Emit COFF section flags in the "proper" order 2015-02-07 08:26:40 +00:00
invalid-def.s [Assembler] Make fatal assembler errors non-fatal 2015-11-17 10:00:43 +00:00
invalid-endef.s [Assembler] Make fatal assembler errors non-fatal 2015-11-17 10:00:43 +00:00
invalid-scl-range.s [Assembler] Make fatal assembler errors non-fatal 2015-11-17 10:00:43 +00:00
invalid-scl.s [Assembler] Make fatal assembler errors non-fatal 2015-11-17 10:00:43 +00:00
invalid-type-range.s
invalid-type.s [Assembler] Make fatal assembler errors non-fatal 2015-11-17 10:00:43 +00:00
ir-to-imgrel.ll X86: Form IMGREL relocations for LLVM Functions 2015-03-06 08:11:32 +00:00
label-undefined.s [Assembler] Make fatal assembler errors non-fatal 2015-11-17 10:00:43 +00:00
linker-options.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
linkonce-invalid.s
linkonce.s
lit.local.cfg
lset0.s
module-asm.ll
offset.s
pr23025.s Add a proper fix for pr23025. 2015-04-17 11:27:13 +00:00
pr28462.s [MC, COFF] Permit a variable to be redefined 2016-07-08 21:54:16 +00:00
rdata.ll
relax-reloc.s Don't crash trying to relax 32 loads on COFF. 2016-07-07 14:00:07 +00:00
relocation-imgrel.s
safeseh.s [MC] Correctly escape .safeseh's symbol 2015-07-13 18:51:15 +00:00
secidx-diagnostic.s [Assembler] Make fatal assembler errors non-fatal 2015-11-17 10:00:43 +00:00
secidx.s Fix COFF section index relocation should be 16 bits, not 32 2014-10-08 18:01:49 +00:00
secrel32.s
secrel-variant.s
section-comdat-conflict2.s
section-comdat-conflict.s
section-comdat.s MC/COFF: Do not emit forward associative section referenceds. 2017-02-17 17:32:54 +00:00
section-invalid-flags.s
section-name-encoding.s WinCOFFObjectWriter: optimize the string table for common suffices 2014-09-29 22:43:20 +00:00
section-passthru-flags.s MC: Emit COFF section flags in the "proper" order 2015-02-07 08:26:40 +00:00
section.s [MC] Handle discardable COFF sections in assembly 2016-09-14 22:41:50 +00:00
seh-align1.s
seh-align2.s
seh-align3.s
seh-linkonce.s
seh-section-2.s [MC] Create unique .pdata sections for every .text section 2016-05-02 23:22:18 +00:00
seh-section.s [MC] Create unique .pdata sections for every .text section 2016-05-02 23:22:18 +00:00
seh-stackalloc-zero.s
seh.s
simple-fixups.s [MC, COFF] Support link /incremental conditionally 2015-12-21 22:09:27 +00:00
stdin.s Fix bug where WinCOFFObjectWriter would assume starting from an empty output. 2015-11-18 15:24:17 +00:00
switch-relocations.ll
symbol-alias.s
symbol-fragment-offset-64.s [MC] Add support for generating COFF CRCs 2015-09-01 21:23:58 +00:00
symbol-fragment-offset.s [MC] Add support for generating COFF CRCs 2015-09-01 21:23:58 +00:00
symbol-mangling.ll
temporary-alias.s MC: Simplify handling of temporary symbols in COFF writer. 2015-11-26 23:29:27 +00:00
timestamp.s Make WinCOFFObjectWriter.cpp's timestamp writing not use ENABLE_TIMESTAMPS 2016-01-06 19:05:19 +00:00
tricky-names.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
weak-alias-local.s coff: fix weak alias to local. 2016-05-26 20:31:00 +00:00
weak-val.s coff: fix the section of weak symbols. 2016-05-26 18:48:23 +00:00
weak.s coff: fix weak alias to local. 2016-05-26 20:31:00 +00:00