summaryrefslogtreecommitdiff
path: root/include/llvm/Object
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2014-04-02 20:00:33 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2014-04-02 20:00:33 +0000
commit04194e05db9a358265ee703d6056513babf2d6ac (patch)
treeb2a44ab0bed70fd081a3e632b80e794898e0df59 /include/llvm/Object
parentadb852ddf340dd294b7db930bab12ed1d1af917b (diff)
downloadllvm-04194e05db9a358265ee703d6056513babf2d6ac.tar.gz
llvm-04194e05db9a358265ee703d6056513babf2d6ac.tar.bz2
llvm-04194e05db9a358265ee703d6056513babf2d6ac.tar.xz
Add back an assert that was lost in the ELFObjectFile.h split.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@205456 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Object')
-rw-r--r--include/llvm/Object/ELFObjectFile.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/llvm/Object/ELFObjectFile.h b/include/llvm/Object/ELFObjectFile.h
index 7dcd4cf08c..be5ed9b611 100644
--- a/include/llvm/Object/ELFObjectFile.h
+++ b/include/llvm/Object/ELFObjectFile.h
@@ -625,6 +625,9 @@ ELFObjectFile<ELFT>::getRelocationSymbol(DataRefImpl Rel) const {
template <class ELFT>
error_code ELFObjectFile<ELFT>::getRelocationAddress(DataRefImpl Rel,
uint64_t &Result) const {
+ assert((EF.getHeader()->e_type == ELF::ET_EXEC ||
+ EF.getHeader()->e_type == ELF::ET_DYN) &&
+ "Only executable and shared objects files have relocation addresses");
Result = getROffset(Rel);
return object_error::success;
}
@@ -632,6 +635,8 @@ error_code ELFObjectFile<ELFT>::getRelocationAddress(DataRefImpl Rel,
template <class ELFT>
error_code ELFObjectFile<ELFT>::getRelocationOffset(DataRefImpl Rel,
uint64_t &Result) const {
+ assert(EF.getHeader()->e_type == ELF::ET_REL &&
+ "Only relocatable object files have relocation offsets");
Result = getROffset(Rel);
return object_error::success;
}