[patch] boehm-gc: real x86_64-apple-darwin* support

Andreas Tobler toa@pop.agri.ch
Thu Jan 11 19:49:00 GMT 2007


Hello,

this patch brings real 32 and 64-bit support for (i686-apple|x86_64) 
darwin in boehm-gc.

I tested this patch in several combinations. x86_64-apple-darwin8, 
i686-apple-darwin8 and powerpc-apple-darwin8.
The powerpc64 test run is missing ;) People know why.

Tested in terms of 'make check' and the test passes.

Thank goes to Eric C. for testing it on the upcoming wildcat.

A similar patch is already committed to the main cvs repository of bdwgc.

Ok for trunk?

Thanks,
Andreas


2007-01-11  Andreas Tobler  <a.tobler@schweiz.org>

	* configure.ac: Replaced HAS_I386_THREAD_STATE_* with
	HAS_X86_THREAD_STATE32_* and HAS_X86_THREAD_STATE64_* respectively.
	* configure: Regenerated.
	* include/private/gcconfig.h (DARWIN): Added X86_64 define for Darwin.
	Added base definitions for the X86_64 Darwin port.
	* include/private/gc_priv.h: Added definitions for Darwin MACH thread
	operations. Moved existing THREAD_STATE info from darwin_stop_world.c.
	* darwin_stop_world.c: Removed THREAD_STATE info. Added
	HAS_X86_THREAD_STATE64___RAX. And replaced HAS_I386_THREAD_STATE___EAX
	with HAS_X86_THREAD_STATE32___EAX.
	(GC_push_all_stacks): Use GC_MACH_THREAD_STATE_COUNT. Add code for
	X86_64 Darwin.
	* dyn_load.c (GC_dyld_name_for_hdr): Use GC_MACH_HEADER.
	(GC_dyld_image_add): Use GC_MACH_HEADER and GC_MACH_SECTION.
	Distinguish between getsectbynamefromheader_64 and
	getsectbynamefromheader.
	(GC_dyld_image_remove): Likewise.
	* os_dep.c (GC_dirty_init): Use GC_MACH_THREAD_STATE.
	(catch_exception_raise): Introduce exception information for I386 and
	X86_64 Darwin. Add X86_64 for exc_state.faultvaddr.


-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: gcc-boehm-20070111-1.diff
URL: <http://gcc.gnu.org/pipermail/java-patches/attachments/20070111/4a8bb38e/attachment.ksh>


More information about the Java-patches mailing list