00001
00002
00003
00004 #ifndef tm_BARRIER_H
00005 #define tm_BARRIER_H
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 extern void (*_tm_write_barrier)(void *referent);
00016
00017 #define tm_write_barrier(R) (*_tm_write_barrier)(R)
00018
00019
00020
00021
00022
00023
00024 extern void (*_tm_write_barrier_pure)(void *referent);
00025
00026 #define tm_write_barrier_pure(R) (*_tm_write_barrier_pure)(R)
00027
00028
00029
00030
00031
00032
00033
00034 extern void (*_tm_write_barrier_root)(void *referent);
00035
00036 #define tm_write_barrier_root(X)(*_tm_write_barrier_root)(X)
00037
00038 void __tm_write_barrier(void *referent);
00039 void __tm_write_barrier_pure(void *referent);
00040 void __tm_write_barrier_root(void *referent);
00041 void __tm_write_barrier_ignore(void *referent);
00042
00043
00044
00045 #endif