llvm-project/lld/test/pecoff
Rui Ueyama c4038ab5bf PECOFF: Do not use LayoutPass and instead use simpler one.
The LayoutPass is one of the slowest pass. This change is to skip
that pass. This change not only improve performance but also improve
maintainability of the code because the LayoutPass is pretty complex.

Previously we used the LayoutPass to sort all atoms in a specific way,
and reorder them again for PE/COFF in GroupedSectionPass.

I spent time on improving and fixing bugs in the LayoutPass (e.g.
r193029), but the pass is still hard to understand and hard to use.
It's better not to depend on that if we don't need. For PE/COFF, we
just wanted to sort atoms in the same order as the file order in the
command line.

The feature we used in the LayoutPass is now simplified to
compareByPosition function in OrderPass.cpp. The function is just 5
lines.

This patch changes the order of final output because it changes the
sort order a bit. The output is still correct, though.

llvm-svn: 227500
2015-01-29 22:12:50 +00:00
..
Inputs Fix --start-group/end-group. 2015-01-21 01:26:43 +00:00
alignment.test [PECOFF] Fix section alignment. 2014-11-14 21:33:07 +00:00
alternatename.test Fix REQUIRES lines added in r226951 and add the x86 feature if the X86 target was compiled in 2015-01-24 03:55:22 +00:00
armnt-ImageBase.test PE/COFF: use dyn_cast for the check of the target 2015-01-16 04:14:33 +00:00
armnt-addr32-exec.test ReaderWriter: adjust ARM target addresses for exec 2015-01-03 00:57:10 +00:00
armnt-addr32.test test: fix tests/buildbots 2015-01-01 03:39:48 +00:00
armnt-address-of-entry-point.test PECOFF: adjust the entry point on ARM NT 2015-01-04 20:26:45 +00:00
armnt-blx23t.test Fix REQUIRES lines added in r226951 and add the x86 feature if the X86 target was compiled in 2015-01-24 03:55:22 +00:00
armnt-branch24t.test Fix REQUIRES lines added in r226951 and add the x86 feature if the X86 target was compiled in 2015-01-24 03:55:22 +00:00
armnt-exports.s PE/COFF: teach ARMNT backend about ADDR32NB for exports 2015-01-07 04:20:26 +00:00
armnt-exports.test PE/COFF: teach ARMNT backend about ADDR32NB for exports 2015-01-07 04:20:26 +00:00
armnt-imports.test PE/COFF: add support to import functions in ARM NT 2015-01-08 04:19:08 +00:00
armnt-mov32t-exec.test Fix REQUIRES lines added in r226951 and add the x86 feature if the X86 target was compiled in 2015-01-24 03:55:22 +00:00
armnt-movt32t.test Fix REQUIRES lines added in r226951 and add the x86 feature if the X86 target was compiled in 2015-01-24 03:55:22 +00:00
armnt.test ReaderWriter: teach PE/COFF backend about ARM NT 2014-12-31 22:32:21 +00:00
associative.test Update test to reflect the true section contents 2014-10-09 08:45:51 +00:00
base-reloc.test [PECOFF] Fix section header. 2014-07-31 22:40:35 +00:00
baseaddr.test [PECOFF] Add file extensions to temporary files. 2013-12-27 08:37:40 +00:00
bss-section.test [PECOFF] Fix section header. 2014-07-31 22:40:35 +00:00
comdat.test [PECOFF] Add file extensions to temporary files. 2013-12-27 08:37:40 +00:00
common-symbol.test Fix REQUIRES lines added in r226951 and add the x86 feature if the X86 target was compiled in 2015-01-24 03:55:22 +00:00
conflicting-machine.test PE/COFF: add a check to ensure that we dont mix up architectures 2014-10-05 23:43:59 +00:00
delayimport.test [PECOFF] Fix 32-bit delay-import table. 2014-11-17 02:04:54 +00:00
dll.test [PECOFF] Set DLL bit in PE header if DLL. 2014-07-17 00:22:26 +00:00
dosstub.test [PECOFF] Infer subsystem from the entry point function. 2013-11-25 02:00:00 +00:00
drectve.test [PECOFF] Fix /include option in .drectve section. 2014-08-04 23:48:57 +00:00
dynamic.test PE/COFF: add a check to ensure that we dont mix up architectures 2014-10-05 23:43:59 +00:00
dynamicbase.test [PECOFF] Add file extensions to temporary files. 2013-12-27 08:37:40 +00:00
entry.test PECOFF: Do not use LayoutPass and instead use simpler one. 2015-01-29 22:12:50 +00:00
export-warning.test [PECOFF] Fix duplicate /export options 2014-09-23 23:49:41 +00:00
export.test [PECOFF] Improve /export compatibility. 2014-12-04 06:09:39 +00:00
exportlib.test [PECOFF] Add a test for r197803. 2014-01-09 01:11:48 +00:00
exportlib2.test [PECOFF] Fix exported symbols in an import library. 2014-12-05 21:52:02 +00:00
grouped-sections.test [PECOFF] Add file extensions to temporary files. 2013-12-27 08:37:40 +00:00
hello.test [PECOFF] Fix section header. 2014-07-31 22:40:35 +00:00
hello64.test Fix REQUIRES lines added in r226951 and add the x86 feature if the X86 target was compiled in 2015-01-24 03:55:22 +00:00
help.test [PECOFF] Fix /? option and add a test for the flag. 2013-09-24 17:59:30 +00:00
imagebase.test Fix REQUIRES lines added in r226951 and add the x86 feature if the X86 target was compiled in 2015-01-24 03:55:22 +00:00
importlib.test Fix REQUIRES lines added in r226951 and add the x86 feature if the X86 target was compiled in 2015-01-24 03:55:22 +00:00
include.test [ELF] Support --defsym option to define an absolute symbol. 2014-03-28 19:02:06 +00:00
lib.test Fix REQUIRES lines added in r226951 and add the x86 feature if the X86 target was compiled in 2015-01-24 03:55:22 +00:00
libarg.test [PECOFF] Fix arguments passed to lib.exe. 2014-03-14 05:04:08 +00:00
localyimported.test [PECOFF] Fix __imp_ prefix on x64. 2014-09-30 19:42:04 +00:00
long-section-name.test PECOFF: Use the string table for long section names in EXEs/DLLs 2014-11-04 00:53:57 +00:00
machinetype.test [PECOFF] Infer machine type from input object file 2014-10-07 01:38:46 +00:00
manifest.test [PECOFF] Add one more test for r206633. 2014-04-18 20:44:05 +00:00
merge-largest.test PECOFF: Do not use LayoutPass and instead use simpler one. 2015-01-29 22:12:50 +00:00
merge-same-size.test [PECOFF] Fix section header. 2014-07-31 22:40:35 +00:00
multi.test Fix REQUIRES lines added in r226951 and add the x86 feature if the X86 target was compiled in 2015-01-24 03:55:22 +00:00
noentry.test [PECOFF] Add a test for /noentry. 2013-12-27 08:19:21 +00:00
nonstandard-sections.test [PECOFF] Fix section header. 2014-07-31 22:40:35 +00:00
options.test PE/COFF: add a check to ensure that we dont mix up architectures 2014-10-05 23:43:59 +00:00
pe32plus.test Update to match LLVM r222216 2014-11-18 03:06:52 +00:00
reloc.test Fix REQUIRES lines added in r226951 and add the x86 feature if the X86 target was compiled in 2015-01-24 03:55:22 +00:00
reloc64.test Fix REQUIRES lines added in r226951 and add the x86 feature if the X86 target was compiled in 2015-01-24 03:55:22 +00:00
resource.test [PECOFF] Fix failing test. 2014-07-28 22:31:37 +00:00
responsefile.test [PECOFF] Print out command line if we have expanded response files. 2014-03-25 20:40:27 +00:00
safeseh.test [PECOFF] /safeseh:no on x64 is not an error 2014-09-18 21:18:05 +00:00
secrel.test [PECOFF] Fix SECREL relocations. 2014-11-06 01:03:23 +00:00
section-attribute.test [PECOFF] Set section characteristics based /section options. 2013-11-27 23:44:58 +00:00
section-renaming.test [PECOFF] Fix section header. 2014-07-31 22:40:35 +00:00
seh.test [PECOFF] Discard .debug sections. 2014-05-21 05:56:31 +00:00
seh64.test [PECOFF] Another Win64 relocation bug fix 2014-08-28 19:00:40 +00:00
subsystem.test [PECOFF] Infer subsystem from the entry point function. 2013-11-25 02:00:00 +00:00
tls.test [PECOFF] Support TLS callbacks. 2014-09-18 02:02:52 +00:00
trivial.test Update to match LLVM r222216 2014-11-18 03:06:52 +00:00
unknown-drectve.test [PECOFF] Improve parallelism. 2015-01-16 15:58:36 +00:00
weak-external.test [PECOFF] Add file extensions to temporary files. 2013-12-27 08:37:40 +00:00