Reland r330223, "COFF: Merge .idata, .didat and .edata into .rdata by default.",...
authorPeter Collingbourne <peter@pcc.me.uk>
Tue, 17 Apr 2018 23:28:52 +0000 (23:28 +0000)
committerPeter Collingbourne <peter@pcc.me.uk>
Tue, 17 Apr 2018 23:28:52 +0000 (23:28 +0000)
commit66f1c9a85816f1fcd4499708defbc94f2a416510
treef242b5381e3a865582063e95f84c5d53b4c04119
parent94aa62e48a1eea0a9e2fbdff5e3dc8d4368afc66
Reland r330223, "COFF: Merge .idata, .didat and .edata into .rdata by default.", which was reverted in r330228.

In this reland I removed an unnecessary use of /debug in the test
delayimports32.test and used the /pdbaltpath flag in the test
pdb-publics-import.test, both of which avoid embedding absolute PDB
paths in executables which could affect later RVAs.

Original commit message:
> COFF: Merge .idata, .didat and .edata into .rdata by default.
>
> This saves a little space and matches what link.exe does.
>
> Tested using the chromium Windows trybots:
> https://chromium-review.googlesource.com/c/chromium/src/+/1014784

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

llvm-svn: 330233
lld/COFF/Driver.cpp
lld/test/COFF/arm64-relocs-imports.test
lld/test/COFF/delayimports-armnt.yaml
lld/test/COFF/delayimports.test
lld/test/COFF/delayimports32.test
lld/test/COFF/export-armnt.yaml
lld/test/COFF/hello32.test
lld/test/COFF/imports.test
lld/test/COFF/pdb-publics-import.test
lld/test/COFF/symtab.test