summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Object/ObjectFile.cpp
diff options
context:
space:
mode:
authorJonas Devlieghere <jonas@devlieghere.com>2017-09-26 14:22:35 +0000
committerJonas Devlieghere <jonas@devlieghere.com>2017-09-26 14:22:35 +0000
commit8af2387b91cfcc1ac152f55307b86d76bbd55170 (patch)
tree7e7a74bf28f3aec26d8e50a6a2483491d8b50dc0 /llvm/lib/Object/ObjectFile.cpp
parentdac6fd41704ba16c39584183895079032e7bb99a (diff)
downloadbcm5719-llvm-8af2387b91cfcc1ac152f55307b86d76bbd55170.tar.gz
bcm5719-llvm-8af2387b91cfcc1ac152f55307b86d76bbd55170.zip
[dwarfdump] Skip 'stripped' sections
When dsymutil generates the companion file, its strips all unnecessary sections by omitting their body and setting the offset in their corresponding load command to zero. One such section is the .eh_frame section, as it contains runtime information rather than debug information and is part of the __TEXT segment. When reading this section, we would just read the number of bytes specified in the load command, starting from offset 0 (i.e. the beginning of the file). Rather than trying to parse this obviously invalid section, dwarfdump now skips this. Differential revision: https://reviews.llvm.org/D38135 llvm-svn: 314208
Diffstat (limited to 'llvm/lib/Object/ObjectFile.cpp')
-rw-r--r--llvm/lib/Object/ObjectFile.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Object/ObjectFile.cpp b/llvm/lib/Object/ObjectFile.cpp
index 67818409986..2b80d0bf538 100644
--- a/llvm/lib/Object/ObjectFile.cpp
+++ b/llvm/lib/Object/ObjectFile.cpp
@@ -75,6 +75,8 @@ bool ObjectFile::isSectionBitcode(DataRefImpl Sec) const {
return false;
}
+bool ObjectFile::isSectionStripped(DataRefImpl Sec) const { return false; }
+
section_iterator ObjectFile::getRelocatedSection(DataRefImpl Sec) const {
return section_iterator(SectionRef(Sec, this));
}
OpenPOWER on IntegriCloud