Adds parameter for both RCU and HP based map test cases
[libcds.git] / test / stress / sequential / sequential-map / insdelfind / map_insdelfind.h
index 3eeaa53249d1c2a20051b52cb1ca18a4c68591dd..165a1d1480a21efed0a55bac4af7d35a25cbe217 100644 (file)
@@ -40,11 +40,19 @@ namespace map {
 
         static size_t s_nPassCount;
         static size_t s_nBronsonAVLTreeMapPassCount;
-        static size_t s_nEllenBinTreeMapPassCount;
-        static size_t s_nFeldmanPassCount;
-        static size_t s_nMichaelMapPassCount;
-        static size_t s_nSkipListMapPassCount;
-        static size_t s_nSplitListMapPassCount;
+
+        static size_t s_nHpEllenBinTreeMapPassCount;
+        static size_t s_nHpFeldmanPassCount;
+        static size_t s_nHpMichaelMapPassCount;
+        static size_t s_nHpSkipListMapPassCount;
+        static size_t s_nHpSplitListMapPassCount;
+
+        static size_t s_nRcuEllenBinTreeMapPassCount;
+        static size_t s_nRcuFeldmanPassCount;
+        static size_t s_nRcuMichaelMapPassCount;
+        static size_t s_nRcuSkipListMapPassCount;
+        static size_t s_nRcuSplitListMapPassCount;
+
 
         static size_t s_nThreadCount;       // thread count
         static size_t s_nMaxLoadFactor;     // maximum load factor
@@ -211,23 +219,44 @@ namespace map {
         }
 
         template <class Map>
-        void run_ellen_bin_tree() {
+        void run_ellen_bin_tree_hp() {
+          Map_InsDelFind::s_nPassCount =
+              Map_InsDelFind::s_nHpEllenBinTreeMapPassCount;
+          run_test<Map>();
+        }
+
+        template <class Map>
+        void run_skip_list_hp() {
+          Map_InsDelFind::s_nPassCount =
+              Map_InsDelFind::s_nHpSkipListMapPassCount;
+          run_test<Map>();
+        }
+
+        template <class Map>
+        void run_feldman_hp() {
+          Map_InsDelFind::s_nPassCount =
+              Map_InsDelFind::s_nHpFeldmanPassCount;
+          run_test<Map>();
+        }
+
+        template <class Map>
+        void run_ellen_bin_tree_rcu() {
           Map_InsDelFind::s_nPassCount =
-              Map_InsDelFind::s_nEllenBinTreeMapPassCount;
+              Map_InsDelFind::s_nRcuEllenBinTreeMapPassCount;
           run_test<Map>();
         }
 
         template <class Map>
-        void run_skip_list() {
+        void run_skip_list_rcu() {
           Map_InsDelFind::s_nPassCount =
-              Map_InsDelFind::s_nSkipListMapPassCount;
+              Map_InsDelFind::s_nRcuSkipListMapPassCount;
           run_test<Map>();
         }
 
         template <class Map>
-        void run_feldman() {
+        void run_feldman_rcu() {
           Map_InsDelFind::s_nPassCount =
-              Map_InsDelFind::s_nFeldmanPassCount;
+              Map_InsDelFind::s_nRcuFeldmanPassCount;
           run_test<Map>();
         }
     };
@@ -245,16 +274,30 @@ namespace map {
         }
 
                                template <class Map>
-        void run_michael() {
+        void run_michael_hp() {
+          Map_InsDelFind::s_nPassCount =
+              Map_InsDelFind::s_nHpMichaelMapPassCount;
+          Map_InsDelFind_LF::run_test<Map>();
+        }
+
+        template <class Map>
+        void run_split_list_hp() {
+          Map_InsDelFind::s_nPassCount =
+              Map_InsDelFind::s_nHpSplitListMapPassCount;
+          Map_InsDelFind_LF::run_test<Map>();
+        }
+
+        template <class Map>
+        void run_michael_rcu() {
           Map_InsDelFind::s_nPassCount =
-              Map_InsDelFind::s_nMichaelMapPassCount;
+              Map_InsDelFind::s_nRcuMichaelMapPassCount;
           Map_InsDelFind_LF::run_test<Map>();
         }
 
         template <class Map>
-        void run_split_list() {
+        void run_split_list_rcu() {
           Map_InsDelFind::s_nPassCount =
-              Map_InsDelFind::s_nSplitListMapPassCount;
+              Map_InsDelFind::s_nRcuSplitListMapPassCount;
           Map_InsDelFind_LF::run_test<Map>();
         }