Remove unused HPUX GC_test_and_clear implementation.
* 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.
# :GOTCHA: deliberately we do not include 'Makefile'
EXTRA_DIST += BCC_MAKEFILE NT_MAKEFILE \
OS2_MAKEFILE PCR-Makefile digimars.mak EMX_MAKEFILE \
- Makefile.direct Makefile.dj Makefile.DLLs SMakefile.amiga \
+ Makefile.direct Makefile.dj Makefile.DLLs SMakefile.amiga \
WCC_MAKEFILE autogen.sh build_atomic_ops.sh build_atomic_ops.sh.cygwin \
NT_STATIC_THREADS_MAKEFILE NT_X64_STATIC_THREADS_MAKEFILE \
NT_X64_THREADS_MAKEFILE CMakeLists.txt tests/CMakeLists.txt
# files used by makefiles other than Makefile.am
#
EXTRA_DIST += extra/add_gc_prefix.c extra/gc.c extra/gcname.c \
- extra/if_mach.c extra/if_not_there.c hpux_test_and_clear.s gc.mak \
+ extra/if_mach.c extra/if_not_there.c gc.mak \
extra/MacOS.c MacProjects.sit.hqx mach_dep.c extra/setjmp_t.c \
extra/threadlibs.c extra/AmigaOS.c \
Mac_files/datastart.c Mac_files/dataend.c \
mips_ultrix_mach_dep.s \
include/new_gc_alloc.h include/gc_allocator.h \
include/javaxfc.h sparc_sunos4_mach_dep.s sparc_netbsd_mach_dep.s \
- include/gc_backptr.h \
- hpux_test_and_clear.s include/gc_gcj.h \
- include/private/dbg_mlc.h \
- include/private/specific.h \
- include/leak_detector.h \
+ include/gc_backptr.h include/gc_gcj.h include/private/dbg_mlc.h \
+ include/private/specific.h include/leak_detector.h \
include/gc_pthread_redirects.h ia64_save_regs_in_stack.s \
include/gc_config_macros.h include/private/pthread_support.h \
include/private/pthread_stop_world.h include/private/darwin_semaphore.h \
include/gc_inline.h gc.man extra/threadlibs.c \
extra/if_mach.c extra/if_not_there.c gc_cpp.cc include/gc_cpp.h \
include/weakpointer.h include/private/gc_locks.h \
- gcc_support.c mips_ultrix_mach_dep.s include/gc_alloc.h \
+ mips_ultrix_mach_dep.s \
include/new_gc_alloc.h include/javaxfc.h sparc_sunos4_mach_dep.s \
include/private/solaris_threads.h include/gc_backptr.h \
- hpux_test_and_clear.s include/gc_gcj.h \
- include/gc_local_alloc.h include/private/dbg_mlc.h \
+ include/gc_gcj.h include/private/dbg_mlc.h \
include/private/specific.h \
include/leak_detector.h $(CORD_SRCS)
Note that if the collector is configured for thread-local allocation,
GC versions before 7 do not invoke the thread-local allocator by default.
<TT>GC_malloc</tt> only uses thread-local allocation in version 7 and later.
-In earlier versions, <TT>GC_MALLOC</tt> (all caps) may be directed
-to use thread-local allocation by defining <TT>GC_REDIRECT_TO_LOCAL</tt>
-and then include <TT>gc_local_alloc.h</tt>.
<P>
For some more details see <A HREF="scale.html">here</a>, and the
technical report entitled
<P>
If you are concerned with multiprocessor performance and scalability,
you should consider enabling and using thread local allocation.
-For GC versions before 7.0, use <I>e.g.</i>
-<TT>GC_LOCAL_MALLOC</tt> and see <TT>gc_local_alloc.h</tt>;
-for later versions enabling thread-local allocations when the collector
-library is built changes the
-implementation of <TT>GC_MALLOC</tt>, so the client doesn't need to
-change.
<P>
If your platform
supports it, you should build the collector with parallel marking support
or its derivatives (including most g++ versions)
may instead be able to include <TT>new_gc_alloc.h</tt> before including
STL header files. This is increasingly discouraged.
-(<TT>gc_alloc.h</tt> corresponds to now obsolete versions of the
-SGI STL.) This interface is no longer recommended, but it has existed
-for much longer.
<P>
This defines SGI-style allocators
<UL>
built, and memory can be cleared, by more than one thread concurrently.
<LI>
Building the collector with -DTHREAD_LOCAL_ALLOC adds support for thread
-local allocation. Before GC version 7.0, it did not, by itself, cause
-thread local allocation to be used. It simply allowed the use of the
-interface in <TT>gc_local_alloc.h</tt>. Since version 7.0, this causes
-GC_malloc, GC_malloc_atomic, and GC_gcj_malloc to be redefined to perform
-thread-local allocation.
+local allocation. This causes GC_malloc, GC_malloc_atomic, and
+GC_gcj_malloc to be redefined to perform thread-local allocation.
<P>
Memory returned from thread-local allocators is completely interchangeable
with that returned by the standard allocators. It may be used by other
+++ /dev/null
- .SPACE $PRIVATE$
- .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
- .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
- .SPACE $TEXT$
- .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
- .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
- .IMPORT $global$,DATA
- .IMPORT $$dyncall,MILLICODE
- .SPACE $TEXT$
- .SUBSPA $CODE$
-
- .align 4
- .EXPORT GC_test_and_clear,ENTRY,PRIV_LEV=3,ARGW0=GR,RTNVAL=GR
-GC_test_and_clear
- .PROC
- .CALLINFO FRAME=0,NO_CALLS
- .ENTRY
- ldcw,co (%r26),%r28
- bv,n 0(%r2)
- .EXIT
- .PROCEND
#ifdef USE_STD_ALLOCATOR
# include "gc_allocator.h"
-#elif __GNUC__
-# include "new_gc_alloc.h"
#else
-# include "gc_alloc.h"
+# include "new_gc_alloc.h"
#endif
extern "C" {
xio = gc_allocator_ignore_off_page<int>().allocate(1);
int **xptr = traceable_allocator<int *>().allocate(1);
# else
-# ifdef __GNUC__
- int *x = (int *)gc_alloc::allocate(sizeof(int));
-# else
- int *x = (int *)alloc::allocate(sizeof(int));
-# endif
+ int *x = (int *)gc_alloc::allocate(sizeof(int));
# endif
*x = 29;
# ifdef USE_STD_ALLOCATOR
# End Source File
# Begin Source File
-SOURCE=..\..\include\gc_alloc.h
-# End Source File
-# Begin Source File
-
SOURCE=..\..\include\gc_allocator.h
# End Source File
# Begin Source File
# End Source File
# Begin Source File
-SOURCE=..\..\include\gc_local_alloc.h
-# End Source File
-# Begin Source File
-
SOURCE=..\..\include\private\gc_locks.h
# End Source File
# Begin Source File
# PROP Default_Filter "h;hh;hpp;hxx;hm;inl"
# Begin Source File
-SOURCE=..\..\include\gc_alloc.h
-# End Source File
-# Begin Source File
-
SOURCE=..\..\include\gc_allocator.h
# End Source File
# Begin Source File
# End Source File
# Begin Source File
-SOURCE=..\..\include\gc_local_alloc.h
-# End Source File
-# Begin Source File
-
SOURCE=..\..\include\gc_pthread_redirects.h
# End Source File
# Begin Source File
<File
RelativePath="..\..\include\gc.h">
</File>
- <File
- RelativePath="..\..\include\gc_alloc.h">
- </File>
<File
RelativePath="..\..\include\gc_allocator.h">
</File>
<File
RelativePath="..\..\include\gc_inline.h">
</File>
- <File
- RelativePath="..\..\include\gc_local_alloc.h">
- </File>
<File
RelativePath="..\..\include\private\gc_locks.h">
</File>
<Filter
Name="Header Files"
Filter="h;hh;hpp;hxx;hm;inl">
- <File
- RelativePath="..\..\include\gc_alloc.h">
- </File>
<File
RelativePath="..\..\include\gc_allocator.h">
</File>
<File
RelativePath="..\..\include\gc_inline.h">
</File>
- <File
- RelativePath="..\..\include\gc_local_alloc.h">
- </File>
<File
RelativePath="..\..\include\gc_pthread_redirects.h">
</File>
<File
RelativePath="..\..\include\gc.h">
</File>
- <File
- RelativePath="..\..\include\gc_alloc.h">
- </File>
<File
RelativePath="..\..\include\gc_allocator.h">
</File>
<File
RelativePath="..\..\include\gc_inline.h">
</File>
- <File
- RelativePath="..\..\include\gc_local_alloc.h">
- </File>
<File
RelativePath="..\..\include\private\gc_locks.h">
</File>
<Filter
Name="Header Files"
Filter="h;hh;hpp;hxx;hm;inl">
- <File
- RelativePath="..\..\include\gc_alloc.h">
- </File>
<File
RelativePath="..\..\include\gc_allocator.h">
</File>
<File
RelativePath="..\..\include\gc_inline.h">
</File>
- <File
- RelativePath="..\..\include\gc_local_alloc.h">
- </File>
<File
RelativePath="..\..\include\gc_pthread_redirects.h">
</File>