]> granicus.if.org Git - gc/log
gc
12 years agoFix GC_push_all/selected boundaries check
Ivan Maidanski [Thu, 16 Feb 2012 18:47:28 +0000 (22:47 +0400)]
Fix GC_push_all/selected boundaries check

* mark.c (GC_push_all, GC_push_selected): Properly check for empty
region after boundaries alignment (for the case when boundaries
unaligned and the region is short than one word); simplify the checked
condition.

12 years agoFix GC_finalizer_nested size to workaround alignment problem in Watcom
Ivan Maidanski [Thu, 16 Feb 2012 18:05:31 +0000 (22:05 +0400)]
Fix GC_finalizer_nested size to workaround alignment problem in Watcom

* finalize.c (GC_finalizer_nested): Change type from char to int to
force GC symbols proper alignment for some compilers (e.g., Watcom);
add comment.
* finalize.c (GC_check_finalizer_nested): Cast GC_finalizer_nested
properly (since it holds an unsigned char value).
* os_dep.c (GC_get_maps): Remove static "init_buf" variable (of char
size) and initialize "maps_buf" to NULL since it is allocated anyway
(since maps_size is non-zero).
* os_dep.c (GC_register_data_segments): Remove static "dummy" variable
(of char size) and use GC_pages_executable instead.

12 years agoUpdate ChangeLog
Ivan Maidanski [Wed, 15 Feb 2012 04:39:41 +0000 (08:39 +0400)]
Update ChangeLog

12 years agoPrevent NO_DYLD_BIND_FULLY_IMAGE redefinition (Darwin)
Ivan Maidanski [Tue, 14 Feb 2012 19:34:30 +0000 (23:34 +0400)]
Prevent NO_DYLD_BIND_FULLY_IMAGE redefinition (Darwin)

* include/private/gcconfig.h (NO_DYLD_BIND_FULLY_IMAGE): Do not define
if already defined (e.g., by compiler -D option).

12 years agoUpdate ChangeLog
Ivan Maidanski [Fri, 10 Feb 2012 04:31:07 +0000 (08:31 +0400)]
Update ChangeLog

12 years agoFix GC_root_size update in GC_add_roots_inner (Win32)
Ivan Maidanski [Fri, 10 Feb 2012 04:26:40 +0000 (08:26 +0400)]
Fix GC_root_size update in GC_add_roots_inner (Win32)

* mark_rts.c (GC_add_roots_inner): Fix update of GC_root_size value
for Win32 (adjust GC_root_size before altering r_start/r_end).

12 years agoUpdate ChangeLog
Ivan Maidanski [Fri, 3 Feb 2012 16:42:22 +0000 (20:42 +0400)]
Update ChangeLog

12 years agoAdd GC_is_disabled new function to GC API
Ivan Maidanski [Wed, 1 Feb 2012 17:25:44 +0000 (21:25 +0400)]
Add GC_is_disabled new function to GC API

* include/gc.h (GC_dont_gc): Improve comment (add note for new client
code).
* include/gc.h (GC_is_disabled): New API function.
* misc.c (GC_is_disabled): Likewise.

12 years agoRefine GC_stackbottom description in gc.h
Ivan Maidanski [Wed, 1 Feb 2012 17:17:18 +0000 (21:17 +0400)]
Refine GC_stackbottom description in gc.h

* include/gc.h (GC_stackbottom): Improve comment (add note for
new client code).

12 years agoFix a typo in gc.h comment
Ivan Maidanski [Wed, 1 Feb 2012 16:56:28 +0000 (20:56 +0400)]
Fix a typo in gc.h comment

* include/gc.h (GC_base): Fix a typo in the comment.

12 years agocordtest: Report success to stdout instead of stderr
Ivan Maidanski [Wed, 1 Feb 2012 16:36:20 +0000 (20:36 +0400)]
cordtest: Report success to stdout instead of stderr

* cord/tests/cordtest.c (main): Print "SUCCEEDED" message to stdout
instead of stderr.

12 years agoUpdate ChangeLog
Ivan Maidanski [Tue, 31 Jan 2012 04:31:11 +0000 (08:31 +0400)]
Update ChangeLog

12 years agoFix FREE_ASSERT usage (fix missing trailing semi-colon)
Ivan Maidanski [Tue, 31 Jan 2012 04:24:26 +0000 (08:24 +0400)]
Fix FREE_ASSERT usage (fix missing trailing semi-colon)

* allchblk.c (GC_add_to_fl): Append ';' after FREE_ASSERT().
* allchblk.c (GC_remove_from_fl): Fix a typo in a comment.

13 years agoUpdate ChangeLog
Ivan Maidanski [Thu, 26 Jan 2012 16:55:49 +0000 (20:55 +0400)]
Update ChangeLog

