about summary refs log tree commit diff stats
path: root/src/librarian/globalsymbols.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/librarian/globalsymbols.c')
-rw-r--r--src/librarian/globalsymbols.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/librarian/globalsymbols.c b/src/librarian/globalsymbols.c
index 462af7fb..8da444ad 100644
--- a/src/librarian/globalsymbols.c
+++ b/src/librarian/globalsymbols.c
@@ -17,21 +17,21 @@
 // workaround for Globals symbols

 

 #define GLOB(A, B) \

-    if (GetGlobalNoWeakSymbolStartEnd(my_context->maplib, #A, &globoffs, &globend, -1, NULL, NULL)) {     \

+    if (GetGlobalNoWeakSymbolStartEnd(my_context->maplib, #A, &globoffs, &globend, -1, NULL, 0, NULL)) {  \

         printf_log(LOG_DEBUG, "Global " #A " workaround, @%p <- %p\n", (void*)globoffs, &A);              \

         memcpy((void*)globoffs, &A, sizeof(A));                                                           \

     }                                                                                                     \

-    if (B && GetGlobalNoWeakSymbolStartEnd(my_context->maplib, #A, &globoffs, &globend, -1, NULL, B)) {   \

+    if (B && GetGlobalNoWeakSymbolStartEnd(my_context->maplib, #A, &globoffs, &globend, 2, B, 1, NULL)) { \

         printf_log(LOG_DEBUG, "Global " #A " workaround, @%p <- %p\n", (void*)globoffs, &A);              \

         memcpy((void*)globoffs, &A, sizeof(A));                                                           \

     }

 

 #define TOGLOB(A, B) \

-    if (GetGlobalNoWeakSymbolStartEnd(my_context->maplib, #A, &globoffs, &globend, -1, NULL, NULL)) {     \

+    if (GetGlobalNoWeakSymbolStartEnd(my_context->maplib, #A, &globoffs, &globend, -1, NULL, 0, NULL)) {  \

         printf_log(LOG_DEBUG, "Global " #A " workaround, @%p -> %p\n", (void*)globoffs, &A);              \

         memcpy(&A, (void*)globoffs, sizeof(A));                                                           \

     }                                                                                                     \

-    if (B && GetGlobalNoWeakSymbolStartEnd(my_context->maplib, #A, &globoffs, &globend, -1, NULL, B)) {   \

+    if (B && GetGlobalNoWeakSymbolStartEnd(my_context->maplib, #A, &globoffs, &globend, 2, B, 1, NULL)) { \

         printf_log(LOG_DEBUG, "Global " #A " workaround, @%p -> %p\n", (void*)globoffs, &A);              \

         memcpy(&A, (void*)globoffs, sizeof(A));                                                           \

     }

@@ -50,7 +50,7 @@ void my_setGlobalGThreadsInit()
 {

     int val = 1;

     uintptr_t globoffs, globend;

-    if (GetGlobalNoWeakSymbolStartEnd(my_context->maplib, "g_threads_got_initialized", &globoffs, &globend, -1, NULL, NULL)) {

+    if (GetGlobalNoWeakSymbolStartEnd(my_context->maplib, "g_threads_got_initialized", &globoffs, &globend, -1, NULL, 0, NULL)) {

         printf_log(LOG_DEBUG, "Global g_threads_got_initialized workaround, @%p <= %d\n", (void*)globoffs, val);

         memcpy((void*)globoffs, &val, sizeof(val));

     }