#include "llvm/Support/PointerLikeTypeTraits.h"
#include "llvm/Support/MathExtras.h"
#include <cassert>
#include "llvm/Support/PointerLikeTypeTraits.h"
#include "llvm/Support/MathExtras.h"
#include <cassert>
#include <utility>
#include <new>
#include <utility>
#include <new>
P->second.~ValueT();
P->first.~KeyT();
}
P->second.~ValueT();
P->first.~KeyT();
}
+#ifndef NDEBUG
+ memset(Buckets, 0x5a, sizeof(BucketT)*NumBuckets);
+#endif
operator delete(Buckets);
}
operator delete(Buckets);
}
NumEntries = other.NumEntries;
NumTombstones = other.NumTombstones;
NumEntries = other.NumEntries;
NumTombstones = other.NumTombstones;
+ if (NumBuckets) {
+#ifndef NDEBUG
+ memset(Buckets, 0x5a, sizeof(BucketT)*NumBuckets);
+#endif
operator delete(Buckets);
operator delete(Buckets);
Buckets = static_cast<BucketT*>(operator new(sizeof(BucketT) *
other.NumBuckets));
Buckets = static_cast<BucketT*>(operator new(sizeof(BucketT) *
other.NumBuckets));
+#ifndef NDEBUG
+ memset(OldBuckets, 0x5a, sizeof(BucketT)*OldNumBuckets);
+#endif
// Free the old table.
operator delete(OldBuckets);
}
// Free the old table.
operator delete(OldBuckets);
}
+#ifndef NDEBUG
+ memset(OldBuckets, 0x5a, sizeof(BucketT)*OldNumBuckets);
+#endif
// Free the old table.
operator delete(OldBuckets);
// Free the old table.
operator delete(OldBuckets);