3 #include <cds/gc/dhp.h>
4 #include <cds/container/moir_queue.h>
5 #include "queue/hdr_queue.h"
9 void HdrTestQueue::MoirQueue_DHP()
11 typedef cds::container::MoirQueue< cds::gc::DHP, int > test_queue;
12 test_no_ic< test_queue >();
15 void HdrTestQueue::MoirQueue_DHP_Counted()
17 typedef cds::container::MoirQueue < cds::gc::DHP, int,
18 typename cds::container::msqueue::make_traits <
19 cds::opt::item_counter < cds::atomicity::item_counter >
23 test_ic< test_queue >();
26 void HdrTestQueue::MoirQueue_DHP_relax()
28 typedef cds::container::MoirQueue < cds::gc::DHP, int,
29 typename cds::container::msqueue::make_traits <
30 cds::opt::memory_model < cds::opt::v::relaxed_ordering >
34 test_no_ic< test_queue >();
37 void HdrTestQueue::MoirQueue_DHP_Counted_relax()
39 typedef cds::container::MoirQueue < cds::gc::DHP, int,
40 typename cds::container::msqueue::make_traits <
41 cds::opt::item_counter< cds::atomicity::item_counter >
42 , cds::opt::memory_model < cds::opt::v::relaxed_ordering >
46 test_ic< test_queue >();
49 void HdrTestQueue::MoirQueue_DHP_seqcst()
51 typedef cds::container::MoirQueue < cds::gc::DHP, int,
52 typename cds::container::msqueue::make_traits <
53 cds::opt::memory_model < cds::opt::v::sequential_consistent >
57 test_no_ic< test_queue >();
60 void HdrTestQueue::MoirQueue_DHP_Counted_seqcst()
62 typedef cds::container::MoirQueue < cds::gc::DHP, int,
63 typename cds::container::msqueue::make_traits <
64 cds::opt::item_counter< cds::atomicity::item_counter >
65 , cds::opt::memory_model < cds::opt::v::sequential_consistent >
69 test_ic< test_queue >();
72 void HdrTestQueue::MoirQueue_DHP_relax_align()
74 typedef cds::container::MoirQueue < cds::gc::DHP, int,
75 typename cds::container::msqueue::make_traits <
76 cds::opt::memory_model< cds::opt::v::relaxed_ordering>
77 , cds::opt::alignment < 16 >
81 test_no_ic< test_queue >();
84 void HdrTestQueue::MoirQueue_DHP_Counted_relax_align()
86 typedef cds::container::MoirQueue < cds::gc::DHP, int,
87 typename cds::container::msqueue::make_traits <
88 cds::opt::item_counter< cds::atomicity::item_counter >
89 , cds::opt::memory_model< cds::opt::v::relaxed_ordering>
90 , cds::opt::alignment < 32 >
94 test_ic< test_queue >();
97 void HdrTestQueue::MoirQueue_DHP_seqcst_align()
99 typedef cds::container::MoirQueue < cds::gc::DHP, int,
100 typename cds::container::msqueue::make_traits <
101 cds::opt::memory_model< cds::opt::v::sequential_consistent>
102 ,cds::opt::alignment < cds::opt::no_special_alignment >
106 test_no_ic< test_queue >();
109 void HdrTestQueue::MoirQueue_DHP_Counted_seqcst_align()
111 typedef cds::container::MoirQueue < cds::gc::DHP, int,
112 typename cds::container::msqueue::make_traits <
113 cds::opt::item_counter< cds::atomicity::item_counter >
114 , cds::opt::memory_model< cds::opt::v::sequential_consistent>
115 , cds::opt::alignment < cds::opt::cache_line_alignment >
118 test_ic< test_queue >();