Permalink
Browse files

2008-02-15 Hans Boehm <Hans.Boehm@hp.com>

	* windows-untested/gc.def: Remove CreateThread line.
	* windows-untested/README: New file.
	* win32_threads.c (GC_use_DllMain): Force collector initialization.
	(GC_init_parallel): Reformat comment.
	* include/gc.h (GC_use_DllMain): Clarify usage rules in comment.
	* mark.c (GC_mark_from): Slightly simplify GC_DS_PER_OBJECT code.
	* include/gc_cpp.h: Add matching placement delete overloads
	everywhere.
	* include/private/gc_locks.h (NO_THREAD): Add cast.
	* include/private/gcconfig.h: Add test for __HP_aCC.
	* configure.ac, tests/tests.am:  Avoid libgccpp on HP/UX.
	* Makefile.in, configure: Regenerate.
  • Loading branch information...
1 parent 712ce98 commit d6b11ce91f2ef4c7bcacd98326f5b27bed0e25a0 hboehm committed with Feb 16, 2008
Showing with 134 additions and 40 deletions.
  1. +15 −0 ChangeLog
  2. +9 −3 Makefile.in
  3. +54 −25 configure
  4. +10 −1 configure.ac
  5. +3 −0 include/gc.h
  6. +26 −2 include/gc_cpp.h
  7. +1 −1 include/private/gc_locks.h
  8. +1 −1 include/private/gcconfig.h
  9. +2 −2 mark.c
  10. +4 −0 tests/tests.am
  11. +5 −4 win32_threads.c
  12. +4 −0 windows-untested/README
  13. +0 −1 windows-untested/gc.def
