diff options
author | Rui Ueyama <ruiu@google.com> | 2014-04-30 03:31:46 +0000 |
---|---|---|
committer | Rui Ueyama <ruiu@google.com> | 2014-04-30 03:31:46 +0000 |
commit | 680210fe7de053f4745c01e8dbe99bd113f2c93a (patch) | |
tree | c290d17c1d4d579d13758a882d59e013ac80837a /clang/test/Headers/stddefneeds.cpp | |
parent | bc03586bccd22d034810f3f58090ef53ed3c4e75 (diff) | |
download | bcm5719-llvm-680210fe7de053f4745c01e8dbe99bd113f2c93a.tar.gz bcm5719-llvm-680210fe7de053f4745c01e8dbe99bd113f2c93a.zip |
[PECOFF] Fix priority of locally imported symbols.
Linker should create _imp_ symbols for local use only when such
symbols cannot be resolved in any other way. If it overrides real
imported symbols, such symbols remain virtually unresolved without
error, causing odd issues. I observed that a program linked with
LLD entered an infinite loop before reaching main() because of
this issue.
This patch moves the virtual file creating _imp_ symbols to the
very end of the input file list. Previously, the file is at the end
of the library file group. Linker might revisit the group many times,
so it was not really at the end of the input file list.
llvm-svn: 207605
Diffstat (limited to 'clang/test/Headers/stddefneeds.cpp')
0 files changed, 0 insertions, 0 deletions