16 #ifndef MESH_CONFIG_HPP__
17 #define MESH_CONFIG_HPP__
28 inline void* memalign(
size_t alignment,
size_t size)
32 #elif defined(sparc) && defined(sun)
58 # define BEGIN_TRANSACTION(TYPE) {with_lock tx_cs(io_lock);
59 # define END_TRANSACTION }
65 void*
operator new (std::size_t size)
throw (std::bad_alloc);
66 [[transaction_safe]]
void operator delete(
void*
ptr)
throw();
67 # define BEGIN_TRANSACTION(TYPE) \
68 currentThread->enter_transaction(); \
69 currentThread->erase_buffered_output(); \
70 __transaction [[TYPE]] {
71 # define END_TRANSACTION } \
72 currentThread->dump_buffered_output(); \
73 currentThread->leave_transaction();
74 # define TRANSACTION_SAFE [[transaction_safe]]
75 # define TRANSACTION_PURE [[transaction_pure]]
76 # define TRANSACTION_WAIVER __transaction [[waiver]]
80 # define SYS_INIT _ITM_initializeProcess
81 # define THREAD_INIT _ITM_initializeThread
82 # define THREAD_SHUTDOWN _ITM_finalizeThread
83 # define SYS_SHUTDOWN _ITM_finalizeProcess
87 # define TRANSACTION_SAFE
88 # define TRANSACTION_PURE
89 # define TRANSACTION_WAIVER
92 # define THREAD_INIT()
93 # define THREAD_SHUTDOWN()
94 # define SYS_SHUTDOWN()
98 #endif // MESH_CONFIG_HPP__
void *volatile ptr
Definition: counted_ptr.hpp:57
unsigned long long start_time
Definition: mesh.cpp:34
bool verbose
Definition: mesh.cpp:44
bool output_incremental
Definition: mesh.cpp:42
int num_points
Definition: mesh.cpp:38
Definition: my_thread.hpp:41
static const int MAX_WORKERS
Definition: common.hpp:45
d_lock io_lock
Definition: mesh.cpp:33
THREAD_LOCAL_DECL_TYPE(thread *) currentThread
bool output_end
Definition: mesh.cpp:43
int num_workers
Definition: mesh.cpp:39
unsigned long long last_time
Definition: mesh.cpp:35