- Nov 06, 2013
-
-
Rui Ueyama authored
/defaultlib options can be specified implicitly via the .drectve section, and it's pretty common that multiple object files add the same library, such as user32.lib, to the input. We shouldn't add the same library multiple times. llvm-svn: 194129
-
Rui Ueyama authored
llvm-svn: 194128
-
Rui Ueyama authored
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
-
Rui Ueyama authored
msvcrt.lib contains "/disallowlib" command line option in its .drectve section. I couldn't spot any documentation for the option. Ignore it for now so that we can link the library without error. llvm-svn: 194114
-
Rui Ueyama authored
Errors in .drectve section were silently ignored. This patch fixes the issue. llvm-svn: 194110
-
- Nov 05, 2013
-
-
Rui Ueyama authored
llvm-svn: 194089
-
Rui Ueyama authored
llvm-svn: 194037
-
Rafael Espindola authored
It was never transporting any value in addition to the error_code. llvm-svn: 194028
-
- Nov 04, 2013
-
-
Simon Atanasyan authored
Patch reviewed by Shankar Easwaran. llvm-svn: 194010
-
Rui Ueyama authored
llvm-svn: 194003
-
Rui Ueyama authored
llvm-svn: 193982
-
Rui Ueyama authored
This patch should fix the test when it runs on Windows, by allowing drive letter separator (colon) in the path. Now all LLD ELF tests passed on MSVC 2012 32-bit. Hooray! llvm-svn: 193978
-
Rui Ueyama authored
MSVC 2012 raises an error in the lambda passed to vector::find_if, while it seems valid code. Rewrote without high-order functions. llvm-svn: 193975
-
Rui Ueyama authored
llvm-svn: 193974
-
- Nov 02, 2013
-
-
Rafael Espindola authored
llvm-svn: 193913
-
Rui Ueyama authored
llvm-svn: 193911
-
Rui Ueyama authored
These tests assume that the created objects are for x86_64. These tests failed on non-x86_64 environments, such as 32 bit Windows. llvm-svn: 193910
-
Rui Ueyama authored
n_desc field in MachO string table was not initialized. On Unix, test/darwin/hello-world.objtxt did not fail because I think an nlist object is always allocated to a fresh heap initialized with zeros. On Windows, uninitialized fields are filled with 0xCC when compiled with /GZ. Because of that the test was failing on Windows. llvm-svn: 193909
-
Rui Ueyama authored
On Windows, neither "(" nor ")" are shell special characters, so -\( is passed as-is to LLD. Because of that this test was failing on Windows. llvm-svn: 193905
-
Rui Ueyama authored
This patch adds "-target x86_64" to the command line. Without this option, a 32 bit object file would be created on 32 bit machine, resulting in test failure. llvm-svn: 193904
-
- Nov 01, 2013
-
-
Rui Ueyama authored
Bugs that would be caught by this assertion would also be caught by RoundTripYAMLPass test. We've enabled the pass for PECOFF, so we can remove this. llvm-svn: 193886
-
Rui Ueyama authored
llvm-svn: 193885
-
Rui Ueyama authored
llvm-svn: 193883
-
Rui Ueyama authored
llvm-svn: 193882
-
Rui Ueyama authored
llvm-svn: 193881
-
Rui Ueyama authored
The data directory in the PE/COFF header consisted of list of data directory atoms. This patch changes it -- now there's only one data directory entry that contains former data directories. That's easier to handle in the writer as well as to write to/read from YAML/Native files. The main purpose of this refactoring is to enable RoundTrip tests for PE/COFF. There's no functionality change. llvm-svn: 193854
-
- Oct 31, 2013
-
-
Rui Ueyama authored
llvm-svn: 193797
-
Rui Ueyama authored
This reverts commit r193479. The atoms are already added to the file, so re-adding them caused the YAML writer to write the same atoms twice. That made the YAML reader to fail with "duplicate atom name" error. This is not the only error we've got for RoundTripYAMLPass for PECOFF, so we cannot enable the test yet. More fixes will come. Differential Revision: http://llvm-reviews.chandlerc.com/D2069 llvm-svn: 193762
-
- Oct 30, 2013
-
-
Rui Ueyama authored
llvm-svn: 193712
-
Michael J. Spencer authored
llvm-svn: 193662
-
- Oct 29, 2013
-
-
Rui Ueyama authored
llvm-svn: 193646
-
Shankar Easwaran authored
llvm-svn: 193588
-
Shankar Easwaran authored
llvm-svn: 193586
-
Shankar Easwaran authored
Enable this for the following flavors a) core b) gnu c) darwin Its disabled for the flavor PECOFF. Convenient markers are added with FIXME comments in the Driver that would be removed and code removed from each flavor. llvm-svn: 193585
-
Rui Ueyama authored
llvm-svn: 193584
-
Rui Ueyama authored
__ImageBase is an absolute symbol whose address is the same as the image base address. What we did before this patch was to create __ImageBase symbol as a symbol whose *contents* (not location) is the image base address, which is clearly wrong. llvm-svn: 193565
-
Rui Ueyama authored
llvm-svn: 193557
-
Rui Ueyama authored
This change has no effect now, but will be needed to emit BSS atoms to .bss section. llvm-svn: 193556
-
- Oct 28, 2013
-
-
Nick Kledzik authored
llvm-svn: 193551
-
- Oct 27, 2013
-
-
Chandler Carruth authored
intended for debugging and diagnostic output), just inspect the spelling to check for specific prefixes in drectve section flags. In addition to being significantly cheaper and not relying on a debugging interface, this also avoids creating a temporary string and binding it to StringRef variable. We then went on to access it after the memory had been deallocated. This bug too was caught by ASan. I love ASan so much. =] llvm-svn: 193487
-