mono
dlsymdlopen5.10.1.57
46 / 82201 files match, 7 filtered matches.
- mono/utils/mono-dl-posix.c
- mono/mini/mini-darwin.c
- mono/eglib/gmodule-unix.c
- libgc/threadlibs.c
- libgc/dyn_load.c
- libgc/gc_dlopen.c
- libgc/include/gc_pthread_redirects.h
mono/utils/mono-dl-posix.c
65 | if (!file)
66 | return NULL;
67 | #endif
68 | return dlopen (file, flags);
69 | }
70 |
mono/mini/mini-darwin.c
70 | /* This is #define'd by Boehm GC to _GC_dlopen. */
71 | #undef dlopen
72 |
73 | void* dlopen(const char* path, int mode);
74 |
75 | void
84 | */
85 | #if defined (__APPLE__) && (defined (__i386__) || defined (__x86_64__))
86 | {
87 | void *handle = dlopen ("/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation", RTLD_LAZY);
88 | if (handle == NULL)
89 | return;
mono/eglib/gmodule-unix.c
56 | if ((flags & G_MODULE_BIND_LOCAL) != 0)
57 | f |= RTLD_LOCAL;
58 |
59 | handle = dlopen (file, f);
60 | if (handle == NULL)
61 | return NULL;
libgc/threadlibs.c
4 | int main()
5 | {
6 | # if defined(GC_USE_LD_WRAP)
7 | printf("-Wl,--wrap -Wl,dlopen "
8 | "-Wl,--wrap -Wl,pthread_create -Wl,--wrap -Wl,pthread_join "
9 | "-Wl,--wrap -Wl,pthread_detach "
libgc/dyn_load.c
36 |
37 | /* BTL: avoid circular redefinition of dlopen if GC_SOLARIS_THREADS defined */
38 | # if (defined(GC_PTHREADS) || defined(GC_SOLARIS_THREADS)) \
39 | && defined(dlopen) && !defined(GC_USE_LD_WRAP)
40 | /* To support threads in Solaris, gc.h interposes on dlopen by */
41 | /* defining "dlopen" to be "GC_dlopen", which is implemented below. */
149 | /* to use its value in the set of original object files loaded */
150 | /* at program startup. */
151 | if( dynStructureAddr == 0 ) {
152 | void* startupSyms = dlopen(0, RTLD_LAZY);
153 | dynStructureAddr = (ElfW(Dyn)*)dlsym(startupSyms, "_DYNAMIC");
154 | }
224 | /* Add dynamic library data sections to the root set. */
225 | # if !defined(PCR) && !defined(GC_SOLARIS_THREADS) && defined(THREADS)
226 | # ifndef SRC_M3
227 | --> fix mutual exclusion with dlopen
228 | # endif /* We assume M3 programs don't call dlopen for now */
229 | # endif
libgc/gc_dlopen.c
45 | /* calls in either a multithreaded environment, or if the library */
46 | /* initialization code allocates substantial amounts of GC'ed memory. */
47 | /* But I don't know of a better solution. */
48 | static void disable_gc_for_dlopen()
49 | {
50 | LOCK();
62 | #include <dlfcn.h>
63 |
64 | #ifdef GC_USE_LD_WRAP
65 | void * __wrap_dlopen(const char *path, int mode)
66 | #else
67 | void * GC_dlopen(path, mode)
68 | GC_CONST char * path;
69 | int mode;
72 | void * result;
73 |
74 | # ifndef USE_PROC_FOR_LIBRARIES
75 | disable_gc_for_dlopen();
76 | # endif
77 | # ifdef GC_USE_LD_WRAP
78 | result = (void *)__real_dlopen(path, mode);
79 | # else
80 | result = dlopen(path, mode);
81 | # endif
82 | # ifndef USE_PROC_FOR_LIBRARIES
83 | GC_enable(); /* undoes disable_gc_for_dlopen */
84 | # endif
85 | return(result);
libgc/include/gc_pthread_redirects.h
20 | int GC_thr_join(thread_t wait_for, thread_t *departed, void **status);
21 | int GC_thr_suspend(thread_t target_thread);
22 | int GC_thr_continue(thread_t target_thread);
23 | void * GC_dlopen(const char *path, int mode);
24 | # define thr_create GC_thr_create
25 | # define thr_join GC_thr_join