summaryrefslogtreecommitdiffstats
path: root/lld/lib/ReaderWriter/ELF/File.h
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2013-04-03 21:03:19 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2013-04-03 21:03:19 +0000
commit26cf0b5130bb99a4fef232733c0681eb8e315268 (patch)
tree8c0f0db789d91d37dba6175871627a298842147e /lld/lib/ReaderWriter/ELF/File.h
parent2025e8b82092978bb268a818518de28de73a69cc (diff)
downloadbcm5719-llvm-26cf0b5130bb99a4fef232733c0681eb8e315268.tar.gz
bcm5719-llvm-26cf0b5130bb99a4fef232733c0681eb8e315268.zip
Update for API change for handling mips64el.
llvm-svn: 178695
Diffstat (limited to 'lld/lib/ReaderWriter/ELF/File.h')
-rw-r--r--lld/lib/ReaderWriter/ELF/File.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/lld/lib/ReaderWriter/ELF/File.h b/lld/lib/ReaderWriter/ELF/File.h
index 450de6bae38..cbc2fff9895 100644
--- a/lld/lib/ReaderWriter/ELF/File.h
+++ b/lld/lib/ReaderWriter/ELF/File.h
@@ -576,8 +576,12 @@ private:
if (!((rai.r_offset >= symbol->st_value) &&
(rai.r_offset < symbol->st_value + content.size())))
continue;
+ bool isMips64EL = _objFile->isMips64EL();
+ Kind kind = (Kind) rai.getType(isMips64EL);
+ uint32_t symbolIndex = rai.getSymbol(isMips64EL);
auto *ERef = new (_readerStorage)
- ELFReference<ELFT>(&rai, rai.r_offset - symbol->st_value, nullptr);
+ ELFReference<ELFT>(&rai, rai.r_offset - symbol->st_value, nullptr,
+ kind, symbolIndex);
_references.push_back(ERef);
}
@@ -586,8 +590,12 @@ private:
for (auto &ri : rri->second) {
if ((ri.r_offset >= symbol->st_value) &&
(ri.r_offset < symbol->st_value + content.size())) {
+ bool isMips64EL = _objFile->isMips64EL();
+ Kind kind = (Kind) ri.getType(isMips64EL);
+ uint32_t symbolIndex = ri.getSymbol(isMips64EL);
auto *ERef = new (_readerStorage)
- ELFReference<ELFT>(&ri, ri.r_offset - symbol->st_value, nullptr);
+ ELFReference<ELFT>(&ri, ri.r_offset - symbol->st_value, nullptr,
+ kind, symbolIndex);
// Read the addend from the section contents
// TODO : We should move the way lld reads relocations totally from
// ELFObjectFile
OpenPOWER on IntegriCloud