diff options
author | Simon Atanasyan <simon@atanasyan.com> | 2016-08-06 05:11:41 +0000 |
---|---|---|
committer | Simon Atanasyan <simon@atanasyan.com> | 2016-08-06 05:11:41 +0000 |
commit | 24c24fedbadb17d72a57b460271239dfbcc38b71 (patch) | |
tree | 4b73ee86228ef087e33425a08570d1834dacd11f /llvm/lib/Analysis/AliasAnalysisSummary.cpp | |
parent | ba04d3a620fe70bc7b29dd91e0bdfe5158046b47 (diff) | |
download | bcm5719-llvm-24c24fedbadb17d72a57b460271239dfbcc38b71.tar.gz bcm5719-llvm-24c24fedbadb17d72a57b460271239dfbcc38b71.zip |
[ELF][MIPS] Produce a correct and complete set of MIPS ELF header flags
The patch extends the `getMipsEFlags` function. Now in that function
we iterate over all object files, parse ELF header flags and merge them.
If a file is incompatible with previously analyzed ones we show an error
or warning. That can happen if, for example, we try to link files with
incompatible ABI, ISA, NAN encoding etc.
There is an alternative solution. We can check and merge flags and
reject incompatible input modules in the `isCompatible` function which
is called from the `SymbolTable::addFile` method. But in that case we
have to save and keep somewhere a merged ELF flags combination to use it
later in the writer.
Differential Revision: http://reviews.llvm.org/D23161
llvm-svn: 277911
Diffstat (limited to 'llvm/lib/Analysis/AliasAnalysisSummary.cpp')
0 files changed, 0 insertions, 0 deletions