hans.boehm at hp.com
Mon Jul 9 16:26:14 PDT 2007
Thanks. These look uncontroversial to me. I put them in my source
trees, and will check them in after I get a chance to test on Windows.
I have now been testing with Visual Studio 2005, though I have not fixed
all warnings that arose from that switch. I did try to fix the those
were the new warnings seemed to me to be clearly correct and unlikely to
break builds on older versions. I obviously missed in at least one
> -----Original Message-----
> From: jim marshall [mailto:jim.marshall at wbemsolutions.com]
> Sent: Tuesday, July 03, 2007 9:30 AM
> To: Boehm, Hans
> Cc: gc at napali.hpl.hp.com
> Subject: Re: [Gc] GC7.0
> I could not get GC 7.0 to compile with VC 6. With the help of
> a co-worker we came up with the following changes to 3 files
> This allowed us to compile the gc (gctest would not compile
> due to an unresolved external) and cords compiled fine.
> I have not tested the resulting dll, so I do not know if it
> works or not
> - sorry
> Hope this helps someone else.
> Here is the error with gctest with VC6
> Microsoft (R) Program Maintenance Utility Version 6.00.8168.0
> Copyright (C) Microsoft Corp 1988-1998. All rights reserved.
> link.exe @C:\DOCUME~1\jmars\LOCALS~1\Temp\nma07064.
> test.obj : error LNK2001: unresolved external symbol
> _GC_lock_holder Debug/gctest.exe : fatal error LNK1120: 1
> unresolved externals NMAKE : fatal error U1077: 'link.exe' :
> return code '0x460'
> Boehm, Hans wrote:
> > I finally made gc version 7.0 available as
> > https://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc-7.0.tar.gz
> > (Note the hyphen; the naming convention changed slightly.)
> > The CVS tree is now labelled as 7.1alpha1.
> > I tested this on some of the most common platforms (various Linux,
> > Windows versions, Solaris, HP/UX, MacOS X). I did not get
> a chance to
> > test on AIX or Irix.
> > There has been a report that this does not build on MacOS
> 10.3.9, but
> > it seems to work on most other MacOS X versions.
> > The Cygwin port does not support dynamic libraries.
> (Neither did 6.8,
> > but the documentation is now more clear about that. I suspect this
> > actually isn't hard to fix.)
> > Changes relative to 6.8 include, in no particular order:
> > - Change C code to require at least C89. Clean up code in various
> > outher
> > respects.
> > - Win64 port.
> > - Always count how much live data there is in the heap. Add more
> > robust heap expansion heuristic which relies on this.
> > - Remove old-style Solaris threads support and some other obsolete
> > platform support.
> > - Restructure mark code, hopefull resulting in some performance
> > improvements.
> > - Change the GC code to traffic mostly in either bytes or
> > granules, not words, internally.
> > - Provide for fast inline allocation that requires less
> frequent client
> > recompilations. (Needs more testing.)
> > - Removed SILENT configuration macro and PRINTSTATS and GATHERSTATS
> > macros. Control is now via GC_PRINT_STATS and
> > encironment variables.
> > - Thread local allocation is now performed without needing to call
> > special allocation functions. The configuration macro
> > THREAD_LOCAL_ALLOC
> > continues to determine whether this is supported.
> > - Thread local allocation is supported on more platforms.
> > - Win32 threads code was rewritten and is hopefully more sane.
> > - Allocation routines now decide whether to lock
> dynamically, based on
> > whether a second thread has been created.
> > - Mostly untested support for a compiler write barrier.
> > - Use libatomic_ops for atomic operations.
> > - Limited support for malloc redirection with Linux
> threads (& NPTL ).
> > - Various bug fixes and some new platform support.
> > Hans
> > _______________________________________________
> > Gc mailing list
> > Gc at linux.hpl.hp.com
> > https://www.hpl.hp.com/hosted/linux/mail-archives/gc/
> Jim Marshall
> Sr. Staff Engineer
> WBEM Solutions, Inc.
More information about the Gc