From hosking at elego.de Sat Jun 2 05:29:36 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 2 Jun 2007 5:29:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070602032936.1D7F34CC23C@birch.elego.de> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/02 05:29:36 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTHeapRep.i3 Log message: Adjust Fill typecodes so that we can scan zero-filled pages without having to tack a filler after the last allocation. From hosking at elego.de Sat Jun 2 05:31:08 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 2 Jun 2007 5:31:08 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070602033108.9EBEE4CC23C@birch.elego.de> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/02 05:31:08 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTCollector.m3 Log message: Adjust Fill typecodes so that we can scan zero-filled pages without having to tack a filler after the last allocation. This allows us to fix a bug in the GC SanityCheck code (@M3paranoidgc) manifested by the insertion of a filler by SuspendPool, with resumption after the fact resulting in a non-zeroed object. From hosking at elego.de Sat Jun 2 21:15:24 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 2 Jun 2007 21:15:24 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070602191524.ED73D4CC23C@birch.elego.de> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/02 21:15:24 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RT0.i3 RTCollector.m3 RTHeapEvent.i3 RTHeapRep.i3 Log message: Use much more fine-grained read and write barriers: - read barrier needs only to check that object reference being loaded is not gray, cleaning just that one object if it is. - write barrier needs only to check that object is not dirty, marking that one object if its, and setting the page to dirty as well if it is not already. These changes pave the way for ultimate deletion of the "protected" page-level descriptor bit, as well as elimination of all the virtual-memory protection cruft which is now obsolete. This will make for a much more maintainable and malleable GC subsystem. From hosking at elego.de Sat Jun 2 21:16:37 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 2 Jun 2007 21:16:37 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070602191637.CE0B54CC23C@birch.elego.de> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/02 21:16:37 Modified files: cm3/m3-tools/showheap/src/: ShowHeap.m3 Log message: Switch over to page-level "clean" bit instead of deprecated "protected" bit, which will go away once the old-style virtual-memory page protection support for incremental/generational GC is removed. From hosking at elego.de Mon Jun 4 21:35:03 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 4 Jun 2007 21:35:03 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070604193503.911144CC23C@birch.elego.de> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/04 21:35:03 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTCollector.m3 Log message: When promoting OldImpure pages for generational collection we only need to treat the dirty objects in the page as gray during scanning. This exploits the improved precision of the software write barriers for generational collection. From rforb at elego.de Tue Jun 12 12:21:16 2007 From: rforb at elego.de (Ronny Forberger) Date: Tue, 12 Jun 2007 12:21:16 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070612102117.59D8910D43EB@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rforb at birch. 07/06/12 12:21:16 Added files: cm3/www/: test Log message: From rforb at elego.de Tue Jun 12 12:24:03 2007 From: rforb at elego.de (Ronny Forberger) Date: Tue, 12 Jun 2007 12:24:03 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070612102405.E9FF310D43EB@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rforb at birch. 07/06/12 12:24:03 Removed files: cm3/www/: test Log message: revoking test commit From uamoore at elego.de Wed Jun 13 10:45:57 2007 From: uamoore at elego.de (Ulrike Amoore) Date: Wed, 13 Jun 2007 10:45:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070613084557.62D8F10D43F0@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: uamoore at birch. 07/06/13 10:45:57 Modified files: cm3/www/: cm3-5.4-status.html cvs-cm3.html cvsupfile.cm3 Log message: Links aktualisiert From hosking at elego.de Thu Jun 14 20:11:27 2007 From: hosking at elego.de (Antony Hosking) Date: Thu, 14 Jun 2007 20:11:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070614181130.44F7E10D43ED@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/14 20:11:27 Modified files: cm3/m3-sys/cminstall/src/config/: NT386 Log message: Inconsistent ^M characters removed. From hosking at elego.de Wed Jun 20 20:35:32 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 20 Jun 2007 20:35:32 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070620183532.4B9E710D4406@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/20 20:35:32 Removed files: cm3/m3-libs/m3gc-simple/: PkgTags cm3/m3-libs/m3gc-simple/src/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/: RTVM.c m3makefile cm3/m3-libs/m3gc-simple/src/runtime/AIX386/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/ALPHA_OSF/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/AP3000/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/ARM/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/DS3100/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/FreeBSD/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/FreeBSD2/: DEFS.h accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h sysdeps.c wrap.h write.c cm3/m3-libs/m3gc-simple/src/runtime/FreeBSD3/: RTHeapDepC.c RTThreadC.c accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h sysdeps.c wrap.h write.c cm3/m3-libs/m3gc-simple/src/runtime/FreeBSD4/: accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h sysdeps.c wrap.h write.c cm3/m3-libs/m3gc-simple/src/runtime/HP300/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/HPPA/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/I386_DARWIN/: RTHeapDepC.c RTThreadC.c accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h sysdeps.c wrap.h write.c cm3/m3-libs/m3gc-simple/src/runtime/IBMR2/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/IBMRT/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/IRIX5/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/LINUX/: m3mkefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/LINUXELF/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/LINUXLIBC6/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/NEXT/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/NetBSD2_i386/: accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h sysdeps.c wrap.h write.c cm3/m3-libs/m3gc-simple/src/runtime/OKI/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/OS2/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/PPC_DARWIN/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-simple/src/runtime/PPC_LINUX/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/SEQUENT/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/SOLgnu/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/SOLsun/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/SPARC/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/SUN3/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/SUN386/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/UMAX/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/VAX/: m3makefile cm3/m3-libs/m3gc-enhanced/: PkgTags cm3/m3-libs/m3gc-enhanced/src/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/: RTVM.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/AIX386/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/ALPHA_OSF/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/AP3000/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/ARM/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/DS3100/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/FreeBSD/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/FreeBSD2/: DEFS.h RTHeapDepC.c accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h wrap.h write.c cm3/m3-libs/m3gc-enhanced/src/runtime/FreeBSD3/: RTHeapDepC.c RTThreadC.c accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h wrap.h write.c cm3/m3-libs/m3gc-enhanced/src/runtime/FreeBSD4/: .M3SHIP RTHeapDepC.c RTThreadC.c accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h wrap.h write.c cm3/m3-libs/m3gc-enhanced/src/runtime/HP300/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/HPPA/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/IBMR2/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/IBMRT/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/IRIX5/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/LINUX/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/LINUXELF/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/LINUXLIBC6/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/NEXT/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/NT386/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/OKI/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/OS2/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/PPC_DARWIN/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/SEQUENT/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/SOLgnu/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/SOLsun/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/SPARC/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/SUN3/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/SUN386/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/UMAX/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/VAX/: m3makefile Log message: Removing m3gcdefs implementations (m3gc-simple, m3gc-enhanced) since enhanced GC now uses compiler support instead of virtual memory protection, which means system call wrappers are now no longer needed. Additional changes to m3core will soon be checked in to eliminate references to these libraries. From hosking at elego.de Fri Jun 22 17:02:35 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:02:35 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622150235.2456E10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:02:35 Modified files: cm3/m3-sys/m3middle/src/: M3CG.i3 M3CG.m3 M3CG_BinRd.m3 M3CG_BinWr.m3 M3CG_Binary.i3 M3CG_Check.m3 M3CG_Ops.i3 M3CG_Rd.m3 M3CG_Wr.m3 Log message: Add preliminary support for atomic operations as part of the M3 intermediate code (M3CG). The front-end compiler still does not contain support for these. The operations supported are those supported by newer versions of gcc, on which cm3cg is implemented. From hosking at elego.de Fri Jun 22 17:07:27 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:07:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622150728.01CD510D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:07:27 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: Make-lang.in m3cg.h parse.c Log message: Add preliminary support for atomic operations as part of the M3 intermediate code (M3CG). The front-end compiler still does not contain support for these. The operations supported are those supported by newer versions of gcc, on which cm3cg is implemented. From hosking at elego.de Fri Jun 22 17:37:11 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:37:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622153712.03DDA10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:37:11 Modified files: cm3/m3-libs/libm3/src/etimer/: ETimer.m3 Log message: Eliminate references to RTHeapDep.VM since we are now using read/write barriers inserted by the compiler. This means that the "GC" times reported by this module are no longer meaningful for incremental GC, since the GC cycle is interleaved with mutator execution. In effect, GC will be measured across the entire cycle, including the mutator time. A better approach would be to start and stop the timers for each GC increment, but there is no API for this in RTHeapRep at this time. Perhaps RTHeapRep.MonitorClosure can be reworked to run only at CollectorOn/CollectorOff granularity. Of course, with true parallelism (as with the PTHREAD threads implementation) even this approach will not be accurate. From hosking at elego.de Fri Jun 22 17:38:47 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:38:47 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622153848.00E8010D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:38:47 Modified files: cm3/m3-sys/cm3/src/: Main.m3 Log message: Remove call to RTCollectorSRC.DisableVM -- we no support use VM-synchronized GC. Incremental/generational GC are now supported on all targets by the compiler. From hosking at elego.de Fri Jun 22 17:40:17 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:40:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154017.4588D10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:40:17 Modified files: cm3/m3-sys/cminstall/src/config/: LINUXLIBC6 Log message: Don't wrap system calls anymore -- we no support use VM-synchronized GC. Incremental/generational GC are now supported on all targets by the compiler. From hosking at elego.de Fri Jun 22 17:40:34 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:40:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154034.A718410D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:40:34 Modified files: cm3/m3-sys/cminstall/src/config/: NT386GNU Log message: Don't wrap system calls anymore -- we no support use VM-synchronized GC. Incremental/generational GC are now supported on all targets by the compiler. From hosking at elego.de Fri Jun 22 17:40:50 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:40:50 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154050.B9BF310D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:40:50 Modified files: cm3/m3-sys/cminstall/src/config/: PPC_LINUX Log message: Don't wrap system calls anymore -- we no support use VM-synchronized GC. Incremental/generational GC are now supported on all targets by the compiler. From hosking at elego.de Fri Jun 22 17:41:49 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:41:49 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154149.9D5FF10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:41:49 Modified files: cm3/m3-sys/m3cggen/src/: Main.m3 Log message: Add preliminary support for atomic operations as part of the M3 intermediate code (M3CG). The front-end compiler still does not contain support for these. The operations supported are those supported by newer versions of gcc, on which cm3cg is implemented. From hosking at elego.de Fri Jun 22 17:45:48 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:45:48 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154548.BBC0510D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:45:48 Modified files: cm3/m3-tools/gnuemacs/src/flex-bison/: lex.yy.c y.tab.c cm3/m3-tools/gnuemacs/src/lex-yacc/: lex.yy.c y.tab.c Log message: Regenerated From hosking at elego.de Fri Jun 22 17:46:58 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:46:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154658.F242F10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:46:58 Modified files: cm3/m3-ui/ui/src/xvbt/: XClientF.m3 Log message: Eliminate references to RTHeapDep.VM/RTCollectorSRC.incremental since we are now using read/write barriers inserted by the compiler. This means that the hack to change the cursor to "StarTrek" is no longer meaningful for incremental GC, since the GC cycle is interleaved with mutator execution. To turn on the cursor use the @M3StarTrek runtime argument. Your mileage will vary! From hosking at elego.de Fri Jun 22 17:48:06 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:48:06 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154806.07FCF10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:48:06 Modified files: cm3/www/: porting.html Log message: No more m3gc-simple/m3gc-enhanced. From hosking at elego.de Fri Jun 22 22:04:04 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 22:04:04 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622200404.8677010D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 22:04:04 Modified files: cm3/m3-libs/m3core/src/runtime/AIX386/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/ALPHA_OSF/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/AP3000/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/ARM/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/DS3100/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/FreeBSD/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/FreeBSD2/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/FreeBSD3/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/FreeBSD4/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/HP300/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/HPPA/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/I386_DARWIN/: m3makefile cm3/m3-libs/m3core/src/runtime/IBMR2/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/IBMRT/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/IRIX5/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/LINUX/: m3makefile cm3/m3-libs/m3core/src/runtime/LINUXELF/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/LINUXLIBC6/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/NEXT/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/NT386/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/NT386GNU/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/NetBSD2_i386/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/OKI/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/OS2/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/PPC_DARWIN/: m3makefile cm3/m3-libs/m3core/src/runtime/PPC_LINUX/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/SEQUENT/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/SOLgnu/: RTMachine.i3 RTStackC.c m3makefile cm3/m3-libs/m3core/src/runtime/SOLsun/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/SPARC/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/SUN3/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/SUN386/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/UMAX/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/VAX/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/common/: RTCollector.m3 RTCollectorSRC.i3 RTHeapDep.i3 RTHeapEvent.i3 RTHeapRep.i3 RTLinker.m3 RTLinkerX.i3 m3makefile cm3/m3-libs/m3core/src/unix/darwin-generic/: Unetdb.i3 Unix.i3 Usignal.i3 Usocket.i3 Uuio.i3 cm3/m3-libs/m3core/src/unix/freebsd-1/: Unix.i3 cm3/m3-libs/m3core/src/unix/freebsd-2/: Unetdb.i3 Unix.i3 Usocket.i3 Uuio.i3 cm3/m3-libs/m3core/src/unix/freebsd-3/: Unetdb.i3 Unix.i3 Usocket.i3 Uuio.i3 cm3/m3-libs/m3core/src/unix/freebsd-4/: Unetdb.i3 Unix.i3 Usocket.i3 Uuio.i3 cm3/m3-libs/m3core/src/unix/linux/: Uexec.i3 cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Unix.i3 off_t_wrap.c cm3/scripts/: PKGS README backup-pkgs.sh boot-cm3-build-on-target.sh boot-cm3-core.sh copy-bootarchives.sh def-std-pkgs.sh do-cm3-core.sh do-cm3-min.sh make-bin-dist-min.sh pack-crossbuild.sh pkginfo.sh upgrade-5.3.sh v526_all.CM3P cm3/scripts/doc/: cm3Proj.html cm3/scripts/win/: backup-pkgs.cmd def-std-pkgs.cmd do-cm3-core.cmd upgrade.cmd Removed files: cm3/m3-libs/m3core/src/runtime/I386_DARWIN/: accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h wrap.h write.c cm3/m3-libs/m3core/src/runtime/PPC_DARWIN/: RTHeapDepC.i3 accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h wrap.h write.c Log message: Delete all references to m3gc-simple/m3gc-enhanced. Targets no longer need RTHeapDep.c, since we no longer support VM-synchronized GC. Incremental/generational GC are now both supported by compiler-inserted read/write barriers (respectively). From hosking at elego.de Sat Jun 23 17:52:48 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 23 Jun 2007 17:52:48 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070623155248.D5D6210D415E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/23 17:52:48 Modified files: cm3/m3-sys/cminstall/src/config/: PPC_DARWIN Log message: Add PTHREAD to list of system libraries. From hosking at elego.de Sat Jun 23 17:56:34 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 23 Jun 2007 17:56:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070623155634.185D110D415E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/23 17:56:34 Modified files: cm3/m3-sys/cminstall/src/config/: I386_DARWIN Log message: Synchronization primitives need to specify architecture target that has them. From hosking at elego.de Sat Jun 23 18:06:14 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 23 Jun 2007 18:06:14 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070623160614.CFE7910D415E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/23 18:06:14 Modified files: cm3/m3-sys/cminstall/src/config/: PPC_DARWIN Log message: Minor tweaks. From hosking at elego.de Sun Jun 24 21:51:36 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 24 Jun 2007 21:51:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070624195136.B288210D42D0@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/24 21:51:36 Modified files: cm3/m3-sys/cminstall/src/config/: LINUXLIBC6 Log message: Add explicit use of 32-bit backend tools for LINUXLIBC6 target, so things work properly on x86_64 machines. (LINUXLIBC6 assumes a 32-bit INTEGER target even though the host machine might be able to do 64-bits). From hosking at elego.de Thu Jun 28 16:52:00 2007 From: hosking at elego.de (Antony Hosking) Date: Thu, 28 Jun 2007 16:52:00 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070628145200.8912E10D4389@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/28 16:52:00 Modified files: cm3/m3-libs/m3core/src/thread/POSIX/: ThreadPosix.m3 Log message: Make sure that ProcessStacks does not trigger GC barriers by using LOOPHOLE to perform untraced accesses to the heap. This is safe because we know that ProcessStacks runs when the collector is already on, thread-switching is disabled, and objects are not yet moving. From hosking at elego.de Thu Jun 28 17:50:51 2007 From: hosking at elego.de (Antony Hosking) Date: Thu, 28 Jun 2007 17:50:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070628155051.4158410D438E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/28 17:50:50 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTCollector.m3 Log message: No need for out-of-band communication of heap bounds for NoteStackLocations -- all threads are stopped at this point so p0/p1 are both valid. From hosking at elego.de Thu Jun 28 17:53:02 2007 From: hosking at elego.de (Antony Hosking) Date: Thu, 28 Jun 2007 17:53:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070628155302.CC46B10D438E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/28 17:53:02 Modified files: cm3/m3-libs/m3core/src/thread/POSIX/: ThreadF.i3 Log message: inCritical is no longer external since elimination of m3gc-simple/m3gc-enhanced. From hosking at elego.de Thu Jun 28 17:53:48 2007 From: hosking at elego.de (Antony Hosking) Date: Thu, 28 Jun 2007 17:53:48 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070628155348.5F00C10D438E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/28 17:53:48 Modified files: cm3/m3-libs/m3core/src/thread/: m3makefile Log message: Permit build of user-level threads with -DNOPTHREAD flag. From hosking at elego.de Sat Jun 2 05:29:36 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 2 Jun 2007 5:29:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070602032936.1D7F34CC23C@birch.elego.de> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/02 05:29:36 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTHeapRep.i3 Log message: Adjust Fill typecodes so that we can scan zero-filled pages without having to tack a filler after the last allocation. From hosking at elego.de Sat Jun 2 05:31:08 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 2 Jun 2007 5:31:08 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070602033108.9EBEE4CC23C@birch.elego.de> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/02 05:31:08 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTCollector.m3 Log message: Adjust Fill typecodes so that we can scan zero-filled pages without having to tack a filler after the last allocation. This allows us to fix a bug in the GC SanityCheck code (@M3paranoidgc) manifested by the insertion of a filler by SuspendPool, with resumption after the fact resulting in a non-zeroed object. From hosking at elego.de Sat Jun 2 21:15:24 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 2 Jun 2007 21:15:24 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070602191524.ED73D4CC23C@birch.elego.de> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/02 21:15:24 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RT0.i3 RTCollector.m3 RTHeapEvent.i3 RTHeapRep.i3 Log message: Use much more fine-grained read and write barriers: - read barrier needs only to check that object reference being loaded is not gray, cleaning just that one object if it is. - write barrier needs only to check that object is not dirty, marking that one object if its, and setting the page to dirty as well if it is not already. These changes pave the way for ultimate deletion of the "protected" page-level descriptor bit, as well as elimination of all the virtual-memory protection cruft which is now obsolete. This will make for a much more maintainable and malleable GC subsystem. From hosking at elego.de Sat Jun 2 21:16:37 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 2 Jun 2007 21:16:37 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070602191637.CE0B54CC23C@birch.elego.de> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/02 21:16:37 Modified files: cm3/m3-tools/showheap/src/: ShowHeap.m3 Log message: Switch over to page-level "clean" bit instead of deprecated "protected" bit, which will go away once the old-style virtual-memory page protection support for incremental/generational GC is removed. From hosking at elego.de Mon Jun 4 21:35:03 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 4 Jun 2007 21:35:03 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070604193503.911144CC23C@birch.elego.de> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/04 21:35:03 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTCollector.m3 Log message: When promoting OldImpure pages for generational collection we only need to treat the dirty objects in the page as gray during scanning. This exploits the improved precision of the software write barriers for generational collection. From rforb at elego.de Tue Jun 12 12:21:16 2007 From: rforb at elego.de (Ronny Forberger) Date: Tue, 12 Jun 2007 12:21:16 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070612102117.59D8910D43EB@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rforb at birch. 07/06/12 12:21:16 Added files: cm3/www/: test Log message: From rforb at elego.de Tue Jun 12 12:24:03 2007 From: rforb at elego.de (Ronny Forberger) Date: Tue, 12 Jun 2007 12:24:03 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070612102405.E9FF310D43EB@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rforb at birch. 07/06/12 12:24:03 Removed files: cm3/www/: test Log message: revoking test commit From uamoore at elego.de Wed Jun 13 10:45:57 2007 From: uamoore at elego.de (Ulrike Amoore) Date: Wed, 13 Jun 2007 10:45:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070613084557.62D8F10D43F0@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: uamoore at birch. 07/06/13 10:45:57 Modified files: cm3/www/: cm3-5.4-status.html cvs-cm3.html cvsupfile.cm3 Log message: Links aktualisiert From hosking at elego.de Thu Jun 14 20:11:27 2007 From: hosking at elego.de (Antony Hosking) Date: Thu, 14 Jun 2007 20:11:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070614181130.44F7E10D43ED@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/14 20:11:27 Modified files: cm3/m3-sys/cminstall/src/config/: NT386 Log message: Inconsistent ^M characters removed. From hosking at elego.de Wed Jun 20 20:35:32 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 20 Jun 2007 20:35:32 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070620183532.4B9E710D4406@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/20 20:35:32 Removed files: cm3/m3-libs/m3gc-simple/: PkgTags cm3/m3-libs/m3gc-simple/src/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/: RTVM.c m3makefile cm3/m3-libs/m3gc-simple/src/runtime/AIX386/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/ALPHA_OSF/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/AP3000/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/ARM/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/DS3100/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/FreeBSD/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/FreeBSD2/: DEFS.h accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h sysdeps.c wrap.h write.c cm3/m3-libs/m3gc-simple/src/runtime/FreeBSD3/: RTHeapDepC.c RTThreadC.c accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h sysdeps.c wrap.h write.c cm3/m3-libs/m3gc-simple/src/runtime/FreeBSD4/: accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h sysdeps.c wrap.h write.c cm3/m3-libs/m3gc-simple/src/runtime/HP300/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/HPPA/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/I386_DARWIN/: RTHeapDepC.c RTThreadC.c accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h sysdeps.c wrap.h write.c cm3/m3-libs/m3gc-simple/src/runtime/IBMR2/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/IBMRT/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/IRIX5/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/LINUX/: m3mkefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/LINUXELF/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/LINUXLIBC6/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/NEXT/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/NetBSD2_i386/: accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h sysdeps.c wrap.h write.c cm3/m3-libs/m3gc-simple/src/runtime/OKI/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/OS2/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/PPC_DARWIN/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-simple/src/runtime/PPC_LINUX/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/SEQUENT/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/SOLgnu/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/SOLsun/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/SPARC/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/SUN3/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/SUN386/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/UMAX/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/VAX/: m3makefile cm3/m3-libs/m3gc-enhanced/: PkgTags cm3/m3-libs/m3gc-enhanced/src/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/: RTVM.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/AIX386/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/ALPHA_OSF/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/AP3000/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/ARM/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/DS3100/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/FreeBSD/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/FreeBSD2/: DEFS.h RTHeapDepC.c accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h wrap.h write.c cm3/m3-libs/m3gc-enhanced/src/runtime/FreeBSD3/: RTHeapDepC.c RTThreadC.c accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h wrap.h write.c cm3/m3-libs/m3gc-enhanced/src/runtime/FreeBSD4/: .M3SHIP RTHeapDepC.c RTThreadC.c accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h wrap.h write.c cm3/m3-libs/m3gc-enhanced/src/runtime/HP300/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/HPPA/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/IBMR2/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/IBMRT/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/IRIX5/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/LINUX/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/LINUXELF/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/LINUXLIBC6/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/NEXT/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/NT386/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/OKI/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/OS2/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/PPC_DARWIN/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/SEQUENT/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/SOLgnu/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/SOLsun/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/SPARC/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/SUN3/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/SUN386/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/UMAX/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/VAX/: m3makefile Log message: Removing m3gcdefs implementations (m3gc-simple, m3gc-enhanced) since enhanced GC now uses compiler support instead of virtual memory protection, which means system call wrappers are now no longer needed. Additional changes to m3core will soon be checked in to eliminate references to these libraries. From hosking at elego.de Fri Jun 22 17:02:35 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:02:35 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622150235.2456E10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:02:35 Modified files: cm3/m3-sys/m3middle/src/: M3CG.i3 M3CG.m3 M3CG_BinRd.m3 M3CG_BinWr.m3 M3CG_Binary.i3 M3CG_Check.m3 M3CG_Ops.i3 M3CG_Rd.m3 M3CG_Wr.m3 Log message: Add preliminary support for atomic operations as part of the M3 intermediate code (M3CG). The front-end compiler still does not contain support for these. The operations supported are those supported by newer versions of gcc, on which cm3cg is implemented. From hosking at elego.de Fri Jun 22 17:07:27 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:07:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622150728.01CD510D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:07:27 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: Make-lang.in m3cg.h parse.c Log message: Add preliminary support for atomic operations as part of the M3 intermediate code (M3CG). The front-end compiler still does not contain support for these. The operations supported are those supported by newer versions of gcc, on which cm3cg is implemented. From hosking at elego.de Fri Jun 22 17:37:11 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:37:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622153712.03DDA10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:37:11 Modified files: cm3/m3-libs/libm3/src/etimer/: ETimer.m3 Log message: Eliminate references to RTHeapDep.VM since we are now using read/write barriers inserted by the compiler. This means that the "GC" times reported by this module are no longer meaningful for incremental GC, since the GC cycle is interleaved with mutator execution. In effect, GC will be measured across the entire cycle, including the mutator time. A better approach would be to start and stop the timers for each GC increment, but there is no API for this in RTHeapRep at this time. Perhaps RTHeapRep.MonitorClosure can be reworked to run only at CollectorOn/CollectorOff granularity. Of course, with true parallelism (as with the PTHREAD threads implementation) even this approach will not be accurate. From hosking at elego.de Fri Jun 22 17:38:47 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:38:47 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622153848.00E8010D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:38:47 Modified files: cm3/m3-sys/cm3/src/: Main.m3 Log message: Remove call to RTCollectorSRC.DisableVM -- we no support use VM-synchronized GC. Incremental/generational GC are now supported on all targets by the compiler. From hosking at elego.de Fri Jun 22 17:40:17 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:40:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154017.4588D10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:40:17 Modified files: cm3/m3-sys/cminstall/src/config/: LINUXLIBC6 Log message: Don't wrap system calls anymore -- we no support use VM-synchronized GC. Incremental/generational GC are now supported on all targets by the compiler. From hosking at elego.de Fri Jun 22 17:40:34 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:40:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154034.A718410D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:40:34 Modified files: cm3/m3-sys/cminstall/src/config/: NT386GNU Log message: Don't wrap system calls anymore -- we no support use VM-synchronized GC. Incremental/generational GC are now supported on all targets by the compiler. From hosking at elego.de Fri Jun 22 17:40:50 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:40:50 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154050.B9BF310D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:40:50 Modified files: cm3/m3-sys/cminstall/src/config/: PPC_LINUX Log message: Don't wrap system calls anymore -- we no support use VM-synchronized GC. Incremental/generational GC are now supported on all targets by the compiler. From hosking at elego.de Fri Jun 22 17:41:49 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:41:49 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154149.9D5FF10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:41:49 Modified files: cm3/m3-sys/m3cggen/src/: Main.m3 Log message: Add preliminary support for atomic operations as part of the M3 intermediate code (M3CG). The front-end compiler still does not contain support for these. The operations supported are those supported by newer versions of gcc, on which cm3cg is implemented. From hosking at elego.de Fri Jun 22 17:45:48 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:45:48 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154548.BBC0510D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:45:48 Modified files: cm3/m3-tools/gnuemacs/src/flex-bison/: lex.yy.c y.tab.c cm3/m3-tools/gnuemacs/src/lex-yacc/: lex.yy.c y.tab.c Log message: Regenerated From hosking at elego.de Fri Jun 22 17:46:58 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:46:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154658.F242F10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:46:58 Modified files: cm3/m3-ui/ui/src/xvbt/: XClientF.m3 Log message: Eliminate references to RTHeapDep.VM/RTCollectorSRC.incremental since we are now using read/write barriers inserted by the compiler. This means that the hack to change the cursor to "StarTrek" is no longer meaningful for incremental GC, since the GC cycle is interleaved with mutator execution. To turn on the cursor use the @M3StarTrek runtime argument. Your mileage will vary! From hosking at elego.de Fri Jun 22 17:48:06 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:48:06 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154806.07FCF10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:48:06 Modified files: cm3/www/: porting.html Log message: No more m3gc-simple/m3gc-enhanced. From hosking at elego.de Fri Jun 22 22:04:04 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 22:04:04 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622200404.8677010D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 22:04:04 Modified files: cm3/m3-libs/m3core/src/runtime/AIX386/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/ALPHA_OSF/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/AP3000/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/ARM/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/DS3100/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/FreeBSD/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/FreeBSD2/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/FreeBSD3/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/FreeBSD4/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/HP300/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/HPPA/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/I386_DARWIN/: m3makefile cm3/m3-libs/m3core/src/runtime/IBMR2/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/IBMRT/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/IRIX5/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/LINUX/: m3makefile cm3/m3-libs/m3core/src/runtime/LINUXELF/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/LINUXLIBC6/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/NEXT/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/NT386/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/NT386GNU/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/NetBSD2_i386/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/OKI/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/OS2/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/PPC_DARWIN/: m3makefile cm3/m3-libs/m3core/src/runtime/PPC_LINUX/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/SEQUENT/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/SOLgnu/: RTMachine.i3 RTStackC.c m3makefile cm3/m3-libs/m3core/src/runtime/SOLsun/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/SPARC/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/SUN3/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/SUN386/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/UMAX/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/VAX/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/common/: RTCollector.m3 RTCollectorSRC.i3 RTHeapDep.i3 RTHeapEvent.i3 RTHeapRep.i3 RTLinker.m3 RTLinkerX.i3 m3makefile cm3/m3-libs/m3core/src/unix/darwin-generic/: Unetdb.i3 Unix.i3 Usignal.i3 Usocket.i3 Uuio.i3 cm3/m3-libs/m3core/src/unix/freebsd-1/: Unix.i3 cm3/m3-libs/m3core/src/unix/freebsd-2/: Unetdb.i3 Unix.i3 Usocket.i3 Uuio.i3 cm3/m3-libs/m3core/src/unix/freebsd-3/: Unetdb.i3 Unix.i3 Usocket.i3 Uuio.i3 cm3/m3-libs/m3core/src/unix/freebsd-4/: Unetdb.i3 Unix.i3 Usocket.i3 Uuio.i3 cm3/m3-libs/m3core/src/unix/linux/: Uexec.i3 cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Unix.i3 off_t_wrap.c cm3/scripts/: PKGS README backup-pkgs.sh boot-cm3-build-on-target.sh boot-cm3-core.sh copy-bootarchives.sh def-std-pkgs.sh do-cm3-core.sh do-cm3-min.sh make-bin-dist-min.sh pack-crossbuild.sh pkginfo.sh upgrade-5.3.sh v526_all.CM3P cm3/scripts/doc/: cm3Proj.html cm3/scripts/win/: backup-pkgs.cmd def-std-pkgs.cmd do-cm3-core.cmd upgrade.cmd Removed files: cm3/m3-libs/m3core/src/runtime/I386_DARWIN/: accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h wrap.h write.c cm3/m3-libs/m3core/src/runtime/PPC_DARWIN/: RTHeapDepC.i3 accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h wrap.h write.c Log message: Delete all references to m3gc-simple/m3gc-enhanced. Targets no longer need RTHeapDep.c, since we no longer support VM-synchronized GC. Incremental/generational GC are now both supported by compiler-inserted read/write barriers (respectively). From hosking at elego.de Sat Jun 23 17:52:48 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 23 Jun 2007 17:52:48 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070623155248.D5D6210D415E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/23 17:52:48 Modified files: cm3/m3-sys/cminstall/src/config/: PPC_DARWIN Log message: Add PTHREAD to list of system libraries. From hosking at elego.de Sat Jun 23 17:56:34 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 23 Jun 2007 17:56:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070623155634.185D110D415E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/23 17:56:34 Modified files: cm3/m3-sys/cminstall/src/config/: I386_DARWIN Log message: Synchronization primitives need to specify architecture target that has them. From hosking at elego.de Sat Jun 23 18:06:14 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 23 Jun 2007 18:06:14 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070623160614.CFE7910D415E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/23 18:06:14 Modified files: cm3/m3-sys/cminstall/src/config/: PPC_DARWIN Log message: Minor tweaks. From hosking at elego.de Sun Jun 24 21:51:36 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 24 Jun 2007 21:51:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070624195136.B288210D42D0@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/24 21:51:36 Modified files: cm3/m3-sys/cminstall/src/config/: LINUXLIBC6 Log message: Add explicit use of 32-bit backend tools for LINUXLIBC6 target, so things work properly on x86_64 machines. (LINUXLIBC6 assumes a 32-bit INTEGER target even though the host machine might be able to do 64-bits). From hosking at elego.de Thu Jun 28 16:52:00 2007 From: hosking at elego.de (Antony Hosking) Date: Thu, 28 Jun 2007 16:52:00 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070628145200.8912E10D4389@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/28 16:52:00 Modified files: cm3/m3-libs/m3core/src/thread/POSIX/: ThreadPosix.m3 Log message: Make sure that ProcessStacks does not trigger GC barriers by using LOOPHOLE to perform untraced accesses to the heap. This is safe because we know that ProcessStacks runs when the collector is already on, thread-switching is disabled, and objects are not yet moving. From hosking at elego.de Thu Jun 28 17:50:51 2007 From: hosking at elego.de (Antony Hosking) Date: Thu, 28 Jun 2007 17:50:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070628155051.4158410D438E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/28 17:50:50 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTCollector.m3 Log message: No need for out-of-band communication of heap bounds for NoteStackLocations -- all threads are stopped at this point so p0/p1 are both valid. From hosking at elego.de Thu Jun 28 17:53:02 2007 From: hosking at elego.de (Antony Hosking) Date: Thu, 28 Jun 2007 17:53:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070628155302.CC46B10D438E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/28 17:53:02 Modified files: cm3/m3-libs/m3core/src/thread/POSIX/: ThreadF.i3 Log message: inCritical is no longer external since elimination of m3gc-simple/m3gc-enhanced. From hosking at elego.de Thu Jun 28 17:53:48 2007 From: hosking at elego.de (Antony Hosking) Date: Thu, 28 Jun 2007 17:53:48 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070628155348.5F00C10D438E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/28 17:53:48 Modified files: cm3/m3-libs/m3core/src/thread/: m3makefile Log message: Permit build of user-level threads with -DNOPTHREAD flag. From hosking at elego.de Sat Jun 2 05:29:36 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 2 Jun 2007 5:29:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070602032936.1D7F34CC23C@birch.elego.de> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/02 05:29:36 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTHeapRep.i3 Log message: Adjust Fill typecodes so that we can scan zero-filled pages without having to tack a filler after the last allocation. From hosking at elego.de Sat Jun 2 05:31:08 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 2 Jun 2007 5:31:08 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070602033108.9EBEE4CC23C@birch.elego.de> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/02 05:31:08 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTCollector.m3 Log message: Adjust Fill typecodes so that we can scan zero-filled pages without having to tack a filler after the last allocation. This allows us to fix a bug in the GC SanityCheck code (@M3paranoidgc) manifested by the insertion of a filler by SuspendPool, with resumption after the fact resulting in a non-zeroed object. From hosking at elego.de Sat Jun 2 21:15:24 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 2 Jun 2007 21:15:24 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070602191524.ED73D4CC23C@birch.elego.de> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/02 21:15:24 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RT0.i3 RTCollector.m3 RTHeapEvent.i3 RTHeapRep.i3 Log message: Use much more fine-grained read and write barriers: - read barrier needs only to check that object reference being loaded is not gray, cleaning just that one object if it is. - write barrier needs only to check that object is not dirty, marking that one object if its, and setting the page to dirty as well if it is not already. These changes pave the way for ultimate deletion of the "protected" page-level descriptor bit, as well as elimination of all the virtual-memory protection cruft which is now obsolete. This will make for a much more maintainable and malleable GC subsystem. From hosking at elego.de Sat Jun 2 21:16:37 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 2 Jun 2007 21:16:37 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070602191637.CE0B54CC23C@birch.elego.de> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/02 21:16:37 Modified files: cm3/m3-tools/showheap/src/: ShowHeap.m3 Log message: Switch over to page-level "clean" bit instead of deprecated "protected" bit, which will go away once the old-style virtual-memory page protection support for incremental/generational GC is removed. From hosking at elego.de Mon Jun 4 21:35:03 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 4 Jun 2007 21:35:03 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070604193503.911144CC23C@birch.elego.de> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/04 21:35:03 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTCollector.m3 Log message: When promoting OldImpure pages for generational collection we only need to treat the dirty objects in the page as gray during scanning. This exploits the improved precision of the software write barriers for generational collection. From rforb at elego.de Tue Jun 12 12:21:16 2007 From: rforb at elego.de (Ronny Forberger) Date: Tue, 12 Jun 2007 12:21:16 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070612102117.59D8910D43EB@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rforb at birch. 07/06/12 12:21:16 Added files: cm3/www/: test Log message: From rforb at elego.de Tue Jun 12 12:24:03 2007 From: rforb at elego.de (Ronny Forberger) Date: Tue, 12 Jun 2007 12:24:03 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070612102405.E9FF310D43EB@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rforb at birch. 07/06/12 12:24:03 Removed files: cm3/www/: test Log message: revoking test commit From uamoore at elego.de Wed Jun 13 10:45:57 2007 From: uamoore at elego.de (Ulrike Amoore) Date: Wed, 13 Jun 2007 10:45:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070613084557.62D8F10D43F0@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: uamoore at birch. 07/06/13 10:45:57 Modified files: cm3/www/: cm3-5.4-status.html cvs-cm3.html cvsupfile.cm3 Log message: Links aktualisiert From hosking at elego.de Thu Jun 14 20:11:27 2007 From: hosking at elego.de (Antony Hosking) Date: Thu, 14 Jun 2007 20:11:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070614181130.44F7E10D43ED@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/14 20:11:27 Modified files: cm3/m3-sys/cminstall/src/config/: NT386 Log message: Inconsistent ^M characters removed. From hosking at elego.de Wed Jun 20 20:35:32 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 20 Jun 2007 20:35:32 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070620183532.4B9E710D4406@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/20 20:35:32 Removed files: cm3/m3-libs/m3gc-simple/: PkgTags cm3/m3-libs/m3gc-simple/src/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/: RTVM.c m3makefile cm3/m3-libs/m3gc-simple/src/runtime/AIX386/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/ALPHA_OSF/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/AP3000/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/ARM/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/DS3100/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/FreeBSD/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/FreeBSD2/: DEFS.h accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h sysdeps.c wrap.h write.c cm3/m3-libs/m3gc-simple/src/runtime/FreeBSD3/: RTHeapDepC.c RTThreadC.c accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h sysdeps.c wrap.h write.c cm3/m3-libs/m3gc-simple/src/runtime/FreeBSD4/: accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h sysdeps.c wrap.h write.c cm3/m3-libs/m3gc-simple/src/runtime/HP300/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/HPPA/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/I386_DARWIN/: RTHeapDepC.c RTThreadC.c accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h sysdeps.c wrap.h write.c cm3/m3-libs/m3gc-simple/src/runtime/IBMR2/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/IBMRT/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/IRIX5/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/LINUX/: m3mkefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/LINUXELF/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/LINUXLIBC6/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/NEXT/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/NetBSD2_i386/: accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h sysdeps.c wrap.h write.c cm3/m3-libs/m3gc-simple/src/runtime/OKI/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/OS2/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/PPC_DARWIN/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-simple/src/runtime/PPC_LINUX/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/SEQUENT/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/SOLgnu/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/SOLsun/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/SPARC/: m3makefile sysdeps.c cm3/m3-libs/m3gc-simple/src/runtime/SUN3/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/SUN386/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/UMAX/: m3makefile cm3/m3-libs/m3gc-simple/src/runtime/VAX/: m3makefile cm3/m3-libs/m3gc-enhanced/: PkgTags cm3/m3-libs/m3gc-enhanced/src/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/: RTVM.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/AIX386/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/ALPHA_OSF/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/AP3000/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/ARM/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/DS3100/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/FreeBSD/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/FreeBSD2/: DEFS.h RTHeapDepC.c accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h wrap.h write.c cm3/m3-libs/m3gc-enhanced/src/runtime/FreeBSD3/: RTHeapDepC.c RTThreadC.c accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h wrap.h write.c cm3/m3-libs/m3gc-enhanced/src/runtime/FreeBSD4/: .M3SHIP RTHeapDepC.c RTThreadC.c accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c m3makefile malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h wrap.h write.c cm3/m3-libs/m3gc-enhanced/src/runtime/HP300/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/HPPA/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/IBMR2/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/IBMRT/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/IRIX5/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/LINUX/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/LINUXELF/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/LINUXLIBC6/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/NEXT/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/NT386/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/OKI/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/OS2/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/PPC_DARWIN/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/SEQUENT/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/SOLgnu/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/SOLsun/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/SPARC/: RTHeapDepC.c m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/SUN3/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/SUN386/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/UMAX/: m3makefile cm3/m3-libs/m3gc-enhanced/src/runtime/VAX/: m3makefile Log message: Removing m3gcdefs implementations (m3gc-simple, m3gc-enhanced) since enhanced GC now uses compiler support instead of virtual memory protection, which means system call wrappers are now no longer needed. Additional changes to m3core will soon be checked in to eliminate references to these libraries. From hosking at elego.de Fri Jun 22 17:02:35 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:02:35 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622150235.2456E10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:02:35 Modified files: cm3/m3-sys/m3middle/src/: M3CG.i3 M3CG.m3 M3CG_BinRd.m3 M3CG_BinWr.m3 M3CG_Binary.i3 M3CG_Check.m3 M3CG_Ops.i3 M3CG_Rd.m3 M3CG_Wr.m3 Log message: Add preliminary support for atomic operations as part of the M3 intermediate code (M3CG). The front-end compiler still does not contain support for these. The operations supported are those supported by newer versions of gcc, on which cm3cg is implemented. From hosking at elego.de Fri Jun 22 17:07:27 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:07:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622150728.01CD510D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:07:27 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: Make-lang.in m3cg.h parse.c Log message: Add preliminary support for atomic operations as part of the M3 intermediate code (M3CG). The front-end compiler still does not contain support for these. The operations supported are those supported by newer versions of gcc, on which cm3cg is implemented. From hosking at elego.de Fri Jun 22 17:37:11 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:37:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622153712.03DDA10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:37:11 Modified files: cm3/m3-libs/libm3/src/etimer/: ETimer.m3 Log message: Eliminate references to RTHeapDep.VM since we are now using read/write barriers inserted by the compiler. This means that the "GC" times reported by this module are no longer meaningful for incremental GC, since the GC cycle is interleaved with mutator execution. In effect, GC will be measured across the entire cycle, including the mutator time. A better approach would be to start and stop the timers for each GC increment, but there is no API for this in RTHeapRep at this time. Perhaps RTHeapRep.MonitorClosure can be reworked to run only at CollectorOn/CollectorOff granularity. Of course, with true parallelism (as with the PTHREAD threads implementation) even this approach will not be accurate. From hosking at elego.de Fri Jun 22 17:38:47 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:38:47 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622153848.00E8010D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:38:47 Modified files: cm3/m3-sys/cm3/src/: Main.m3 Log message: Remove call to RTCollectorSRC.DisableVM -- we no support use VM-synchronized GC. Incremental/generational GC are now supported on all targets by the compiler. From hosking at elego.de Fri Jun 22 17:40:17 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:40:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154017.4588D10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:40:17 Modified files: cm3/m3-sys/cminstall/src/config/: LINUXLIBC6 Log message: Don't wrap system calls anymore -- we no support use VM-synchronized GC. Incremental/generational GC are now supported on all targets by the compiler. From hosking at elego.de Fri Jun 22 17:40:34 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:40:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154034.A718410D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:40:34 Modified files: cm3/m3-sys/cminstall/src/config/: NT386GNU Log message: Don't wrap system calls anymore -- we no support use VM-synchronized GC. Incremental/generational GC are now supported on all targets by the compiler. From hosking at elego.de Fri Jun 22 17:40:50 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:40:50 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154050.B9BF310D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:40:50 Modified files: cm3/m3-sys/cminstall/src/config/: PPC_LINUX Log message: Don't wrap system calls anymore -- we no support use VM-synchronized GC. Incremental/generational GC are now supported on all targets by the compiler. From hosking at elego.de Fri Jun 22 17:41:49 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:41:49 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154149.9D5FF10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:41:49 Modified files: cm3/m3-sys/m3cggen/src/: Main.m3 Log message: Add preliminary support for atomic operations as part of the M3 intermediate code (M3CG). The front-end compiler still does not contain support for these. The operations supported are those supported by newer versions of gcc, on which cm3cg is implemented. From hosking at elego.de Fri Jun 22 17:45:48 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:45:48 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154548.BBC0510D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:45:48 Modified files: cm3/m3-tools/gnuemacs/src/flex-bison/: lex.yy.c y.tab.c cm3/m3-tools/gnuemacs/src/lex-yacc/: lex.yy.c y.tab.c Log message: Regenerated From hosking at elego.de Fri Jun 22 17:46:58 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:46:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154658.F242F10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:46:58 Modified files: cm3/m3-ui/ui/src/xvbt/: XClientF.m3 Log message: Eliminate references to RTHeapDep.VM/RTCollectorSRC.incremental since we are now using read/write barriers inserted by the compiler. This means that the hack to change the cursor to "StarTrek" is no longer meaningful for incremental GC, since the GC cycle is interleaved with mutator execution. To turn on the cursor use the @M3StarTrek runtime argument. Your mileage will vary! From hosking at elego.de Fri Jun 22 17:48:06 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 17:48:06 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622154806.07FCF10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 17:48:06 Modified files: cm3/www/: porting.html Log message: No more m3gc-simple/m3gc-enhanced. From hosking at elego.de Fri Jun 22 22:04:04 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 22 Jun 2007 22:04:04 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070622200404.8677010D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/22 22:04:04 Modified files: cm3/m3-libs/m3core/src/runtime/AIX386/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/ALPHA_OSF/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/AP3000/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/ARM/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/DS3100/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/FreeBSD/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/FreeBSD2/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/FreeBSD3/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/FreeBSD4/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/HP300/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/HPPA/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/I386_DARWIN/: m3makefile cm3/m3-libs/m3core/src/runtime/IBMR2/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/IBMRT/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/IRIX5/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/LINUX/: m3makefile cm3/m3-libs/m3core/src/runtime/LINUXELF/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/LINUXLIBC6/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/NEXT/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/NT386/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/NT386GNU/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/NetBSD2_i386/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/OKI/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/OS2/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/PPC_DARWIN/: m3makefile cm3/m3-libs/m3core/src/runtime/PPC_LINUX/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/SEQUENT/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/SOLgnu/: RTMachine.i3 RTStackC.c m3makefile cm3/m3-libs/m3core/src/runtime/SOLsun/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/SPARC/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/SUN3/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/SUN386/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/UMAX/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/VAX/: RTMachine.i3 m3makefile cm3/m3-libs/m3core/src/runtime/common/: RTCollector.m3 RTCollectorSRC.i3 RTHeapDep.i3 RTHeapEvent.i3 RTHeapRep.i3 RTLinker.m3 RTLinkerX.i3 m3makefile cm3/m3-libs/m3core/src/unix/darwin-generic/: Unetdb.i3 Unix.i3 Usignal.i3 Usocket.i3 Uuio.i3 cm3/m3-libs/m3core/src/unix/freebsd-1/: Unix.i3 cm3/m3-libs/m3core/src/unix/freebsd-2/: Unetdb.i3 Unix.i3 Usocket.i3 Uuio.i3 cm3/m3-libs/m3core/src/unix/freebsd-3/: Unetdb.i3 Unix.i3 Usocket.i3 Uuio.i3 cm3/m3-libs/m3core/src/unix/freebsd-4/: Unetdb.i3 Unix.i3 Usocket.i3 Uuio.i3 cm3/m3-libs/m3core/src/unix/linux/: Uexec.i3 cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Unix.i3 off_t_wrap.c cm3/scripts/: PKGS README backup-pkgs.sh boot-cm3-build-on-target.sh boot-cm3-core.sh copy-bootarchives.sh def-std-pkgs.sh do-cm3-core.sh do-cm3-min.sh make-bin-dist-min.sh pack-crossbuild.sh pkginfo.sh upgrade-5.3.sh v526_all.CM3P cm3/scripts/doc/: cm3Proj.html cm3/scripts/win/: backup-pkgs.cmd def-std-pkgs.cmd do-cm3-core.cmd upgrade.cmd Removed files: cm3/m3-libs/m3core/src/runtime/I386_DARWIN/: accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c malloc.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h wrap.h write.c cm3/m3-libs/m3core/src/runtime/PPC_DARWIN/: RTHeapDepC.i3 accept.c bind.c close.c connect.c dup.c dup2.c gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c listen.c read.c recv.c recvfrom.c select.c send.c sendto.c shutdown.c socket.c socksconf.h wrap.h write.c Log message: Delete all references to m3gc-simple/m3gc-enhanced. Targets no longer need RTHeapDep.c, since we no longer support VM-synchronized GC. Incremental/generational GC are now both supported by compiler-inserted read/write barriers (respectively). From hosking at elego.de Sat Jun 23 17:52:48 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 23 Jun 2007 17:52:48 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070623155248.D5D6210D415E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/23 17:52:48 Modified files: cm3/m3-sys/cminstall/src/config/: PPC_DARWIN Log message: Add PTHREAD to list of system libraries. From hosking at elego.de Sat Jun 23 17:56:34 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 23 Jun 2007 17:56:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070623155634.185D110D415E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/23 17:56:34 Modified files: cm3/m3-sys/cminstall/src/config/: I386_DARWIN Log message: Synchronization primitives need to specify architecture target that has them. From hosking at elego.de Sat Jun 23 18:06:14 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 23 Jun 2007 18:06:14 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070623160614.CFE7910D415E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/23 18:06:14 Modified files: cm3/m3-sys/cminstall/src/config/: PPC_DARWIN Log message: Minor tweaks. From hosking at elego.de Sun Jun 24 21:51:36 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 24 Jun 2007 21:51:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070624195136.B288210D42D0@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/24 21:51:36 Modified files: cm3/m3-sys/cminstall/src/config/: LINUXLIBC6 Log message: Add explicit use of 32-bit backend tools for LINUXLIBC6 target, so things work properly on x86_64 machines. (LINUXLIBC6 assumes a 32-bit INTEGER target even though the host machine might be able to do 64-bits). From hosking at elego.de Thu Jun 28 16:52:00 2007 From: hosking at elego.de (Antony Hosking) Date: Thu, 28 Jun 2007 16:52:00 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070628145200.8912E10D4389@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/28 16:52:00 Modified files: cm3/m3-libs/m3core/src/thread/POSIX/: ThreadPosix.m3 Log message: Make sure that ProcessStacks does not trigger GC barriers by using LOOPHOLE to perform untraced accesses to the heap. This is safe because we know that ProcessStacks runs when the collector is already on, thread-switching is disabled, and objects are not yet moving. From hosking at elego.de Thu Jun 28 17:50:51 2007 From: hosking at elego.de (Antony Hosking) Date: Thu, 28 Jun 2007 17:50:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070628155051.4158410D438E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/28 17:50:50 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTCollector.m3 Log message: No need for out-of-band communication of heap bounds for NoteStackLocations -- all threads are stopped at this point so p0/p1 are both valid. From hosking at elego.de Thu Jun 28 17:53:02 2007 From: hosking at elego.de (Antony Hosking) Date: Thu, 28 Jun 2007 17:53:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070628155302.CC46B10D438E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/28 17:53:02 Modified files: cm3/m3-libs/m3core/src/thread/POSIX/: ThreadF.i3 Log message: inCritical is no longer external since elimination of m3gc-simple/m3gc-enhanced. From hosking at elego.de Thu Jun 28 17:53:48 2007 From: hosking at elego.de (Antony Hosking) Date: Thu, 28 Jun 2007 17:53:48 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070628155348.5F00C10D438E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/06/28 17:53:48 Modified files: cm3/m3-libs/m3core/src/thread/: m3makefile Log message: Permit build of user-level threads with -DNOPTHREAD flag.