[CLANG UPDATE!] Update uses of OnDiskChainedHashTable to the

OnDiskIterableChainedHashTable interface introduced in CFE 206189.

Thanks to Justin for guiding me through this!

Swift SVN r16337
This commit is contained in:
Adrian Prantl
2014-04-14 22:33:12 +00:00
parent 679077305f
commit ada9ebb7a9
4 changed files with 14 additions and 11 deletions

View File

@@ -38,8 +38,7 @@ namespace llvm {
// This template should eventually move to llvm/Support.
namespace clang {
template <typename Info>
class OnDiskChainedHashTable;
template <typename Info> class OnDiskIterableChainedHashTable;
}
namespace swift {
@@ -213,7 +212,8 @@ private:
std::vector<SerializedIdentifier> Identifiers;
class DeclTableInfo;
using SerializedDeclTable = clang::OnDiskChainedHashTable<DeclTableInfo>;
using SerializedDeclTable =
clang::OnDiskIterableChainedHashTable<DeclTableInfo>;
std::unique_ptr<SerializedDeclTable> TopLevelDecls;
std::unique_ptr<SerializedDeclTable> OperatorDecls;
@@ -231,7 +231,7 @@ private:
class DeclCommentTableInfo;
using SerializedDeclCommentTable =
clang::OnDiskChainedHashTable<DeclCommentTableInfo>;
clang::OnDiskIterableChainedHashTable<DeclCommentTableInfo>;
std::unique_ptr<SerializedDeclCommentTable> DeclCommentTable;

View File

@@ -172,7 +172,8 @@ SILDeserializer::readFuncTable(ArrayRef<uint64_t> fields, StringRef blobData) {
auto base = reinterpret_cast<const uint8_t *>(blobData.data());
using OwnedTable = std::unique_ptr<SerializedFuncTable>;
return OwnedTable(SerializedFuncTable::Create(base + tableOffset, base));
return OwnedTable(SerializedFuncTable::Create(base + tableOffset,
base + sizeof(uint32_t), base));
}
/// A high-level overview of how forward references work in serializer and

View File

@@ -19,8 +19,7 @@
// This template should eventually move to llvm/Support.
namespace clang {
template <typename Info>
class OnDiskChainedHashTable;
template <typename Info> class OnDiskIterableChainedHashTable;
}
namespace swift {
@@ -34,7 +33,8 @@ namespace swift {
llvm::BitstreamCursor SILIndexCursor;
class FuncTableInfo;
using SerializedFuncTable = clang::OnDiskChainedHashTable<FuncTableInfo>;
using SerializedFuncTable =
clang::OnDiskIterableChainedHashTable<FuncTableInfo>;
std::unique_ptr<SerializedFuncTable> FuncTable;
std::vector<ModuleFile::PartiallySerialized<SILFunction*>> Funcs;

View File

@@ -245,7 +245,8 @@ ModuleFile::readDeclTable(ArrayRef<uint64_t> fields, StringRef blobData) {
auto base = reinterpret_cast<const uint8_t *>(blobData.data());
using OwnedTable = std::unique_ptr<SerializedDeclTable>;
return OwnedTable(SerializedDeclTable::Create(base + tableOffset, base));
return OwnedTable(SerializedDeclTable::Create(base + tableOffset,
base + sizeof(uint32_t), base));
}
static Optional<KnownProtocolKind> getActualKnownProtocol(unsigned rawKind) {
@@ -437,8 +438,9 @@ ModuleFile::readDeclCommentTable(ArrayRef<uint64_t> fields,
auto base = reinterpret_cast<const uint8_t *>(blobData.data());
return std::unique_ptr<SerializedDeclCommentTable>(
SerializedDeclCommentTable::Create(base + tableOffset, base,
DeclCommentTableInfo(*this)));
SerializedDeclCommentTable::Create(base + tableOffset,
base + sizeof(uint32_t), base,
DeclCommentTableInfo(*this)));
}
bool ModuleFile::readCommentBlock(llvm::BitstreamCursor &cursor) {