13 years agoFix gcconfig.h to define USE_GET_STACKBASE_FOR_MAIN for Android
Ivan Maidanski [Thu, 26 Jan 2012 05:16:10 +0000 (09:16 +0400)]
Fix gcconfig.h to define USE_GET_STACKBASE_FOR_MAIN for Android
(causing pthread_attr_getstack to be used to get main stack base
even in single-threaded mode instead of GC_linux_main_stack_base)

* include/private/gcconfig.h (USE_GET_STACKBASE_FOR_MAIN): Define if
PLATFORM_ANDROID.

13 years agoFix GC_add_roots_inner for Mac OS X (enable GC_dyld_image_add to
Daniel R. Grayson [Thu, 26 Jan 2012 04:42:33 +0000 (08:42 +0400)]
Fix GC_add_roots_inner for Mac OS X (enable GC_dyld_image_add to
pass unaligned segment start to GC_add_roots)

* mark_rts.c (GC_add_roots_inner): Round "b" pointer up to word
boundary.
* include/gc.h (GC_add_roots): Update the comment.

13 years agoWorkaround some Linux/arm kernels bug to get correct GC_nprocs value
Ivan Maidanski [Tue, 24 Jan 2012 15:31:53 +0000 (19:31 +0400)]
Workaround some Linux/arm kernels bug to get correct GC_nprocs value

* pthread_support.c (STAT_READ, STAT_BUF_SIZE): Move the definition
out of PLATFORM_ANDROID condition.
* pthread_support.c (GC_get_nprocs_present): New static function
obtaining number of avalable CPUs from
"/sys/devices/system/cpu/present" (only Linux/arm excluding NaCl).
* pthread_support.c (GC_thr_init): Invoke GC_get_nprocs_present
(unless set from the environment variable) to workaround a bug in
some Linux/arm kernels (including Android).

13 years agoFix GC_get_nprocs (Linux) returned variable type
Ivan Maidanski [Tue, 24 Jan 2012 04:39:47 +0000 (08:39 +0400)]
Fix GC_get_nprocs (Linux) returned variable type

* pthread_support.c (GC_get_nprocs): Change "result" local variable
type to int from word (to match returned value type); remove redundant
cast; initialize "result" variable just before its use.

13 years ago.gitignore: Add gc.log
Ivan Maidanski [Tue, 24 Jan 2012 04:23:17 +0000 (08:23 +0400)]
.gitignore: Add gc.log

13 years agoUpdate ChangeLog
Ivan Maidanski [Mon, 23 Jan 2012 17:33:38 +0000 (21:33 +0400)]
Update ChangeLog

13 years agoFix a typo in a comment in os_dep.c
Ivan Maidanski [Mon, 23 Jan 2012 03:48:48 +0000 (07:48 +0400)]
Fix a typo in a comment in os_dep.c

* os_dep.c (GC_sigbus_count): Fix a typo in a comment.

13 years agoRegenerate configure; update ChangeLog
Ivan Maidanski [Fri, 20 Jan 2012 19:08:50 +0000 (23:08 +0400)]
Regenerate configure; update ChangeLog

13 years agoUpdate bug reports email address (recommend GC mailing list)
Ivan Maidanski [Fri, 20 Jan 2012 18:29:49 +0000 (22:29 +0400)]
Update bug reports email address (recommend GC mailing list)
(Apply commit fee74d3 from 'master' branch)

* configure.ac (AC_INIT): Update bug reports email.
* doc/gcdescr.html: Likewise.
* doc/README.cords: Likewise.
* doc/overview.html: Fix email address.

13 years agoUpdate ChangeLog
Ivan Maidanski [Wed, 18 Jan 2012 04:52:01 +0000 (08:52 +0400)]
Update ChangeLog

13 years agoFix realloc_test to check GC_malloc result for NULL
Ivan Maidanski [Wed, 18 Jan 2012 04:39:17 +0000 (08:39 +0400)]
Fix realloc_test to check GC_malloc result for NULL

* tests/realloc_test.c (main): Prevent NULL pointer dereference
(exit with an error message in case of NULL returned by GC_malloc).

13 years agoUpdate ChangeLog
Ivan Maidanski [Tue, 17 Jan 2012 15:54:57 +0000 (19:54 +0400)]
Update ChangeLog

13 years agoFix cordtest temporary file names for Win32
Ivan Maidanski [Tue, 17 Jan 2012 04:19:04 +0000 (08:19 +0400)]
Fix cordtest temporary file names for Win32

* cord/tests/cordtest.c (FNAME1, FNAME2): Do not specify folder
(platform-dependent) for temporary file; use same short file name
(DOS-compatible) for all targets.

13 years agoUpdate ChangeLog
Ivan Maidanski [Mon, 16 Jan 2012 05:40:44 +0000 (09:40 +0400)]
Update ChangeLog

13 years agoFix extra/gc.c to enable GC source inclusion from multi-threaded app
Ivan Maidanski [Fri, 13 Jan 2012 15:53:47 +0000 (19:53 +0400)]
Fix extra/gc.c to enable GC source inclusion from multi-threaded app

* extra/gc.c: Include gc_pthread_redirects.h (unless
GC_NO_THREAD_REDIRECTS) to restore thread calls macro-based
redirection after the corresponding undef's in pthread_support.c.
* win32_threads.c: Restore thread calls macro-based redirection
(unless GC_NO_THREAD_REDIRECTS) at the file end.
* extra/gc.c: Remove "file not well tested" comment.

13 years agoFix GC_restart_handler to preserve errno if needed
Ivan Maidanski [Tue, 10 Jan 2012 17:00:59 +0000 (21:00 +0400)]
Fix GC_restart_handler to preserve errno if needed

* pthread_stop_world.c (GC_restart_handler): Preserve errno value in
case of sem_post or GC_log_printf invocation inside.

13 years ago.gitignore: Ignore *.gc.log files
Ivan Maidanski [Thu, 12 Jan 2012 03:29:56 +0000 (07:29 +0400)]
.gitignore: Ignore *.gc.log files

13 years agoRegenerate configure; update ChangeLog
Ivan Maidanski [Fri, 30 Dec 2011 10:27:03 +0000 (14:27 +0400)]
Regenerate configure; update ChangeLog

13 years agoFix configure --enable-cplusplus make install
Ivan Maidanski [Wed, 28 Dec 2011 10:55:57 +0000 (14:55 +0400)]
Fix configure --enable-cplusplus make install
(Apply commit b71d819)

* Makefile.am (pkginclude_HEADERS): Remove gc_allocator.h
entry.
* Makefile.am (include_HEADERS): Add include/extra/gc_cpp.h entry
(only if CPLUSPLUS).
* include/include.am (pkginclude_HEADERS): Remove include/gc_cpp.h
entry.
* include/include.am (include_HEADERS): Remove include/extra/gc_cpp.h
entry.

13 years agoFix GC_ASSERT usage (fix missing trailing semi-colon)
Ivan Maidanski [Thu, 29 Dec 2011 06:38:09 +0000 (10:38 +0400)]
Fix GC_ASSERT usage (fix missing trailing semi-colon)

* misc.c (GC_init): Append ';' after GC_ASSERT().
* os_dep.c (GC_protect_heap): Likewise.

13 years agoFix GC_printf import declarator in test_cpp.cc
Ivan Maidanski [Wed, 28 Dec 2011 08:44:06 +0000 (12:44 +0400)]
Fix GC_printf import declarator in test_cpp.cc

* tests/test_cpp.cc (GC_API_PRIV): New macro (same definition as in
gc_priv.h).
* tests/test_cpp.cc (GC_printf): Use GC_API_PRIV instead of GC_API.

13 years agoFix compiler warning in GC_dyld_image_add/remove (Darwin)
Ivan Maidanski [Wed, 28 Dec 2011 06:42:49 +0000 (10:42 +0400)]
Fix compiler warning in GC_dyld_image_add/remove (Darwin)

* dyn_load.c (GC_dyld_image_add, GC_dyld_image_remove): Declare i, j
local variables as unsigned (to prevent compiler warning in
a comparison involving sizeof)

13 years agoUpdate ChangeLog
Ivan Maidanski [Tue, 27 Dec 2011 12:52:27 +0000 (16:52 +0400)]
Update ChangeLog

13 years agoFix gcconfig.h to define HBLKSIZE for Linux/mips
Richard Sandiford [Tue, 27 Dec 2011 07:25:27 +0000 (11:25 +0400)]
Fix gcconfig.h to define HBLKSIZE for Linux/mips
(Apply part of commit 438c5d9 from 'gcc_boehmgc' branch)

* include/private/gcconfig.h (HBLKSIZE): Define for MIPS.

13 years agoFix gcconfig.h to handle mips64-linux target
David Daney [Tue, 27 Dec 2011 07:18:11 +0000 (11:18 +0400)]
Fix gcconfig.h to handle mips64-linux target
(Apply part of commit 3cf0bae from 'gcc_boehmgc' branch)

* include/private/gcconfig.h (CPP_WORDSZ, ALIGNMENT): Handle
mips64-linux n64 ABI.

13 years ago.gitignore: Ignore config.cache
Ivan Maidanski [Thu, 22 Dec 2011 07:10:25 +0000 (11:10 +0400)]
.gitignore: Ignore config.cache

13 years agoRegenerate configure; update ChangeLog
Ivan Maidanski [Thu, 15 Dec 2011 13:58:47 +0000 (17:58 +0400)]
Regenerate configure; update ChangeLog

13 years agoFix configure to disable GCC aliasing optimization unless forced to
Ivan Maidanski [Thu, 15 Dec 2011 13:42:01 +0000 (17:42 +0400)]
Fix configure to disable GCC aliasing optimization unless forced to

* configure.ac (ac_cv_fno_strict_aliasing): New variable (set to
"skipped" if the client passed "-fstrict-aliasing" option to CFLAGS
else set to "yes" if GCC supports "-fno-strict-aliasing" option,
otherwise set to "no").
* configure.ac (CFLAGS): Append "-fno-strict-aliasing" if
ac_cv_fno_strict_aliasing is "yes" (only if GCC).

13 years ago.gitignore: Ignore Gcov files (.gcda, .gcno)
Ivan Maidanski [Tue, 13 Dec 2011 14:43:27 +0000 (18:43 +0400)]
.gitignore: Ignore Gcov files (.gcda, .gcno)

13 years ago.gitignore: Ignore disclaim tests executables
Ivan Maidanski [Fri, 30 Sep 2011 09:44:36 +0000 (13:44 +0400)]
.gitignore: Ignore disclaim tests executables

13 years agoRegenerate configure; update ChangeLog
Ivan Maidanski [Tue, 13 Dec 2011 07:19:46 +0000 (11:19 +0400)]
Regenerate configure; update ChangeLog

13 years agoFix use of enable_gc_debug in configure (DG/UX on AViiON)
Ivan Maidanski [Tue, 13 Dec 2011 07:06:44 +0000 (11:06 +0400)]
Fix use of enable_gc_debug in configure (DG/UX on AViiON)

* configure.ac (ac_is_dgux): Move down to below gc-debug processing
(DG/UX) since it uses "enable_gc_debug" variable; remove FIXME.

13 years agoPreserve client-specified CFLAGS for DG/UX
Ivan Maidanski [Thu, 1 Dec 2011 09:47:26 +0000 (13:47 +0400)]
Preserve client-specified CFLAGS for DG/UX

* configure.ac (CFLAGS, CXXFLAGS): Preserve C/C++ flags passed by
client (DG/UX only); remove code duplication (put common flags to
"dgux_spec_opts" variable).

13 years agoFix some typos.
Bruce Mitchener [Fri, 9 Dec 2011 04:23:00 +0000 (11:23 +0700)]
Fix some typos.

13 years agoUpdate ChangeLog
Ivan Maidanski [Wed, 23 Nov 2011 11:31:59 +0000 (15:31 +0400)]
Update ChangeLog

13 years agoTypo fixes in README, doc/README.cmake, doc/README.darwin
Bruce Mitchener [Wed, 23 Nov 2011 06:59:04 +0000 (13:59 +0700)]
Typo fixes in README, doc/README.cmake, doc/README.darwin
(Apply commit 72f0c9f)

13 years agoFlag autogen.sh as executable.
Bruce Mitchener [Wed, 23 Nov 2011 07:00:07 +0000 (14:00 +0700)]
Flag autogen.sh as executable.

13 years agoUpdate ChangeLog
Ivan Maidanski [Tue, 15 Nov 2011 11:54:53 +0000 (15:54 +0400)]
Update ChangeLog

13 years agoImplement precise value boundary check in GC_is_thread_tsd_valid
Ivan Maidanski [Tue, 15 Nov 2011 11:01:52 +0000 (15:01 +0400)]
Implement precise value boundary check in GC_is_thread_tsd_valid

* pthread_support.c (GC_is_thread_tsd_valid): Check tsd more correctly
using GC_thread and thread_local_freelists declarations; remove FIXME.
* win32_threads.c (GC_is_thread_tsd_valid): Likewise.

13 years agoFix thread_local_alloc GC_malloc[_atomic] for USE_CUSTOM_SPECIFIC TLS
Ivan Maidanski [Tue, 15 Nov 2011 10:44:29 +0000 (14:44 +0400)]
Fix thread_local_alloc GC_malloc[_atomic] for USE_CUSTOM_SPECIFIC TLS
platforms (e.g., Solaris)

* thread_local_alloc.c (GC_malloc, GC_malloc_atomic): Test result of
GC_getspecific() for NULL in all cases except for USE_COMPILER_TLS and
USE_WIN32_COMPILER_TLS (i.e., no-op implementation of GC_getspecific).

13 years agoUpdate ChangeLog
Ivan Maidanski [Mon, 17 Oct 2011 17:21:49 +0000 (21:21 +0400)]
Update ChangeLog

13 years agogcconfig.h: Add machine description for Hexagon
Linas Vepstas [Mon, 10 Oct 2011 07:33:39 +0000 (11:33 +0400)]
gcconfig.h: Add machine description for Hexagon

13 years agoUpdate ChangeLog
Ivan Maidanski [Fri, 30 Sep 2011 12:20:32 +0000 (16:20 +0400)]
Update ChangeLog

13 years agotests: Add missing checks of GC_malloc result (for out-of-memory)
Ivan Maidanski [Fri, 30 Sep 2011 12:17:31 +0000 (16:17 +0400)]
tests: Add missing checks of GC_malloc result (for out-of-memory)

* tests/test.c (mktree): Insert CHECK_OUT_OF_MEMORY to report mktree()
out-of-memory failures.
* tests/trace_test.c (mktree): Test whether GC_MALLOC_ATOMIC returns
NULL (exit with an error code and the appropriate message printed in
this case).

13 years agoApply hotfix-7_2a6-4 to the current release
Ivan Maidanski [Fri, 23 Sep 2011 14:54:38 +0000 (18:54 +0400)]
Apply hotfix-7_2a6-4 to the current release

13 years agoRegenerate configure; update ChangeLog
Ivan Maidanski [Fri, 23 Sep 2011 08:13:03 +0000 (12:13 +0400)]
Regenerate configure; update ChangeLog

13 years agoChange configure to define NO_DEBUGGING if "--disable-gc-debug"
Ivan Maidanski [Fri, 23 Sep 2011 07:59:19 +0000 (11:59 +0400)]
Change configure to define NO_DEBUGGING if "--disable-gc-debug"

* configure.ac (NO_DEBUGGING): Define based on testing enable_gc_debug
value (instead of based on with_cross_host value).

13 years agoFix commit 505b041 regarding configure THREAD_LOCAL_ALLOC (Win32)
Ivan Maidanski [Fri, 23 Sep 2011 07:45:54 +0000 (11:45 +0400)]
Fix commit 505b041 regarding configure THREAD_LOCAL_ALLOC (Win32)

* configure.ac (THREAD_LOCAL_ALLOC): Test enable_shared and
enable_static values properly when setting THREAD_LOCAL_ALLOC
in case PARALLEL_MARK is off (Win32 only).

13 years agoApply hotfix-7_2a6-3 to the current release
Ivan Maidanski [Thu, 22 Sep 2011 12:18:35 +0000 (16:18 +0400)]
Apply hotfix-7_2a6-3 to the current release

13 years agoRegenerate configure; update ChangeLog
Ivan Maidanski [Thu, 22 Sep 2011 12:15:04 +0000 (16:15 +0400)]
Regenerate configure; update ChangeLog

13 years agoDefine GC_DLL if building only dynamic libraries.
Ivan Maidanski [Thu, 22 Sep 2011 11:46:54 +0000 (15:46 +0400)]
Define GC_DLL if building only dynamic libraries.
Update README for Cygwin/MinGW.

* configure.ac (GC_DLL): New AC template; define if only the dynamic
libraries are being built.
* configure.ac (THREAD_LOCAL_ALLOC): Define for Win32 implicitly
if static libraries are being built (i.e. GC_DLL is not defined).
* doc/README.win32: Update "GNU Tools" section.

13 years agoFix thread model in configure for MinGW.
Ivan Maidanski [Thu, 22 Sep 2011 11:40:31 +0000 (15:40 +0400)]
Fix thread model in configure for MinGW.

* configure.ac (THREADS): Change "posix" to "win32" in case of
cross-compiling to MinGW.

13 years agoEnable parallel marker in configure for Solaris.
Ivan Maidanski [Thu, 22 Sep 2011 11:30:02 +0000 (15:30 +0400)]
Enable parallel marker in configure for Solaris.

* configure.ac (PARALLEL_MARK): Check --enable-parallel-mark also for
Solaris.

13 years ago.gitignore: Add subthread_create
Ivan Maidanski [Tue, 20 Sep 2011 15:44:53 +0000 (19:44 +0400)]
.gitignore: Add subthread_create

13 years agoUpdate ChangeLog
Ivan Maidanski [Tue, 20 Sep 2011 08:19:11 +0000 (12:19 +0400)]
Update ChangeLog

13 years agoFix GC_inner_start_routine() to prevent local variable clobbering.
Ivan Maidanski [Tue, 20 Sep 2011 08:15:17 +0000 (12:15 +0400)]
Fix GC_inner_start_routine() to prevent local variable clobbering.

* pthread_start.c (GC_inner_start_routine): Add volatile to "me" local
variable to prevent its clobbering.

13 years agotests: print a message in case a test is a no-op.
Ivan Maidanski [Tue, 20 Sep 2011 07:45:02 +0000 (11:45 +0400)]
tests: print a message in case a test is a no-op.

* tests/threadkey_test.c (main): Print a message if the test is
skipped.

13 years agoUpdate ChangeLog.
Ivan Maidanski [Wed, 14 Sep 2011 18:06:49 +0000 (22:06 +0400)]
Update ChangeLog.

13 years agoResolve "comparison of signed and unsigned values" compiler warning.
Ivan Maidanski [Wed, 14 Sep 2011 18:02:00 +0000 (22:02 +0400)]
Resolve "comparison of signed and unsigned values" compiler warning.

* backgraph.c (per_object_helper): Cast "i" local variable to word
(instead of "sz") in a comparison.

13 years ago.gitignore: Ignore tracetest executable.
Ivan Maidanski [Wed, 14 Sep 2011 17:56:25 +0000 (21:56 +0400)]
.gitignore: Ignore tracetest executable.

13 years agoUpdate ChangeLog.
Ivan Maidanski [Wed, 14 Sep 2011 14:18:09 +0000 (18:18 +0400)]
Update ChangeLog.

13 years agoFix Makefile.direct after Makefile removal from package.
Ivan Maidanski [Wed, 14 Sep 2011 14:14:59 +0000 (18:14 +0400)]
Fix Makefile.direct after Makefile removal from package.

* .gitignore: Add "base_lib", "c++", "gc.a" files.
* Makefile.direct (Makefile): Add rule to create (or overwrite)
Makefile from Makefile.direct file.
* Makefile.direct (clean): Remove "base_lib", "c++" files as well.

13 years ago.gitignore: Ignore object, exe files in subfolders; ignore de_win.res.
Ivan Maidanski [Wed, 14 Sep 2011 12:35:24 +0000 (16:35 +0400)]
.gitignore: Ignore object, exe files in subfolders; ignore de_win.res.
(Apply commit c03f615)

13 years agoUpdate ChangeLog.
Ivan Maidanski [Tue, 13 Sep 2011 17:22:47 +0000 (21:22 +0400)]
Update ChangeLog.

13 years agoAdjust CMakeLists.txt for Cygwin (set CMAKE_LEGACY_CYGWIN_WIN32).
Ivan Maidanski [Tue, 13 Sep 2011 17:13:25 +0000 (21:13 +0400)]
Adjust CMakeLists.txt for Cygwin (set CMAKE_LEGACY_CYGWIN_WIN32).

* CMakeLists.txt (CMAKE_LEGACY_CYGWIN_WIN32): Set to 0 (required for
Cygwin).

13 years agoIncrease tests/test.c max heap size limit (required for Cygwin)
Ivan Maidanski [Tue, 13 Sep 2011 17:09:46 +0000 (21:09 +0400)]
Increase tests/test.c max heap size limit (required for Cygwin)

* tests/test.c (check_heap_stats): Increase max_heap_sz value (for
32-bit targets) from 15M by 1M (as the former is hit sometimes on
Cygwin).

13 years ago.gitignore: Ignore .vcxproj files generated by CMake for VS.
Ivan Maidanski [Tue, 13 Sep 2011 16:17:31 +0000 (20:17 +0400)]
.gitignore: Ignore .vcxproj files generated by CMake for VS.

13 years agoApply hotfix-7_2a6-2 to the current release.
Ivan Maidanski [Tue, 13 Sep 2011 10:30:15 +0000 (14:30 +0400)]
Apply hotfix-7_2a6-2 to the current release.

13 years agoUpdate ChangeLog.
Ivan Maidanski [Tue, 13 Sep 2011 10:28:55 +0000 (14:28 +0400)]
Update ChangeLog.

13 years agoFix CMake build on Cygwin.
Ivan Maidanski [Tue, 13 Sep 2011 10:06:52 +0000 (14:06 +0400)]
Fix CMake build on Cygwin.

* CMakeLists.txt (cygwin): Remove "-D_REENTRANT" definition.
* CMakeLists.txt (cord): Add gdi32 link library.

13 years ago.gitignore: Ignore exe files in tests (produced by CMake).
Ivan Maidanski [Tue, 13 Sep 2011 08:45:12 +0000 (12:45 +0400)]
.gitignore: Ignore exe files in tests (produced by CMake).

13 years agoFix cord/de.c for Cygwin.
Ivan Maidanski [Tue, 13 Sep 2011 08:12:53 +0000 (12:12 +0400)]
Fix cord/de.c for Cygwin.

* cord/de.c (WIN32): Define also for Cygwin.

13 years agoHOTFIX: Fix gc_cpp.cc for Cygwin (remove duplicate function definition).
Ivan Maidanski [Tue, 13 Sep 2011 08:09:05 +0000 (12:09 +0400)]
HOTFIX: Fix gc_cpp.cc for Cygwin (remove duplicate function definition).

* gc_cpp.cc (operator delete): Do not define for Cygwin since already
defined in include/gc_cpp.h file.

13 years ago.gitignore: Add more files generated by CMake.
Ivan Maidanski [Mon, 12 Sep 2011 15:27:55 +0000 (19:27 +0400)]
.gitignore: Add more files generated by CMake.
(Apply commit 11ae03e)

13 years agoApply hotfix-7_2a6-1 to the current release.
Ivan Maidanski [Mon, 12 Sep 2011 11:26:56 +0000 (15:26 +0400)]
Apply hotfix-7_2a6-1 to the current release.

13 years agoUpdate ChangeLog.
Ivan Maidanski [Mon, 12 Sep 2011 11:09:20 +0000 (15:09 +0400)]
Update ChangeLog.

13 years agoResolve "comparison of signed and unsigned values" compiler warnings.
Ivan Maidanski [Thu, 8 Sep 2011 10:17:26 +0000 (14:17 +0400)]
Resolve "comparison of signed and unsigned values" compiler warnings.
(Apply commit 96f7891)

* cord/cordprnt.c (CORD_vsprintf): Cast "prec" and "width" local
variables to size_t.
* dyn_load.c (GC_register_dynamic_libraries_dl_iterate_phdr): Change
type of "i" local variable to int.
* pthread_support.c (start_mark_threads): Likewise.
* os_dep.c (GC_repeat_read): Change type of "num_read" to size_t.
* os_dep.c (GC_get_maps): Change type of "result" local variable from
int to ssize_t; cast "result" to size_t in comparison.
* pthread_support.c (GC_remove_all_threads_but_me): Cast "result" to
int.
* pthread_support.c (GC_wait_for_gc_completion): Change type of
"old_gc_no" local variable to word.
* pthread_support.c (GC_lock): Change type of "i" local variable to
unsigned.
* tests/staticrootstest.c (main): Cast sizeof() value to int in
comparisons.

13 years agoHOTFIX: Always reset fault handler in GC_find_limit_with_bound on exit.
Ivan Maidanski [Wed, 7 Sep 2011 14:00:38 +0000 (18:00 +0400)]
HOTFIX: Always reset fault handler in GC_find_limit_with_bound on exit.

* os_dep.c (GC_find_limit_with_bound): Inside loop, set result local
volatile variable and do break instead of return (this also suppresses
compiler warning about the potential clobbering of "bound" variable
by setjmp).

13 years agoHOTFIX: Remove locking in API GC_get_bytes_since_gc and friends.
Ivan Maidanski [Wed, 7 Sep 2011 13:35:22 +0000 (17:35 +0400)]
HOTFIX: Remove locking in API GC_get_bytes_since_gc and friends.
Add GC_get_heap_usage_safe() to API as a thread-safe alternative to
GC_get_bytes_since_gc and friends.
Remove newly-added lock-free GC_get_heap_size_inner and
GC_get_free_bytes_inner from API.

* include/gc.h (GC_get_heap_size, GC_get_free_bytes,
GC_get_unmapped_bytes, GC_get_bytes_since_gc, GC_get_total_bytes):
Refine comment.
* include/gc.h (GC_HAVE_GET_HEAP_USAGE_SAFE): New macro.
* include/gc.h (GC_get_heap_usage_safe): New API function.
* misc.c (GC_get_heap_usage_safe): Likewise.
* include/gc_mark.h (GC_get_heap_size_inner, GC_get_free_bytes_inner):
Remove API function.
* misc.c (GC_get_heap_size_inner, GC_get_free_bytes_inner): Likewise.
* misc.c (GC_get_heap_size): Add comment.
* misc.c (GC_get_heap_size, GC_get_free_bytes, GC_get_unmapped_bytes,
GC_get_bytes_since_gc, GC_get_total_bytes): Remove locking.
* misc.c (GC_get_unmapped_bytes): Do not test USE_MUNMAP (not needed
after locking removal).
* misc.c (GC_get_bytes_since_gc, GC_get_total_bytes): Cast result to
size_t.

13 years agoRefine API GC setters and getter comments regarding locking.
Ivan Maidanski [Tue, 6 Sep 2011 14:25:04 +0000 (18:25 +0400)]
Refine API GC setters and getter comments regarding locking.

* include/gc_mark.h (GC_set_start_callback): Refine comment (the
function acquires the GC lock).
* include/gc.h (GC_set_all_interior_pointers, GC_set_stop_func,
GC_get_stack_base): Likewise.
* include/gc.h (GC_get_version, GC_get_gc_no, GC_get_parallel,
GC_set_find_leak, GC_get_all_interior_pointers,
GC_get_dont_precollect, GC_get_pages_executable, GC_set_max_heap_size,
GC_set_force_unmap_on_gcollect): Refine comment (the function is
lock-free).

13 years agoFIX: MinGW/MingwCE: Use CreateThread in initsecondarythread test and
Ivan Maidanski [Wed, 31 Aug 2011 15:01:42 +0000 (19:01 +0400)]
FIX: MinGW/MingwCE: Use CreateThread in initsecondarythread test and
thread_leak_test.

* tests/initsecondarythread.c: Include windows.h instead of pthread.h
unless GC_PTHREADS.
* tests/thread_leak_test.c: Likewise.
* tests/initsecondarythread.c (thread): Use WINAPI and set return
type to DWORD unless GC_PTHREADS.
* tests/thread_leak_test.c (test): Likewise.
* tests/initsecondarythread.c (main): Use HANDLE, CreateThread and
WaitForSingleObject instead of pthread_t, pthread_create and
pthread_join, respectively, unless GC_PTHREADS.
* tests/thread_leak_test.c (main): Likewise.

13 years agoCheck pthread_create/join result in initsecondarythread test.
Ivan Maidanski [Wed, 31 Aug 2011 10:19:34 +0000 (14:19 +0400)]
Check pthread_create/join result in initsecondarythread test.

* tests/initsecondarythread.c (GC_NO_THREAD_REDIRECTS): Add comment.
* tests/initsecondarythread.c: Include stdio.h.
* tests/initsecondarythread.c (thread): Cast result of malloc to void;
return arg parameter instead of NULL (to suppress compiler warnings).
* tests/initsecondarythread.c (main): Define "code" local variable;
store result of pthread_create and pthread_join to "code" variable;
exit application with an error code (with the corresponding error
message) if pthread_create or pthread_join fails.

13 years agoAdd info that getcontext() resets FPE mask no longer on Linux/x86_64.
Ivan Maidanski [Wed, 31 Aug 2011 04:13:17 +0000 (08:13 +0400)]
Add info that getcontext() resets FPE mask no longer on Linux/x86_64.

* include/private/gcconfig.h (GETCONTEXT_FPU_EXCMASK_BUG): Add FIXME
that this is no longer needed with the recent GLibC.

13 years agoRemove references to old missing gc_alloc.h and gc_local_alloc.h files.
Ivan Maidanski [Wed, 24 Aug 2011 09:36:53 +0000 (13:36 +0400)]
Remove references to old missing gc_alloc.h and gc_local_alloc.h files.
Remove unused HPUX GC_test_and_clear implementation.
(Apply commit 6f07a01)

* hpux_test_and_clear.s: Remove.
* Makefile.am (EXTRA_DIST): Remove hpux_test_and_clear.s.
* Makefile.direct (SRCS): Ditto.
* Makefile.dj (SRCS): Ditto.
* Makefile.dj (SRCS): Remove missing gcc_support.c,
include/gc_alloc.h, include/gc_local_alloc.h.
* doc/gcdescr.html: Remove information about gc_local_alloc.h.
* doc/gcinterface.html: Ditto.
* doc/scale.html: Ditto.
* doc/gcinterface.html: Remove information about gc_alloc.h.
* tests/test_cpp.cc: Don't include missing old gc_alloc.h (include
new_gc_alloc.h instead); don't test __GNUC__.
* tests/test_cpp.cc (main): Use gc_alloc class instead of alloc (don't
test __GNUC__).
* windows-untested/vc60/gc.dsp (SOURCE): Don't include missing
gc_alloc.h, gc_local_alloc.h.
* windows-untested/vc60/libgc.dsp (SOURCE): Ditto.
* windows-untested/vc70/gc.vcproj (Header Files): Ditto.
* windows-untested/vc70/libgc.vcproj (Header Files): Ditto.
* windows-untested/vc71/gc.vcproj (Header Files): Ditto.
* windows-untested/vc71/libgc.vcproj (Header Files): Ditto.

