summaryrefslogtreecommitdiff
path: root/lib/DebugInfo/PDB/Native/PublicsStreamBuilder.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/DebugInfo/PDB/Native/PublicsStreamBuilder.cpp')
-rw-r--r--lib/DebugInfo/PDB/Native/PublicsStreamBuilder.cpp89
1 files changed, 0 insertions, 89 deletions
diff --git a/lib/DebugInfo/PDB/Native/PublicsStreamBuilder.cpp b/lib/DebugInfo/PDB/Native/PublicsStreamBuilder.cpp
deleted file mode 100644
index 28c4a8fc35d9..000000000000
--- a/lib/DebugInfo/PDB/Native/PublicsStreamBuilder.cpp
+++ /dev/null
@@ -1,89 +0,0 @@
-//===- DbiStreamBuilder.cpp - PDB Dbi Stream Creation -----------*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#include "llvm/DebugInfo/PDB/Native/PublicsStreamBuilder.h"
-
-#include "llvm/DebugInfo/MSF/MSFBuilder.h"
-#include "llvm/DebugInfo/MSF/MSFCommon.h"
-#include "llvm/DebugInfo/MSF/MappedBlockStream.h"
-
-#include "GSI.h"
-
-using namespace llvm;
-using namespace llvm::msf;
-using namespace llvm::pdb;
-
-PublicsStreamBuilder::PublicsStreamBuilder(msf::MSFBuilder &Msf) : Msf(Msf) {}
-
-PublicsStreamBuilder::~PublicsStreamBuilder() {}
-
-uint32_t PublicsStreamBuilder::calculateSerializedLength() const {
- uint32_t Size = 0;
- Size += sizeof(PublicsStreamHeader);
- Size += sizeof(GSIHashHeader);
- Size += HashRecords.size() * sizeof(PSHashRecord);
- size_t BitmapSizeInBits = alignTo(IPHR_HASH + 1, 32);
- uint32_t NumBitmapEntries = BitmapSizeInBits / 8;
- Size += NumBitmapEntries;
-
- // FIXME: Account for hash buckets. For now since we we write a zero-bitmap
- // indicating that no hash buckets are valid, we also write zero byets of hash
- // bucket data.
- Size += 0;
- return Size;
-}
-
-Error PublicsStreamBuilder::finalizeMsfLayout() {
- Expected<uint32_t> Idx = Msf.addStream(calculateSerializedLength());
- if (!Idx)
- return Idx.takeError();
- StreamIdx = *Idx;
-
- Expected<uint32_t> RecordIdx = Msf.addStream(0);
- if (!RecordIdx)
- return RecordIdx.takeError();
- RecordStreamIdx = *RecordIdx;
- return Error::success();
-}
-
-Error PublicsStreamBuilder::commit(BinaryStreamWriter &PublicsWriter) {
- PublicsStreamHeader PSH;
- GSIHashHeader GSH;
-
- // FIXME: Figure out what to put for these values.
- PSH.AddrMap = 0;
- PSH.ISectThunkTable = 0;
- PSH.NumSections = 0;
- PSH.NumThunks = 0;
- PSH.OffThunkTable = 0;
- PSH.SizeOfThunk = 0;
- PSH.SymHash = 0;
-
- GSH.VerSignature = GSIHashHeader::HdrSignature;
- GSH.VerHdr = GSIHashHeader::HdrVersion;
- GSH.HrSize = 0;
- GSH.NumBuckets = 0;
-
- if (auto EC = PublicsWriter.writeObject(PSH))
- return EC;
- if (auto EC = PublicsWriter.writeObject(GSH))
- return EC;
- if (auto EC = PublicsWriter.writeArray(makeArrayRef(HashRecords)))
- return EC;
-
- size_t BitmapSizeInBits = alignTo(IPHR_HASH + 1, 32);
- uint32_t NumBitmapEntries = BitmapSizeInBits / 8;
- std::vector<uint8_t> BitmapData(NumBitmapEntries);
- // FIXME: Build an actual bitmap
- if (auto EC = PublicsWriter.writeBytes(makeArrayRef(BitmapData)))
- return EC;
-
- // FIXME: Write actual hash buckets.
- return Error::success();
-}