diff --git a/test/Object/yaml2obj-elf-symbol-basic.yaml b/test/Object/yaml2obj-elf-symbol-basic.yaml
index c33d3853041..e6a6cbc6d51 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 bebcbde256f..a67a275bf99 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;