[BACK]Return to gc-cygwin64.diff CVS log [TXT][DIR] Up to [local] / OpenXM / src / gc

Annotation of OpenXM/src/gc/gc-cygwin64.diff, Revision 1.2

1.2     ! ohara       1: *** gc-7.4.2/include/gc.h.orig Tue Jun  3 15:08:02 2014
        !             2: --- gc-7.4.2/include/gc.h      Mon Sep 28 13:23:14 2015
1.1       takayama    3: ***************
                      4: *** 1592,1598 ****
                      5:   /* THREAD_LOCAL_ALLOC defined and the initial allocation call is not    */
                      6:   /* to GC_malloc() or GC_malloc_atomic().                                */
                      7:
                      8: ! #if defined(__CYGWIN32__) || defined(__CYGWIN__)
                      9:     /* Similarly gnu-win32 DLLs need explicit initialization from the     */
                     10:     /* main program, as does AIX.                                         */
                     11:     extern int _data_start__[], _data_end__[], _bss_start__[], _bss_end__[];
                     12: --- 1592,1605 ----
                     13:   /* THREAD_LOCAL_ALLOC defined and the initial allocation call is not    */
                     14:   /* to GC_malloc() or GC_malloc_atomic().                                */
                     15:
                     16: ! #ifdef __CYGWIN__
                     17: ! #ifdef __x86_64__
                     18: !   extern int __data_start__[], __data_end__[], __bss_start__[], __bss_end__[];
                     19: ! #define GC_DATASTART (__data_start__ < __bss_start__ ?\
                     20: !                       (void *)__data_start__ : (void *)__bss_start__)
                     21: ! #define GC_DATAEND (__data_end__ < __bss_end__ ?\
                     22: !                       (void *)__data_end__ : (void *)__bss_end__)
                     23: ! #else
                     24:     /* Similarly gnu-win32 DLLs need explicit initialization from the     */
                     25:     /* main program, as does AIX.                                         */
                     26:     extern int _data_start__[], _data_end__[], _bss_start__[], _bss_end__[];
                     27: ***************
                     28: *** 1600,1605 ****
                     29: --- 1607,1613 ----
                     30:                          (void *)_data_start__ : (void *)_bss_start__)
                     31:   # define GC_DATAEND ((GC_word)_data_end__ > (GC_word)_bss_end__ ? \
                     32:                        (void *)_data_end__ : (void *)_bss_end__)
                     33: + #endif
                     34:   # define GC_INIT_CONF_ROOTS GC_add_roots(GC_DATASTART, GC_DATAEND); \
                     35:                                    GC_gcollect() /* For blacklisting. */
                     36:           /* Required at least if GC is in a DLL.  And doesn't hurt. */

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>