diff options
author | Rui Ueyama <ruiu@google.com> | 2014-05-23 00:02:42 +0000 |
---|---|---|
committer | Rui Ueyama <ruiu@google.com> | 2014-05-23 00:02:42 +0000 |
commit | f713cced0e39b258ce856743ef7fb61908206417 (patch) | |
tree | 13cbb7e0887931f4f341da7b2b686523f90cb841 /llvm/lib/Analysis/ScalarEvolution.cpp | |
parent | e756aa35717fb67d524cee3a95c006d3c4439db1 (diff) | |
download | bcm5719-llvm-f713cced0e39b258ce856743ef7fb61908206417.tar.gz bcm5719-llvm-f713cced0e39b258ce856743ef7fb61908206417.zip |
[PECOFF] Make a separate pass for /alternatename symbols.
/alternatename is a command line option to define a weak alias. You
can use it as /alternatename:foo=bar to define "foo" as a weak alias
for "bar".
Because it's a command line option, the weak alias mapping is in the
LinkingContext object, and not in a object file being read.
Previously, we looked up the mapping each time we read a new symbol
from a file, to check if there is a weak alias defined for the symbol.
That's not wrong, but had made function signature's a bit complicated --
we had to pass the mapping object to many functions. Now their
parameter lists are much cleaner.
This also has another (unrealized) benefit. parseFile() now read a
file and then add alias symbols to the file. In the first pass a
LinkingContext object is not used at all. That should make it easy
to read files from archive files speculatively, as the first pass
is free from side effect.
llvm-svn: 209486
Diffstat (limited to 'llvm/lib/Analysis/ScalarEvolution.cpp')
0 files changed, 0 insertions, 0 deletions