diff options
author | Zachary Turner <zturner@google.com> | 2016-05-27 03:51:53 +0000 |
---|---|---|
committer | Zachary Turner <zturner@google.com> | 2016-05-27 03:51:53 +0000 |
commit | b393d9535981685f2741107784eeab8e650c567c (patch) | |
tree | 56331204fbef0028f0c5d0f5ace58aeeb5ced9cb /llvm/lib/DebugInfo/PDB/Raw/NameHashTable.cpp | |
parent | 18e9102a852193adda32906270fc5fe0bfe73fcb (diff) | |
download | llvm-b393d9535981685f2741107784eeab8e650c567c.zip llvm-b393d9535981685f2741107784eeab8e650c567c.tar.gz llvm-b393d9535981685f2741107784eeab8e650c567c.tar.bz2 |
[codeview] Remove StreamReader copying method.
Since we want to move toward zero-copy access to stream data, we
want to remove all instances of copying operations. So get rid
of some of those here.
Differential Revision: http://reviews.llvm.org/D20720
Reviewed By: ruiu
llvm-svn: 270960
Diffstat (limited to 'llvm/lib/DebugInfo/PDB/Raw/NameHashTable.cpp')
-rw-r--r-- | llvm/lib/DebugInfo/PDB/Raw/NameHashTable.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/llvm/lib/DebugInfo/PDB/Raw/NameHashTable.cpp b/llvm/lib/DebugInfo/PDB/Raw/NameHashTable.cpp index 7eae748..7206907 100644 --- a/llvm/lib/DebugInfo/PDB/Raw/NameHashTable.cpp +++ b/llvm/lib/DebugInfo/PDB/Raw/NameHashTable.cpp @@ -105,11 +105,9 @@ Error NameHashTable::load(codeview::StreamReader &Stream) { if (auto EC = Stream.readObject(HashCount)) return EC; - std::vector<support::ulittle32_t> BucketArray(*HashCount); - if (auto EC = Stream.readArray<support::ulittle32_t>(BucketArray)) + if (auto EC = Stream.readArray(IDs, *HashCount)) return make_error<RawError>(raw_error_code::corrupt_file, "Could not read bucket array"); - IDs.assign(BucketArray.begin(), BucketArray.end()); if (Stream.bytesRemaining() < sizeof(support::ulittle32_t)) return make_error<RawError>(raw_error_code::corrupt_file, @@ -154,4 +152,7 @@ uint32_t NameHashTable::getIDForString(StringRef Str) const { return IDs[0]; } -ArrayRef<uint32_t> NameHashTable::name_ids() const { return IDs; } +codeview::FixedStreamArray<support::ulittle32_t> +NameHashTable::name_ids() const { + return IDs; +} |