blob: efaa986a8178a060311b4ac8ea8d6a056cc50bef [file] [log] [blame]
Zachary Turner7120a472016-06-06 20:37:05 +00001//===- PdbYAML.cpp -------------------------------------------- *- C++ --*-===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10#include "PdbYaml.h"
11
12#include "llvm/DebugInfo/PDB/Raw/PDBFile.h"
13
14using namespace llvm;
Zachary Turner25e8b052016-06-06 20:37:17 +000015using namespace llvm::yaml;
Zachary Turner7120a472016-06-06 20:37:05 +000016using namespace llvm::pdb;
17using namespace llvm::pdb::yaml;
18
Zachary Turner25e8b052016-06-06 20:37:17 +000019void MappingTraits<MsfHeaders>::mapping(IO &IO, MsfHeaders &Obj) {
Zachary Turner7120a472016-06-06 20:37:05 +000020 IO.mapRequired("BlockSize", Obj.BlockSize);
21 IO.mapRequired("Unknown0", Obj.Unknown0);
22 IO.mapRequired("NumBlocks", Obj.BlockCount);
23 IO.mapRequired("NumDirectoryBytes", Obj.NumDirectoryBytes);
24 IO.mapRequired("Unknown1", Obj.Unknown1);
25 IO.mapRequired("BlockMapAddr", Obj.BlockMapIndex);
26 IO.mapRequired("NumDirectoryBlocks", Obj.NumDirectoryBlocks);
27 IO.mapRequired("BlockMapOffset", Obj.BlockMapOffset);
28 IO.mapRequired("DirectoryBlocks", Obj.DirectoryBlocks);
29 IO.mapRequired("NumStreams", Obj.NumStreams);
30}
31
Zachary Turner25e8b052016-06-06 20:37:17 +000032void MappingTraits<PdbObject>::mapping(IO &IO, PdbObject &Obj) {
Zachary Turner7120a472016-06-06 20:37:05 +000033 IO.mapOptional("MSF", Obj.Headers);
Zachary Turner25e8b052016-06-06 20:37:17 +000034 IO.mapOptional("StreamSizes", Obj.StreamSizes);
35 IO.mapOptional("StreamMap", Obj.StreamMap);
36}
37
38void MappingTraits<StreamSizeEntry>::mapping(IO &IO, StreamSizeEntry &Obj) {
39 IO.mapRequired("Size", Obj.Size);
40}
41
42void MappingTraits<StreamMapEntry>::mapping(IO &IO, StreamMapEntry &Obj) {
43 IO.mapRequired("Blocks", Obj.Blocks);
Zachary Turner7120a472016-06-06 20:37:05 +000044}