View
@@ -1,3 +1,18 @@
+2008-02-15 Hans Boehm <Hans.Boehm@hp.com>
+
+ * windows-untested/gc.def: Remove CreateThread line.
+ * windows-untested/README: New file.
+ * win32_threads.c (GC_use_DllMain): Force collector initialization.
+ (GC_init_parallel): Reformat comment.
+ * include/gc.h (GC_use_DllMain): Clarify usage rules in comment.
+ * mark.c (GC_mark_from): Slightly simplify GC_DS_PER_OBJECT code.
+ * include/gc_cpp.h: Add matching placement delete overloads
+ everywhere.
+ * include/private/gc_locks.h (NO_THREAD): Add cast.
+ * include/private/gcconfig.h: Add test for __HP_aCC.
+ * configure.ac, tests/tests.am: Avoid libgccpp on HP/UX.
+ * Makefile.in, configure: Regenerate.
+
2008-02-11 Hans Boehm <Hans.Boehm@hp.com> (partly David Leonard)
* doc/README.win32: Fix typo.
View
@@ -197,8 +197,11 @@ smashtest_DEPENDENCIES = $(am__DEPENDENCIES_2)
am__test_cpp_SOURCES_DIST = tests/test_cpp.cc
@CPLUSPLUS_TRUE@am_test_cpp_OBJECTS = tests/test_cpp.$(OBJEXT)
test_cpp_OBJECTS = $(am_test_cpp_OBJECTS)
-@CPLUSPLUS_TRUE@test_cpp_DEPENDENCIES = libgccpp.la \
-@CPLUSPLUS_TRUE@ $(am__DEPENDENCIES_2)
+@AVOID_CPP_LIB_FALSE@@CPLUSPLUS_TRUE@test_cpp_DEPENDENCIES = \
+@AVOID_CPP_LIB_FALSE@@CPLUSPLUS_TRUE@ libgccpp.la \
+@AVOID_CPP_LIB_FALSE@@CPLUSPLUS_TRUE@ $(am__DEPENDENCIES_2)
+@AVOID_CPP_LIB_TRUE@@CPLUSPLUS_TRUE@test_cpp_DEPENDENCIES = gc_cpp.o \
+@AVOID_CPP_LIB_TRUE@@CPLUSPLUS_TRUE@ $(am__DEPENDENCIES_2)
am__threadleaktest_SOURCES_DIST = tests/thread_leak_test.c
@THREADS_TRUE@am_threadleaktest_OBJECTS = \
@THREADS_TRUE@ tests/thread_leak_test.$(OBJEXT)
@@ -279,6 +282,8 @@ AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
+AVOID_CPP_LIB_FALSE = @AVOID_CPP_LIB_FALSE@
+AVOID_CPP_LIB_TRUE = @AVOID_CPP_LIB_TRUE@
AWK = @AWK@
CC = @CC@
CCAS = @CCAS@
@@ -566,7 +571,8 @@ smashtest_LDADD = $(test_ldadd)
@THREADS_TRUE@threadleaktest_SOURCES = tests/thread_leak_test.c
@THREADS_TRUE@threadleaktest_LDADD = $(test_ldadd)
@CPLUSPLUS_TRUE@test_cpp_SOURCES = tests/test_cpp.cc
-@CPLUSPLUS_TRUE@test_cpp_LDADD = libgccpp.la $(test_ldadd)
+@AVOID_CPP_LIB_FALSE@@CPLUSPLUS_TRUE@test_cpp_LDADD = libgccpp.la $(test_ldadd)
+@AVOID_CPP_LIB_TRUE@@CPLUSPLUS_TRUE@test_cpp_LDADD = gc_cpp.o $(test_ldadd)
# installed documentation
#
View
@@ -1,5 +1,5 @@
#! /bin/sh
-# From configure.ac Revision: 1.33 .
+# From configure.ac Revision: 1.34 .
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.61 for gc 7.1alpha3.
#
@@ -882,6 +882,8 @@ WIN32_THREADS_TRUE
WIN32_THREADS_FALSE
COMPILER_XLC_TRUE
COMPILER_XLC_FALSE
+AVOID_CPP_LIB_TRUE
+AVOID_CPP_LIB_FALSE
extra_ldflags_libgc
EXTRA_TEST_LIBS
target_all
@@ -6001,6 +6003,24 @@ fi
;;
esac
+case "$host" in
+ *-*-hpux*)
+ avoid_cpp_lib=yes;;
+ *)
+ avoid_cpp_lib=no;
+ ;;
+esac
+
+
+if test $avoid_cpp_lib = yes; then
+ AVOID_CPP_LIB_TRUE=
+ AVOID_CPP_LIB_FALSE='#'
+else
+ AVOID_CPP_LIB_TRUE='#'
+ AVOID_CPP_LIB_FALSE=
+fi
+
+
# extra LD Flags which are required for targets
case "${host}" in
*-*-darwin*)
@@ -6852,7 +6872,7 @@ ia64-*-hpux*)
;;
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 6855 "configure"' > conftest.$ac_ext
+ echo '#line 6875 "configure"' > conftest.$ac_ext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
@@ -9115,11 +9135,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:9118: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:9138: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:9122: \$? = $ac_status" >&5
+ echo "$as_me:9142: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -9383,11 +9403,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:9386: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:9406: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:9390: \$? = $ac_status" >&5
+ echo "$as_me:9410: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -9487,11 +9507,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:9490: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:9510: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:9494: \$? = $ac_status" >&5
+ echo "$as_me:9514: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -11795,7 +11815,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 11798 "configure"
+#line 11818 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -11895,7 +11915,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 11898 "configure"
+#line 11918 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -14235,11 +14255,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:14238: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:14258: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:14242: \$? = $ac_status" >&5
+ echo "$as_me:14262: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -14339,11 +14359,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:14342: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:14362: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:14346: \$? = $ac_status" >&5
+ echo "$as_me:14366: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -15909,11 +15929,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15912: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15932: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:15916: \$? = $ac_status" >&5
+ echo "$as_me:15936: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -16013,11 +16033,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:16016: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:16036: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:16020: \$? = $ac_status" >&5
+ echo "$as_me:16040: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -18215,11 +18235,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:18218: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:18238: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:18222: \$? = $ac_status" >&5
+ echo "$as_me:18242: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -18483,11 +18503,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:18486: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:18506: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:18490: \$? = $ac_status" >&5
+ echo "$as_me:18510: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -18587,11 +18607,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:18590: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:18610: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:18594: \$? = $ac_status" >&5
+ echo "$as_me:18614: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -22150,6 +22170,13 @@ echo "$as_me: error: conditional \"COMPILER_XLC\" was never defined.
Usually this means the macro was only invoked conditionally." >&2;}
{ (exit 1); exit 1; }; }
fi
+if test -z "${AVOID_CPP_LIB_TRUE}" && test -z "${AVOID_CPP_LIB_FALSE}"; then
+ { { echo "$as_me:$LINENO: error: conditional \"AVOID_CPP_LIB\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"AVOID_CPP_LIB\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+ { (exit 1); exit 1; }; }
+fi
if test -z "${CPLUSPLUS_TRUE}" && test -z "${CPLUSPLUS_FALSE}"; then
{ { echo "$as_me:$LINENO: error: conditional \"CPLUSPLUS\" was never defined.
Usually this means the macro was only invoked conditionally." >&5
@@ -22859,6 +22886,8 @@ WIN32_THREADS_TRUE!$WIN32_THREADS_TRUE$ac_delim
WIN32_THREADS_FALSE!$WIN32_THREADS_FALSE$ac_delim
COMPILER_XLC_TRUE!$COMPILER_XLC_TRUE$ac_delim
COMPILER_XLC_FALSE!$COMPILER_XLC_FALSE$ac_delim
+AVOID_CPP_LIB_TRUE!$AVOID_CPP_LIB_TRUE$ac_delim
+AVOID_CPP_LIB_FALSE!$AVOID_CPP_LIB_FALSE$ac_delim
extra_ldflags_libgc!$extra_ldflags_libgc$ac_delim
EXTRA_TEST_LIBS!$EXTRA_TEST_LIBS$ac_delim
target_all!$target_all$ac_delim
@@ -22893,7 +22922,7 @@ LIBOBJS!$LIBOBJS$ac_delim
LTLIBOBJS!$LTLIBOBJS$ac_delim
_ACEOF
- if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 47; then
+ if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 49; then
break
elif $ac_last_try; then
{ { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
View
@@ -22,7 +22,7 @@ AC_INIT(gc,7.1alpha3,Hans.Boehm@hp.com)
AC_CONFIG_SRCDIR(gcj_mlc.c)
AC_CANONICAL_TARGET
AC_PREREQ(2.53)
-AC_REVISION($Revision: 1.34 $)
+AC_REVISION($Revision: 1.35 $)
GC_SET_VERSION
AM_INIT_AUTOMAKE([foreign dist-bzip2 subdir-objects nostdinc])
AM_MAINTAINER_MODE
@@ -300,6 +300,15 @@ case "$host" in
;;
esac
+case "$host" in
+ *-*-hpux*)
+ avoid_cpp_lib=yes;;
+ *)
+ avoid_cpp_lib=no;
+ ;;
+esac
+AM_CONDITIONAL(AVOID_CPP_LIB,test $avoid_cpp_lib = yes)
+
# extra LD Flags which are required for targets
case "${host}" in
*-*-darwin*)
View
@@ -1073,6 +1073,9 @@ GC_register_has_static_roots_callback
/*
* Use implicit thread registration via DllMain.
+ * Must be called before GC_INIT and other GC routines.
+ * Should be avoided if GC_beginthreadex and friends can be called
+ * instead.
*/
GC_API void GC_use_DllMain(void);
Oops, something went wrong.

0 comments on commit d6b11ce

Please sign in to comment.