aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2017-02-14 16:24:42 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2017-02-14 16:24:42 +0000
commit17ba44519ba85deb8d3db77b202dba75bc129f5c (patch)
tree47106d12f734c041397f482dbbd97ae0bb9489e6
parent6f732e026d3cbf7b6e85a879ed0ee7ab3260354a (diff)
downloadllvm-17ba44519ba85deb8d3db77b202dba75bc129f5c.zip
llvm-17ba44519ba85deb8d3db77b202dba75bc129f5c.tar.gz
llvm-17ba44519ba85deb8d3db77b202dba75bc129f5c.tar.bz2
Sign extend remaining implicit addends for consistency.
llvm-svn: 295062
-rw-r--r--lld/ELF/Target.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/lld/ELF/Target.cpp b/lld/ELF/Target.cpp
index d2c8391..e2a64dd 100644
--- a/lld/ELF/Target.cpp
+++ b/lld/ELF/Target.cpp
@@ -504,7 +504,7 @@ int64_t X86TargetInfo::getImplicitAddend(const uint8_t *Buf,
case R_386_PC32:
case R_386_PLT32:
case R_386_TLS_LE:
- return read32le(Buf);
+ return SignExtend64<32>(read32le(Buf));
}
}
@@ -2262,7 +2262,7 @@ int64_t MipsTargetInfo<ELFT>::getImplicitAddend(const uint8_t *Buf,
case R_MIPS_GPREL32:
case R_MIPS_TLS_DTPREL32:
case R_MIPS_TLS_TPREL32:
- return read32<E>(Buf);
+ return SignExtend64<32>(read32<E>(Buf));
case R_MIPS_26:
// FIXME (simon): If the relocation target symbol is not a PLT entry
// we should use another expression for calculation: