gc: fix missing pthread registration causing unknown thread error

- Use `GC_pthread_create` instead of `pthread_create` when GC is
  enabled.
This commit is contained in:
Aofei Sheng
2024-08-15 18:40:17 +08:00
parent 4501519c4f
commit 8e66091dd2
7 changed files with 75 additions and 9 deletions

View File

@@ -0,0 +1,11 @@
#define GC_THREADS
#include <gc.h>
#include <pthread.h>
int llgoPthreadCreate(pthread_t *thread, const pthread_attr_t *attr, void *(*start_routine)(void *), void *arg) {
return GC_pthread_create(thread, attr, start_routine, arg);
}
int llgoPthreadJoin(pthread_t thread, void **retval) {
return GC_pthread_join(thread, retval);
}

View File

@@ -0,0 +1,9 @@
#include <pthread.h>
int llgoPthreadCreate(pthread_t *thread, const pthread_attr_t *attr, void *(*start_routine)(void *), void *arg) {
return pthread_create(thread, attr, start_routine, arg);
}
int llgoPthreadJoin(pthread_t thread, void **retval) {
return pthread_join(thread, retval);
}