Revert "[Object] .bss sections have no content. PR15005."

This reverts commit r173007.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173012 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Michael J. Spencer 2013-01-21 08:13:04 +00:00
parent 04f74a149d
commit 77c27f4394

View File

@ -1260,18 +1260,16 @@ template<class ELFT>
error_code ELFObjectFile<ELFT>::getSectionContents(DataRefImpl Sec, error_code ELFObjectFile<ELFT>::getSectionContents(DataRefImpl Sec,
StringRef &Result) const { StringRef &Result) const {
const Elf_Shdr *sec = reinterpret_cast<const Elf_Shdr *>(Sec.p); const Elf_Shdr *sec = reinterpret_cast<const Elf_Shdr *>(Sec.p);
return getSectionContents(sec, Result); const char *start = (const char*)base() + sec->sh_offset;
Result = StringRef(start, sec->sh_size);
return object_error::success;
} }
template<class ELFT> template<class ELFT>
error_code ELFObjectFile<ELFT>::getSectionContents(const Elf_Shdr *Sec, error_code ELFObjectFile<ELFT>::getSectionContents(const Elf_Shdr *Sec,
StringRef &Result) const { StringRef &Result) const {
if (Sec->sh_type == ELF::SHT_NOBITS) const char *start = (const char*)base() + Sec->sh_offset;
Result = StringRef(); Result = StringRef(start, Sec->sh_size);
else {
const char *start = (const char*)base() + Sec->sh_offset;
Result = StringRef(start, Sec->sh_size);
}
return object_error::success; return object_error::success;
} }