[llvm] r309331 - [PDB] Initialize the std::array<ulittle32_t> used for the gsi bitmap
Reid Kleckner via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 27 16:13:05 PDT 2017
Author: rnk
Date: Thu Jul 27 16:13:05 2017
New Revision: 309331
URL: http://llvm.org/viewvc/llvm-project?rev=309331&view=rev
Log:
[PDB] Initialize the std::array<ulittle32_t> used for the gsi bitmap
With ASan, we would write about 512 bytes of malloc fill value to the
PDB, with some random bits ORed in here and there. Dumping the PDB would
always fail reliably.
Modified:
llvm/trunk/lib/DebugInfo/PDB/Native/PublicsStreamBuilder.cpp
Modified: llvm/trunk/lib/DebugInfo/PDB/Native/PublicsStreamBuilder.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/Native/PublicsStreamBuilder.cpp?rev=309331&r1=309330&r2=309331&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/Native/PublicsStreamBuilder.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/Native/PublicsStreamBuilder.cpp Thu Jul 27 16:13:05 2017
@@ -201,6 +201,8 @@ void GSIHashTableBuilder::addSymbols(Arr
// Compute the three tables: the hash records in bucket and chain order, the
// bucket presence bitmap, and the bucket chain start offsets.
HashRecords.reserve(Symbols.size());
+ for (ulittle32_t &Word : HashBitmap)
+ Word = 0;
for (size_t BucketIdx = 0; BucketIdx < IPHR_HASH + 1; ++BucketIdx) {
auto &Bucket = TmpBuckets[BucketIdx];
if (Bucket.empty())
More information about the llvm-commits
mailing list