diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2014-05-03 19:57:04 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2014-05-03 19:57:04 +0000 |
commit | 3d082fa50704f55a3c6d25c9d6b25d652e7d84ae (patch) | |
tree | a3aff89a7742699070c17f25e005b1f04fdeb4a7 /clang/lib/Serialization/ModuleManager.cpp | |
parent | 834652ade026fa990a110c8bc572f988d94a18a5 (diff) | |
download | bcm5719-llvm-3d082fa50704f55a3c6d25c9d6b25d652e7d84ae.tar.gz bcm5719-llvm-3d082fa50704f55a3c6d25c9d6b25d652e7d84ae.zip |
Fix pr19645.
The fix itself is fairly simple: move getAccessVariant to MCValue so that we
replace the old weak expression evaluation with the far more general
EvaluateAsRelocatable.
This then requires that EvaluateAsRelocatable stop when it finds a non
trivial reference kind. And that in turn requires the ELF writer to look
harder for weak references.
Last but not least, this found a case where we were being bug by bug
compatible with gas and accepting an invalid input. I reported pr19647
to track it.
llvm-svn: 207920
Diffstat (limited to 'clang/lib/Serialization/ModuleManager.cpp')
0 files changed, 0 insertions, 0 deletions