summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/Object/yaml2obj-elf-symbol-basic.yaml1
-rw-r--r--tools/yaml2obj/yaml2elf.cpp7
2 files changed, 6 insertions, 2 deletions
diff --git a/test/Object/yaml2obj-elf-symbol-basic.yaml b/test/Object/yaml2obj-elf-symbol-basic.yaml
index c33d385304..e6a6cbc6d5 100644
--- a/test/Object/yaml2obj-elf-symbol-basic.yaml
+++ b/test/Object/yaml2obj-elf-symbol-basic.yaml
@@ -12,7 +12,6 @@ Sections:
- Name: .symtab
Type: SHT_SYMTAB
Symbols:
- - Name: "" # TODO: Add STN_UNDEF automatically.
- Name: main
# CHECK: Symbols [
diff --git a/tools/yaml2obj/yaml2elf.cpp b/tools/yaml2obj/yaml2elf.cpp
index bebcbde256..a67a275bf9 100644
--- a/tools/yaml2obj/yaml2elf.cpp
+++ b/tools/yaml2obj/yaml2elf.cpp
@@ -154,7 +154,12 @@ static void handleSymtabSectionHeader(
SHeader.sh_entsize = sizeof(Elf_Sym);
std::vector<Elf_Sym> Syms;
- // FIXME: Ensure STN_UNDEF entry is present.
+ {
+ // Ensure STN_UNDEF is present
+ Elf_Sym Sym;
+ zero(Sym);
+ Syms.push_back(Sym);
+ }
for (unsigned i = 0, e = Sec.Symbols.size(); i != e; ++i) {
const ELFYAML::Symbol &Sym = Sec.Symbols[i];
Elf_Sym Symbol;