From: khizmax Date: Mon, 30 Mar 2015 19:01:45 +0000 (+0300) Subject: Added MichaelMap based on unordered LazyList to map unit tests X-Git-Tag: v2.1.0~289 X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=7047e949f305309335dc2622c2be91629a6ce084;p=libcds.git Added MichaelMap based on unordered LazyList to map unit tests --- diff --git a/tests/unit/map2/map_defs.h b/tests/unit/map2/map_defs.h index 64135c49..f5bb2e6b 100644 --- a/tests/unit/map2/map_defs.h +++ b/tests/unit/map2/map_defs.h @@ -87,12 +87,14 @@ TEST_MAP(MichaelMap_NOGC_cmp_stdAlloc) \ TEST_MAP(MichaelMap_NOGC_less_michaelAlloc) \ TEST_MAP(MichaelMap_Lazy_NOGC_cmp_stdAlloc) \ + TEST_MAP(MichaelMap_Lazy_NOGC_unord_stdAlloc) \ TEST_MAP(MichaelMap_Lazy_NOGC_less_michaelAlloc) #define CDSUNIT_TEST_MichaelMap_nogc \ CPPUNIT_TEST(MichaelMap_NOGC_cmp_stdAlloc) \ CPPUNIT_TEST(MichaelMap_NOGC_less_michaelAlloc) \ CPPUNIT_TEST(MichaelMap_Lazy_NOGC_cmp_stdAlloc) \ + CPPUNIT_TEST(MichaelMap_Lazy_NOGC_unord_stdAlloc) \ CPPUNIT_TEST(MichaelMap_Lazy_NOGC_less_michaelAlloc) \ #ifdef CDS_URCU_SIGNAL_HANDLING_ENABLED diff --git a/tests/unit/map2/map_types.h b/tests/unit/map2/map_types.h index e898f82c..085bcadd 100644 --- a/tests/unit/map2/map_types.h +++ b/tests/unit/map2/map_types.h @@ -492,6 +492,14 @@ namespace map2 { typedef cc::LazyKVList< rcu_sht, Key, Value, traits_LazyList_cmp_stdAlloc > LazyList_RCU_SHT_cmp_stdAlloc; #endif + struct traits_LazyList_unord_stdAlloc : + public cc::lazy_list::make_traits< + co::equal_to< equal_to > + ,co::sort< false > + >::type + {}; + typedef cc::LazyKVList< cds::gc::nogc, Key, Value, traits_LazyList_unord_stdAlloc > LazyList_NOGC_unord_stdAlloc; + struct traits_LazyList_cmp_stdAlloc_seqcst : public cc::lazy_list::make_traits< co::compare< compare > @@ -588,6 +596,8 @@ namespace map2 { typedef cc::MichaelHashMap< rcu_sht, LazyList_RCU_SHT_cmp_stdAlloc, traits_MichaelMap_hash > MichaelMap_Lazy_RCU_SHT_cmp_stdAlloc; #endif + typedef cc::MichaelHashMap< cds::gc::nogc, LazyList_NOGC_unord_stdAlloc, traits_MichaelMap_hash > MichaelMap_Lazy_NOGC_unord_stdAlloc; + typedef cc::MichaelHashMap< cds::gc::HP, LazyList_HP_less_stdAlloc, traits_MichaelMap_hash > MichaelMap_Lazy_HP_less_stdAlloc; typedef cc::MichaelHashMap< cds::gc::DHP, LazyList_DHP_less_stdAlloc, traits_MichaelMap_hash > MichaelMap_Lazy_DHP_less_stdAlloc; typedef cc::MichaelHashMap< cds::gc::nogc, LazyList_NOGC_less_stdAlloc, traits_MichaelMap_hash > MichaelMap_Lazy_NOGC_less_stdAlloc;