[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.1

1.1     ! takayama    1: *** include/gc.h.orig  Tue Jun  3 15:08:02 2014
        !             2: --- include/gc.h       Mon Sep 28 13:23:14 2015
        !             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>