[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