summaryrefslogtreecommitdiff
path: root/tools/yaml2obj
diff options
context:
space:
mode:
authorSean Silva <silvas@purdue.edu>2013-06-18 01:11:21 +0000
committerSean Silva <silvas@purdue.edu>2013-06-18 01:11:21 +0000
commit13a8e2da7636b9f90d10cd77ac2a9194aa492cb4 (patch)
tree2c92077b830a39be54caab5121f07f1ea51a3e88 /tools/yaml2obj
parentb317987c2bc5b5a3df145f22b650197ba0caf2a7 (diff)
downloadllvm-13a8e2da7636b9f90d10cd77ac2a9194aa492cb4.tar.gz
llvm-13a8e2da7636b9f90d10cd77ac2a9194aa492cb4.tar.bz2
llvm-13a8e2da7636b9f90d10cd77ac2a9194aa492cb4.tar.xz
[yaml2obj][ELF] Ensure more fields are zero'd.
I was spotting garbage in the output. I'd like to just zero the entire ELFYAML::Section to be sure, but it contains non-POD types. (I'm also trying to avoid bloating the ELFYAML::Foo classes with a bunch of constructor code). No test, since this is by its very nature unpredictable. I'm pretty sure that one of the sanitizers would catch it immediately though. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184160 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/yaml2obj')
-rw-r--r--tools/yaml2obj/yaml2elf.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/tools/yaml2obj/yaml2elf.cpp b/tools/yaml2obj/yaml2elf.cpp
index bf1eec6e51..8e0383c022 100644
--- a/tools/yaml2obj/yaml2elf.cpp
+++ b/tools/yaml2obj/yaml2elf.cpp
@@ -160,6 +160,8 @@ static int writeELF(raw_ostream &OS, const ELFYAML::Object &Doc) {
ELFYAML::Section S;
S.Type = SHT_NULL;
zero(S.Flags);
+ zero(S.Address);
+ zero(S.AddressAlign);
Sections.insert(Sections.begin(), S);
}
// "+ 1" for string table.