[llvm-commits] [compiler-rt] r169497 - /compiler-rt/trunk/lib/sanitizer_common/tests/sanitizer_allocator_test.cc
Kostya Serebryany
kcc at google.com
Thu Dec 6 05:00:12 PST 2012
Author: kcc
Date: Thu Dec 6 07:00:11 2012
New Revision: 169497
URL: http://llvm.org/viewvc/llvm-project?rev=169497&view=rev
Log:
[asan/msan] one more test for 32-bit allocator
Modified:
compiler-rt/trunk/lib/sanitizer_common/tests/sanitizer_allocator_test.cc
Modified: compiler-rt/trunk/lib/sanitizer_common/tests/sanitizer_allocator_test.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/tests/sanitizer_allocator_test.cc?rev=169497&r1=169496&r2=169497&view=diff
==============================================================================
--- compiler-rt/trunk/lib/sanitizer_common/tests/sanitizer_allocator_test.cc (original)
+++ compiler-rt/trunk/lib/sanitizer_common/tests/sanitizer_allocator_test.cc Thu Dec 6 07:00:11 2012
@@ -139,39 +139,43 @@
}
template <class Allocator>
-void SizeClassAllocator64MetadataStress() {
- Allocator a;
- a.Init();
+void SizeClassAllocatorMetadataStress() {
+ Allocator *a = new Allocator;
+ a->Init();
static volatile void *sink;
const uptr kNumAllocs = 10000;
void *allocated[kNumAllocs];
for (uptr i = 0; i < kNumAllocs; i++) {
uptr size = (i % 4096) + 1;
- void *x = a.Allocate(size, 1);
+ void *x = a->Allocate(size, 1);
allocated[i] = x;
}
// Get Metadata kNumAllocs^2 times.
for (uptr i = 0; i < kNumAllocs * kNumAllocs; i++) {
- sink = a.GetMetaData(allocated[i % kNumAllocs]);
+ sink = a->GetMetaData(allocated[i % kNumAllocs]);
}
for (uptr i = 0; i < kNumAllocs; i++) {
- a.Deallocate(allocated[i]);
+ a->Deallocate(allocated[i]);
}
- a.TestOnlyUnmap();
+ a->TestOnlyUnmap();
(void)sink;
+ delete a;
}
#if SANITIZER_WORDSIZE == 64
TEST(SanitizerCommon, SizeClassAllocator64MetadataStress) {
- SizeClassAllocator64MetadataStress<Allocator64>();
+ SizeClassAllocatorMetadataStress<Allocator64>();
}
TEST(SanitizerCommon, SizeClassAllocator64CompactMetadataStress) {
- SizeClassAllocator64MetadataStress<Allocator64Compact>();
+ SizeClassAllocatorMetadataStress<Allocator64Compact>();
}
#endif
+TEST(SanitizerCommon, SizeClassAllocator32CompactMetadataStress) {
+ SizeClassAllocatorMetadataStress<Allocator32Compact>();
+}
template<class Allocator>
void FailInAssertionOnOOM() {
More information about the llvm-commits
mailing list