[PECOFF] Do not wrap the linker internal file with an archive file.
We wrapped the linker internal file with a virtual archive file, so that the linker internal file was linked only when it's actually used. This was to avoid __ImageBase being included to the resulting executable. __ImageBase used to occupy four bytes when emitted to executable. And then it turned out that the implementation of __ImageBase was wrong -- it shouldn't have been a regular atom but an absolute atom. Absolute atoms point to some memory location, but they don't occupy disk space themselves. So it wouldn't increase executable size (except the symbol table.) That means that it's OK to link the linker internal file unconditionally. So this patch does that, removing the wrapper archive file. Doing this simplifies the code. llvm-svn: 194127
Loading
Please register or sign in to comment