llvm-project/lld/test/pecoff
Rui Ueyama 92b5979cb5 PECOFF: Fix symbol aliases
Weak aliases defined using /alternatename command line option were getting
wrong RVAs in the final output because of wrong atom ordinal. Alias atoms
were assigned large ordinals than any other regular atoms because they were
instantiated after other atoms and just got new (larger) ordinals.

Atoms are sorted by its file and atom ordinals in the order pass. Alias
atoms were located after all other atoms in the same file.

An alias atom's ordinal needs to be smaller than its alias target but larger
than the atom appeared before the target -- so that the alias is located
between the two. Since an alias has no size, the alias target will be located
at the same location as the alias.

In this patch, I made a gap between two regular atoms so that we can put
aliases after instantiating them (without re-numbering existing atoms).

llvm-svn: 229762
2015-02-18 23:11:48 +00:00
..
Inputs PECOFF: Fix I386_DIR32 relocation to an absolute symbol 2015-02-05 07:22:53 +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: Fix symbol aliases 2015-02-18 23:11:48 +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: Move error check for invalid command line combination to validateImpl. 2015-02-06 23:09:13 +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 PECOFF: Fix I386_DIR32 relocation to an absolute symbol 2015-02-05 07:22:53 +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