File tree Expand file tree Collapse file tree 3 files changed +5
-29
lines changed Expand file tree Collapse file tree 3 files changed +5
-29
lines changed Original file line number Diff line number Diff line change 4747#define MEMORY_API_NAME (name ) name##_shared
4848#define MEMORY_CELL_TYPE _Atomic volatile uint8_t *
4949
50- #if WASM_RT_USE_C11THREADS
51- #define MEMORY_LOCK_VAR_INIT (name ) C11_MEMORY_LOCK_VAR_INIT (name)
52- #define MEMORY_LOCK_AQUIRE (name ) C11_MEMORY_LOCK_AQUIRE (name)
53- #define MEMORY_LOCK_RELEASE (name ) C11_MEMORY_LOCK_RELEASE (name)
50+ #if WASM_RT_USE_CRITICALSECTION
51+ #define MEMORY_LOCK_VAR_INIT (name ) WIN_MEMORY_LOCK_VAR_INIT (name)
52+ #define MEMORY_LOCK_AQUIRE (name ) WIN_MEMORY_LOCK_AQUIRE (name)
53+ #define MEMORY_LOCK_RELEASE (name ) WIN_MEMORY_LOCK_RELEASE (name)
5454#elif WASM_RT_USE_PTHREADS
5555#define MEMORY_LOCK_VAR_INIT (name ) PTHREAD_MEMORY_LOCK_VAR_INIT(name)
5656#define MEMORY_LOCK_AQUIRE (name ) PTHREAD_MEMORY_LOCK_AQUIRE(name)
5757#define MEMORY_LOCK_RELEASE (name ) PTHREAD_MEMORY_LOCK_RELEASE(name)
58- #elif WASM_RT_USE_CRITICALSECTION
59- #define MEMORY_LOCK_VAR_INIT (name ) WIN_MEMORY_LOCK_VAR_INIT(name)
60- #define MEMORY_LOCK_AQUIRE (name ) WIN_MEMORY_LOCK_AQUIRE(name)
61- #define MEMORY_LOCK_RELEASE (name ) WIN_MEMORY_LOCK_RELEASE(name)
6258#endif
6359
6460#endif
Original file line number Diff line number Diff line change 2929extern void WASM_RT_GROW_FAILED_HANDLER ();
3030#endif
3131
32- #define C11_MEMORY_LOCK_VAR_INIT (name ) \
33- if (mtx_init(&(name), mtx_plain) != thrd_success) { \
34- fprintf(stderr, "Lock init failed\n"); \
35- abort(); \
36- }
37- #define C11_MEMORY_LOCK_AQUIRE (name ) \
38- if (mtx_lock(&(name)) != thrd_success) { \
39- fprintf(stderr, "Lock acquire failed\n"); \
40- abort(); \
41- }
42- #define C11_MEMORY_LOCK_RELEASE (name ) \
43- if (mtx_unlock(&(name)) != thrd_success) { \
44- fprintf(stderr, "Lock release failed\n"); \
45- abort(); \
46- }
47-
4832#define PTHREAD_MEMORY_LOCK_VAR_INIT (name ) \
4933 if (pthread_mutex_init(&(name), NULL) != 0) { \
5034 fprintf(stderr, "Lock init failed\n"); \
Original file line number Diff line number Diff line change @@ -67,14 +67,10 @@ extern "C" {
6767#include <windows.h>
6868#define WASM_RT_MUTEX CRITICAL_SECTION
6969#define WASM_RT_USE_CRITICALSECTION 1
70- #elif defined( __APPLE__ ) || defined( __STDC_NO_THREADS__ )
70+ #else
7171#include <pthread.h>
7272#define WASM_RT_MUTEX pthread_mutex_t
7373#define WASM_RT_USE_PTHREADS 1
74- #else
75- #include <threads.h>
76- #define WASM_RT_MUTEX mtx_t
77- #define WASM_RT_USE_C11THREADS 1
7874#endif
7975
8076#endif
You can’t perform that action at this time.
0 commit comments