Files
MSYS2-packages/gc/gc-7.2d-patch64.diff
2013-11-06 14:53:09 +04:00

208 lines
7.4 KiB
Diff

Only in whatif/gc-7.2: .deps
Only in whatif/gc-7.2: .libs
Binary files pristine/gc-7.2/.os_dep.c.swp and whatif/gc-7.2/.os_dep.c.swp differ
Only in whatif/gc-7.2: allchblk.lo
Only in whatif/gc-7.2: allchblk.o
Only in whatif/gc-7.2: alloc.lo
Only in whatif/gc-7.2: alloc.o
Only in whatif/gc-7.2: atomic_ops.lo
Only in whatif/gc-7.2: atomic_ops.o
Only in whatif/gc-7.2: backgraph.lo
Only in whatif/gc-7.2: backgraph.o
Only in whatif/gc-7.2: bdw-gc.pc
Only in whatif/gc-7.2: blacklst.lo
Only in whatif/gc-7.2: blacklst.o
Only in whatif/gc-7.2: checksums.lo
Only in whatif/gc-7.2: checksums.o
Only in whatif/gc-7.2: config.log
Only in whatif/gc-7.2: config.status
Only in whatif/gc-7.2: cordbscs.lo
Only in whatif/gc-7.2: cordbscs.o
Only in whatif/gc-7.2: cordprnt.lo
Only in whatif/gc-7.2: cordprnt.o
Only in whatif/gc-7.2: cordtest.lo
Only in whatif/gc-7.2: cordtest.o
Only in whatif/gc-7.2: cordxtra.lo
Only in whatif/gc-7.2: cordxtra.o
Only in whatif/gc-7.2: dbg_mlc.lo
Only in whatif/gc-7.2: dbg_mlc.o
Only in whatif/gc-7.2: dyn_load.lo
Only in whatif/gc-7.2: dyn_load.o
Only in whatif/gc-7.2: finalize.lo
Only in whatif/gc-7.2: finalize.o
Only in whatif/gc-7.2: gc_dlopen.lo
Only in whatif/gc-7.2: gc_dlopen.o
Only in whatif/gc-7.2: gcj_mlc.lo
Only in whatif/gc-7.2: gcj_mlc.o
Only in whatif/gc-7.2: headers.lo
Only in whatif/gc-7.2: headers.o
diff -ur pristine/gc-7.2/include/gc.h whatif/gc-7.2/include/gc.h
--- pristine/gc-7.2/include/gc.h 2012-08-09 16:25:13.000000000 -0400
+++ whatif/gc-7.2/include/gc.h 2013-04-22 13:10:01.101686000 -0400
@@ -1385,7 +1385,14 @@
/* THREAD_LOCAL_ALLOC defined and the initial allocation call is not */
/* to GC_malloc() or GC_malloc_atomic(). */
-#ifdef __CYGWIN32__
+#ifdef __CYGWIN__
+#ifdef __x86_64__
+ extern int __data_start__[], __data_end__[], __bss_start__[], __bss_end__[];
+#define GC_DATASTART (__data_start__ < __bss_start__ ?\
+ (void *)__data_start__ : (void *)__bss_start__)
+#define GC_DATAEND (__data_end__ < __bss_end__ ?\
+ (void *)__data_end__ : (void *)__bss_end__)
+#else
/* Similarly gnu-win32 DLLs need explicit initialization from the */
/* main program, as does AIX. */
extern int _data_start__[], _data_end__[], _bss_start__[], _bss_end__[];
@@ -1393,6 +1400,7 @@
(void *)_data_start__ : (void *)_bss_start__)
# define GC_DATAEND (_data_end__ > _bss_end__ ? \
(void *)_data_end__ : (void *)_bss_end__)
+#endif
# define GC_INIT_CONF_ROOTS GC_add_roots(GC_DATASTART, GC_DATAEND); \
GC_gcollect() /* For blacklisting. */
/* Required at least if GC is in a DLL. And doesn't hurt. */
Only in whatif/gc-7.2/include/private: config.h
diff -ur pristine/gc-7.2/include/private/gcconfig.h whatif/gc-7.2/include/private/gcconfig.h
--- pristine/gc-7.2/include/private/gcconfig.h 2012-08-09 16:25:13.000000000 -0400
+++ whatif/gc-7.2/include/private/gcconfig.h 2013-04-21 12:52:28.024399600 -0400
@@ -432,10 +432,20 @@
# endif
# define mach_type_known
# endif
-# if defined(__CYGWIN32__) || defined(__CYGWIN__)
+# if defined(__CYGWIN32__)
# define I386
# define CYGWIN32
# define mach_type_known
+#if defined(__CYGWIN__)
+# if defined(__LP64__)
+# define X86_64
+# define mach_type_known
+# else
+# define I386
+# endif
+# define CYGWIN32
+# define mach_type_known
+#endif
# endif
# if defined(__MINGW32__) && !defined(mach_type_known)
# define I386
@@ -502,6 +512,16 @@
# define mach_type_known
# endif
+#if defined(__CYGWIN__)
+# if defined(__LP64__)
+# define X86_64
+# define mach_type_known
+# else
+# define I386
+# endif
+# define CYGWIN32
+# define mach_type_known
+#endif
/* Feel free to add more clauses here */
/* Or manually define the machine type here. A machine type is */
@@ -2259,6 +2279,19 @@
# define GWW_VDB
# define DATAEND /* not needed */
# endif
+
+# ifdef CYGWIN32
+# define OS_TYPE "CYGWIN32"
+# define DATASTART ((ptr_t)GC_DATASTART) /* From gc.h */
+# define DATAEND ((ptr_t)GC_DATAEND)
+# define ALIGNMENT 8
+# undef STACK_GRAN
+# define STACK_GRAN 0x10000
+# ifdef USE_MMAP
+# define NEED_FIND_LIMIT
+# define USE_MMAP_ANON
+# endif
+# endif
# endif /* X86_64 */
# ifdef HEXAGON
Only in whatif/gc-7.2/include/private: stamp-h1
Only in whatif/gc-7.2/libatomic_ops: config.log
Only in whatif/gc-7.2/libatomic_ops: config.status
Only in whatif/gc-7.2/libatomic_ops/doc: Makefile
Only in whatif/gc-7.2/libatomic_ops: Makefile
Only in whatif/gc-7.2/libatomic_ops/pkgconfig: atomic_ops.pc
Only in whatif/gc-7.2/libatomic_ops/pkgconfig: atomic_ops-uninstalled.pc
Only in whatif/gc-7.2/libatomic_ops/src: .deps
Only in whatif/gc-7.2/libatomic_ops/src/atomic_ops: Makefile
Only in whatif/gc-7.2/libatomic_ops/src/atomic_ops/sysdeps: Makefile
Only in whatif/gc-7.2/libatomic_ops/src: config.h
Only in whatif/gc-7.2/libatomic_ops/src: Makefile
Only in whatif/gc-7.2/libatomic_ops/src: stamp-h1
Only in whatif/gc-7.2/libatomic_ops/tests: .deps
Only in whatif/gc-7.2/libatomic_ops/tests: Makefile
Only in whatif/gc-7.2: libcord.la
Only in whatif/gc-7.2: libgc.la
Only in whatif/gc-7.2: libtool
Only in whatif/gc-7.2: mach_dep.lo
Only in whatif/gc-7.2: mach_dep.o
Only in whatif/gc-7.2: Makefile
Only in whatif/gc-7.2: malloc.lo
Only in whatif/gc-7.2: malloc.o
Only in whatif/gc-7.2: mallocx.lo
Only in whatif/gc-7.2: mallocx.o
Only in whatif/gc-7.2: mark.lo
Only in whatif/gc-7.2: mark.o
Only in whatif/gc-7.2: mark_rts.lo
Only in whatif/gc-7.2: mark_rts.o
Only in whatif/gc-7.2: misc.lo
Only in whatif/gc-7.2: misc.o
Only in whatif/gc-7.2: new_hblk.lo
Only in whatif/gc-7.2: new_hblk.o
Only in whatif/gc-7.2: obj_map.lo
Only in whatif/gc-7.2: obj_map.o
diff -ur pristine/gc-7.2/os_dep.c whatif/gc-7.2/os_dep.c
--- pristine/gc-7.2/os_dep.c 2012-08-09 16:25:13.000000000 -0400
+++ whatif/gc-7.2/os_dep.c 2013-04-22 12:43:32.202498600 -0400
@@ -770,7 +770,14 @@
/* gcc version of boehm-gc). */
GC_API int GC_CALL GC_get_stack_base(struct GC_stack_base *sb)
{
+# ifdef __x86_64__
+ PNT_TIB pTib = NtCurrentTeb();
+ void * _tlsbase = pTib->StackBase;
+ /*void * _tlsbase = NtCurrentTeb()->pTib.StackBase;*/
+ /*extern void * _tlsbase __asm__ ("%gs:8");*/
+# else
extern void * _tlsbase __asm__ ("%fs:4");
+# endif
sb -> mem_base = _tlsbase;
return GC_SUCCESS;
}
Only in whatif/gc-7.2: os_dep.lo
Only in whatif/gc-7.2: os_dep.o
Only in whatif/gc-7.2: pcr_interface.lo
Only in whatif/gc-7.2: pcr_interface.o
Only in whatif/gc-7.2: pthread_start.lo
Only in whatif/gc-7.2: pthread_start.o
Only in whatif/gc-7.2: pthread_stop_world.lo
Only in whatif/gc-7.2: pthread_stop_world.o
Only in whatif/gc-7.2: pthread_support.lo
Only in whatif/gc-7.2: pthread_support.o
Only in whatif/gc-7.2: ptr_chck.lo
Only in whatif/gc-7.2: ptr_chck.o
Only in whatif/gc-7.2: real_malloc.lo
Only in whatif/gc-7.2: real_malloc.o
Only in whatif/gc-7.2: reclaim.lo
Only in whatif/gc-7.2: reclaim.o
Only in whatif/gc-7.2: specific.lo
Only in whatif/gc-7.2: specific.o
Only in whatif/gc-7.2: stubborn.lo
Only in whatif/gc-7.2: stubborn.o
Only in whatif/gc-7.2: thread_local_alloc.lo
Only in whatif/gc-7.2: thread_local_alloc.o
Only in whatif/gc-7.2: typd_mlc.lo
Only in whatif/gc-7.2: typd_mlc.o
Only in whatif/gc-7.2: win32_threads.lo
Only in whatif/gc-7.2: win32_threads.o