[LLVMbugs] [Bug 14723] New: ELFObjectFile::isSectionZeroInit() checks the wrong bits
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Wed Dec 26 15:21:29 PST 2012
http://llvm.org/bugs/show_bug.cgi?id=14723
Bug #: 14723
Summary: ELFObjectFile::isSectionZeroInit() checks the wrong
bits
Product: new-bugs
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: sami.liedes at iki.fi
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
There's a test in ELFObjectFile::isSectionZeroInit() that seems bogus to me and
that fails to recognize a BSS section in my /bin/ls as zero-initialized.
I believe this change should fix the problem:
--- a/include/llvm/Object/ELF.h
+++ b/include/llvm/Object/ELF.h
@@ -1306,7 +1306,7 @@ error_code ELFObjectFile<target_endianness, is64Bits>
const Elf_Shdr *sec = reinterpret_cast<const Elf_Shdr *>(Sec.p);
// For ELF, all zero-init sections are virtual (that is, they occupy no
space
// in the object image) and vice versa.
- if (sec->sh_flags & ELF::SHT_NOBITS)
+ if (sec->sh_type == ELF::SHT_NOBITS)
Result = true;
else
Result = false;
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list