[DX][ObjYAML] Zero out unused fields that get written to the output file
authorBenjamin Kramer <benny.kra@googlemail.com>
Tue, 7 Jun 2022 14:29:06 +0000 (16:29 +0200)
committerBenjamin Kramer <benny.kra@googlemail.com>
Tue, 7 Jun 2022 14:29:28 +0000 (16:29 +0200)
Found by msan

llvm/lib/ObjectYAML/DXContainerEmitter.cpp

index 260e059..9834b03 100644 (file)
@@ -124,10 +124,12 @@ void DXContainerWriter::writeParts(raw_ostream &OS) {
       dxbc::ProgramHeader Header;
       Header.MajorVersion = P.Program->MajorVersion;
       Header.MinorVersion = P.Program->MinorVersion;
+      Header.Unused = 0;
       Header.ShaderKind = P.Program->ShaderKind;
       memcpy(Header.Bitcode.Magic, "DXIL", 4);
       Header.Bitcode.MajorVersion = P.Program->DXILMajorVersion;
       Header.Bitcode.MinorVersion = P.Program->DXILMinorVersion;
+      Header.Bitcode.Unused = 0;
 
       // Compute the optional fields if needed...
       if (P.Program->DXILOffset)