13 years agoResolve "comparison of signed and unsigned values" compiler warnings.
Ivan Maidanski [Sun, 21 Aug 2011 07:45:57 +0000 (11:45 +0400)]
Resolve "comparison of signed and unsigned values" compiler warnings.

* allchblk.c (GC_allochblk_nth): Cast MAX_BLACK_LIST_ALLOC and
HBLKSIZE to signed_word.
* mallocx.c (GC_generic_malloc_many): Cast my_bytes_allocd to word.
* mark.c (GC_do_local_mark): Cast the result of local_top minus
local_mark_stack to word (since is non-negative).
* misc.c (GC_base): Declare sz as unsigned word.
* misc.c (GC_enable_incremental): Cast bytes_written to size_t in
comparison to len.
* obj_map.c (GC_initialize_offsets): Declare 'i' as unsigned.
* os_dep.c (GC_or_pages): Ditto.
* typd_mlc.c (GC_init_explicit_typing): Ditto.
* ptr_chck.c (GC_is_visible): Cast the result of p minus base to word.
* typd_mlc.c (GC_make_descriptor): Cast last_set_bit to word (since
non-negative) when compared to BITMAP_BITS.

13 years agoRegenerate configure, update ChangeLog for commit c7c3144.
Ivan Maidanski [Mon, 12 Sep 2011 08:39:35 +0000 (12:39 +0400)]
Regenerate configure, update ChangeLog for commit c7c3144.