Do one map lookup instead of two.
[oota-llvm.git] / unittests / ADT / ValueMapTest.cpp
index 9de340c3f355f8d99f8088c9bb0cb612d8fb8176..2fc0938601023e97b82a552fa4af156c5a434554 100644 (file)
@@ -8,9 +8,10 @@
 //===----------------------------------------------------------------------===//
 
 #include "llvm/ADT/ValueMap.h"
-
 #include "llvm/Instructions.h"
+#include "llvm/LLVMContext.h"
 #include "llvm/ADT/OwningPtr.h"
+#include "llvm/Config/config.h"
 
 #include "gtest/gtest.h"
 
@@ -60,9 +61,9 @@ TYPED_TEST(ValueMapTest, FollowsValue) {
 
 TYPED_TEST(ValueMapTest, OperationsWork) {
   ValueMap<TypeParam*, int> VM;
-  ValueMap<TypeParam*, int> VM2(16);
+  ValueMap<TypeParam*, int> VM2(16);  (void)VM2;
   typename ValueMapConfig<TypeParam*>::ExtraData Data;
-  ValueMap<TypeParam*, int> VM3(Data, 16);
+  ValueMap<TypeParam*, int> VM3(Data, 16);  (void)VM3;
   EXPECT_TRUE(VM.empty());
 
   VM[this->BitcastV.get()] = 7;
@@ -127,7 +128,7 @@ TYPED_TEST(ValueMapTest, Iteration) {
   for (typename ValueMap<TypeParam*, int>::iterator I = VM.begin(), E = VM.end();
        I != E; ++I) {
     ++size;
-    std::pair<TypeParam*, int> value = *I;
+    std::pair<TypeParam*, int> value = *I; (void)value;
     CompileAssertHasType<TypeParam*>(I->first);
     if (I->second == 2) {
       EXPECT_EQ(this->BitcastV.get(), I->first);
@@ -149,7 +150,7 @@ TYPED_TEST(ValueMapTest, Iteration) {
   for (typename ValueMap<TypeParam*, int>::const_iterator I = CVM.begin(),
          E = CVM.end(); I != E; ++I) {
     ++size;
-    std::pair<TypeParam*, int> value = *I;
+    std::pair<TypeParam*, int> value = *I;  (void)value;
     CompileAssertHasType<TypeParam*>(I->first);
     if (I->second == 5) {
       EXPECT_EQ(this->BitcastV.get(), I->first);
@@ -187,12 +188,13 @@ struct LockMutex : ValueMapConfig<KeyT> {
     *Data.CalledRAUW = true;
     EXPECT_FALSE(Data.M->tryacquire()) << "Mutex should already be locked.";
   }
-  static void onDeleted(const ExtraData &Data, KeyT Old) {
+  static void onDelete(const ExtraData &Data, KeyT Old) {
     *Data.CalledDeleted = true;
     EXPECT_FALSE(Data.M->tryacquire()) << "Mutex should already be locked.";
   }
   static sys::Mutex *getMutex(const ExtraData &Data) { return Data.M; }
 };
+#if ENABLE_THREADS
 TYPED_TEST(ValueMapTest, LocksMutex) {
   sys::Mutex M(false);  // Not recursive.
   bool CalledRAUW = false, CalledDeleted = false;
@@ -205,6 +207,7 @@ TYPED_TEST(ValueMapTest, LocksMutex) {
   EXPECT_TRUE(CalledRAUW);
   EXPECT_TRUE(CalledDeleted);
 }
+#endif
 
 template<typename KeyT>
 struct NoFollow : ValueMapConfig<KeyT> {
@@ -238,7 +241,7 @@ struct CountOps : ValueMapConfig<KeyT> {
   static void onRAUW(const ExtraData &Data, KeyT Old, KeyT New) {
     ++*Data.RAUWs;
   }
-  static void onDeleted(const ExtraData &Data, KeyT Old) {
+  static void onDelete(const ExtraData &Data, KeyT Old) {
     ++*Data.Deletions;
   }
 };
@@ -270,7 +273,7 @@ struct ModifyingConfig : ValueMapConfig<KeyT> {
   static void onRAUW(ExtraData Map, KeyT Old, KeyT New) {
     (*Map)->erase(Old);
   }
-  static void onDeleted(ExtraData Map, KeyT Old) {
+  static void onDelete(ExtraData Map, KeyT Old) {
     (*Map)->erase(Old);
   }
 };