benchmark silo added
[c11concurrency-benchmarks.git] / silo / masstree / mtcounters.hh
1 /* Masstree
2  * Eddie Kohler, Yandong Mao, Robert Morris
3  * Copyright (c) 2012-2013 President and Fellows of Harvard College
4  * Copyright (c) 2012-2013 Massachusetts Institute of Technology
5  *
6  * Permission is hereby granted, free of charge, to any person obtaining a
7  * copy of this software and associated documentation files (the "Software"),
8  * to deal in the Software without restriction, subject to the conditions
9  * listed in the Masstree LICENSE file. These conditions include: you must
10  * preserve this copyright notice, and you cannot mention the copyright
11  * holders in advertising related to the Software without their permission.
12  * The Software is provided WITHOUT ANY WARRANTY, EXPRESS OR IMPLIED. This
13  * notice is a summary of the Masstree LICENSE file; the license in that file
14  * is legally binding.
15  */
16 #ifndef MTCOUNTERS_HH
17 #define MTCOUNTERS_HH 1
18
19 enum memtag {
20     memtag_none = 0x0,
21     memtag_value = 0x1,
22     memtag_limbo = 0x5,
23     memtag_masstree_leaf = 0x10,
24     memtag_masstree_internode = 0x11,
25     memtag_masstree_ksuffixes = 0x12,
26     memtag_masstree_gc = 0x13
27 };
28
29 enum threadcounter {
30     // order is important among tc_alloc constants:
31     tc_alloc,
32     tc_alloc_value = tc_alloc,
33     tc_alloc_other = tc_alloc + 1,
34     // end tc_alloc constants
35     tc_gc,
36     tc_limbo_slots,
37     tc_replay_create_delta,
38     tc_replay_remove_delta,
39     tc_root_retry,
40     tc_internode_retry,
41     tc_leaf_retry,
42     tc_leaf_walk,
43     // order is important among tc_stable constants:
44     tc_stable,
45     tc_stable_internode_insert = tc_stable + 0,
46     tc_stable_internode_split = tc_stable + 1,
47     tc_stable_leaf_insert = tc_stable + 2,
48     tc_stable_leaf_split = tc_stable + 3,
49     // end tc_stable constants
50     tc_internode_lock,
51     tc_leaf_lock,
52     tc_max
53 };
54
55 #endif