From hosking at elego.de Fri Aug 3 01:21:38 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:21:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802232151.65C7510D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:21:38 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTCollector.m3 Log message: RTParams really do need to be set during Init instead of at module initialization. From hosking at elego.de Fri Aug 3 01:22:37 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:22:37 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802232237.6326410D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:22:37 Modified files: cm3/m3-libs/m3core/src/unix/linux-libc6/: Upthread.i3 Log message: Change definition of pthread_mutex_init to permit NIL 'attr' argument. From hosking at elego.de Fri Aug 3 01:23:04 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:23:04 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802232304.2C5E210D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:23:04 Modified files: cm3/m3-libs/m3core/src/unix/darwin-generic/: Upthread.i3 Log message: Change definition of pthread_mutex_init to permit NIL 'attr' argument. From hosking at elego.de Fri Aug 3 01:23:22 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:23:22 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802232322.B910810D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:23:22 Modified files: cm3/m3-libs/m3core/src/unix/solaris-2-x/: Upthread.i3 Log message: Change definition of pthread_mutex_init to permit NIL 'attr' argument. From hosking at elego.de Fri Aug 3 01:30:18 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:30:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802233019.E456B10D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:30:18 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Rework PTHREADS subsystem to map every M3 MUTEX to a pthread mutex and every M3 Condition to a pthread condition. This will improve scalability. Thanks to Dragisa Duric for his comments and suggestions for how to improve pthread-based threading. This update also fixes a major problem with IOWait and IOAlertWait that was causing major problems for GUI applications like mentor. I am happy to report that mentor now runs properly (subject to associated bugfixes in the GUI packages). From hosking at elego.de Fri Aug 3 01:32:25 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:32:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802233232.EF29C10D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:32:25 Modified files: cm3/m3-ui/ui/src/vbt/: VBTClass.m3 Log message: SyncDefault had a nasty race in it. The handshake requires that the child be released and reacquired while the parent is still held. From hosking at elego.de Fri Aug 3 01:33:34 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:33:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802233334.E750B10D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:33:34 Modified files: cm3/m3-ui/ui/src/xvbt/: XClient.m3 Log message: Sync had a nasty race in it. The handshake requires that the children be released and reacquired while the parent is still held. From hosking at elego.de Fri Aug 3 18:09:26 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 18:09:26 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070803160926.7B83310D42E3@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 18:09:26 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Fix race between Fork and Join. Make sure thread is truly up and running before returning from fork. From hosking at elego.de Sat Aug 4 18:30:42 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 4 Aug 2007 18:30:42 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070804163042.6EF6010D43A8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/04 18:30:42 Modified files: cm3/m3-ui/mgkit/src/: GraphVBT.m3 Log message: Fix deadlock! Need to release and acquire locks in reverse order to respect protocol that graph is locked before graph.mgv. From hosking at elego.de Sat Aug 4 19:28:16 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 4 Aug 2007 19:28:16 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070804172823.428DA10D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/04 19:28:16 Modified files: cm3/m3-ui/ui/src/vbt/: VBTClass.m3 Log message: Revert previous change. Bad assumptions made. From hosking at elego.de Sat Aug 4 19:28:36 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 4 Aug 2007 19:28:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070804172837.CF1B510D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/04 19:28:36 Modified files: cm3/m3-ui/ui/src/xvbt/: XClient.m3 Log message: Revert previous change. Bad assumptions made. From hosking at elego.de Sat Aug 4 19:44:10 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 4 Aug 2007 19:44:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070804174423.95ACE10D4302@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/04 19:44:10 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Add debug support for dumping all threads. Still issues on Darwin. May need to revert to original approach with explicit queues. From hosking at elego.de Sun Aug 5 21:40:59 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 5 Aug 2007 21:40:59 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070805194059.556B610D437A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/05 21:40:59 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Make sure to test alert before returning from XWait. From hosking at elego.de Mon Aug 6 18:35:44 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 6 Aug 2007 18:35:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070806163544.1C97C10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/06 18:35:44 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: The problem with the pure pthread condition = M3 condition strategy is that it doesn't play well with alerts on Mac OS X. It turns out signalling the alerted thread won't wake it up from pthread_cond_wait or pthread_cond_timedwait, as it will under Linux. This is a problem, since it means alerted threads can hang around until the main thread exits, leaving no thread active. Moreover, the timeout does not seem to get delivered even to a thread waiting on pthread_cond_timedwait, so we can't even use a polling approach. Thus, I am reverting to the older style of condition using explicit queues and a per-thread wait condition, which we can signal on alert to wake up threads in pthread_cond_wait/pthread_cond_timedwait. Sigh! In any case, this thread implementation is tested on both Mac OSX Darwin and Linux. i.e., GUI apps like mentor work correctly. I will look at coming up with a hybrid implementation that retains 1-1 mapping of M3 mutexes to pthread mutexes, but implements M3 conditions as they are in this update, with explicit queues. That way, we will have scalability of avoiding global locks for mutexes, while retaining desirable M3 alert behavior. From jdp at polstra.com Mon Aug 6 18:55:40 2007 From: jdp at polstra.com (John Polstra) Date: Mon, 06 Aug 2007 09:55:40 -0700 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20070806163544.1C97C10D4407@birch.elegosoft.com> References: <20070806163544.1C97C10D4407@birch.elegosoft.com> Message-ID: <46B7528C.4040901@polstra.com> Antony Hosking wrote: > Log message: > The problem with the pure pthread condition = M3 condition strategy is that it > doesn't play well with alerts on Mac OS X. It turns out signalling the > alerted thread won't wake it up from pthread_cond_wait or > pthread_cond_timedwait, as it will under Linux. The MacOSX behavior is OK according to POSIX, so it's good that you're making this change. John From hosking at elego.de Mon Aug 6 21:22:02 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 6 Aug 2007 21:22:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070806192202.3171F10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/06 21:22:02 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Added explicit variable state field for later use. Minor edits. From hosking at elego.de Wed Aug 8 05:50:13 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 8 Aug 2007 5:50:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070808035016.A852410D440E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/08 05:50:13 Modified files: cm3/doc/reference/: arithmetic.html arrays.html conventions.html for.html index.html m3.html m3index.html numbers.html ordinal.html subtypes.html typeops.html word-intf.html cm3/m3-db/smalldb/src/: OSSupport.m3 cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 FilePosix.m3 SocketPosix.m3 cm3/m3-libs/libm3/src/pickle/ver2/: ConvertPacking.m3 cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3 cm3/m3-libs/m3core/src/C/64BITS/: BasicCtypes.i3 cm3/m3-libs/m3core/src/Csupport/Common/: hand.c cm3/m3-libs/m3core/src/runtime/POSIX/: RTOS.m3 cm3/m3-libs/m3core/src/runtime/common/: RTTipe.i3 RTTipe.m3 cm3/m3-libs/m3core/src/thread/: m3makefile cm3/m3-libs/m3core/src/unix/darwin-generic/: Umman.i3 Unix.i3 Utypes.i3 m3makefile cm3/m3-libs/m3core/src/unix/freebsd-2/: Umman.i3 Unix.i3 Utypes.i3 m3makefile cm3/m3-libs/m3core/src/unix/freebsd-3/: Umman.i3 Unix.i3 Utypes.i3 m3makefile cm3/m3-libs/m3core/src/unix/freebsd-4/: Umman.i3 Unix.i3 Utypes.i3 m3makefile cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Umman.i3 Unix.i3 Utypes.i3 m3makefile cm3/m3-libs/m3core/src/word/: m3makefile cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c cm3/m3-sys/m3front/src/: m3makefile cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3 cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 Ceiling.m3 Dec.m3 First.m3 Floatt.m3 Floor.m3 Inc.m3 Last.m3 Max.m3 New.m3 Number.m3 Ord.m3 Round.m3 Subarray.m3 Trunc.m3 Val.m3 cm3/m3-sys/m3front/src/builtinTypes/: BuiltinTypes.m3 Int.m3 m3makefile cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3 WordInsert.m3 WordModule.m3 WordNot.m3 WordOr.m3 WordRotate.m3 WordShift.m3 WordXor.m3 cm3/m3-sys/m3front/src/exprs/: AddExpr.m3 ArrayExpr.m3 CastExpr.m3 CheckExpr.m3 CompareExpr.m3 DivExpr.m3 EqualExpr.m3 Expr.m3 ExprParse.m3 InExpr.m3 IntegerExpr.i3 IntegerExpr.m3 ModExpr.m3 MultiplyExpr.m3 NegateExpr.m3 ReelExpr.i3 ReelExpr.m3 SetExpr.m3 SubscriptExpr.m3 SubtractExpr.m3 cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 M3Front.m3 Marker.m3 Scanner.m3 TipeDesc.i3 TipeDesc.m3 Token.i3 Token.m3 cm3/m3-sys/m3front/src/stmts/: AssignStmt.m3 DebugStmt.m3 ForStmt.m3 TryFinStmt.m3 cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3 OpenArrayType.m3 SubrangeType.m3 Type.i3 Type.m3 cm3/m3-sys/m3front/src/values/: Exceptionz.m3 Formal.m3 Module.m3 Variable.m3 cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.m3 M3CG_Check.m3 M3CG_Rd.m3 M3CG_Wr.m3 TFloat.i3 TFloat.m3 TInt.i3 TInt.m3 TWord.i3 TWord.m3 Target.i3 Target.m3 cm3/m3-sys/m3scanner/src/: M3Scanner.i3 M3Scanner.m3 cm3/m3-sys/m3tools/src/: M3AST.i3 M3Builtin.m3 M3Const.m3 M3Lexer.m3 M3Type.i3 M3Type.m3 cm3/m3-tools/m3browser/src/: Main.m3 Added files: cm3/doc/reference/: m3logo.gif cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3 cm3/m3-sys/m3front/src/builtinLong/: LongAnd.i3 LongAnd.m3 LongDivide.i3 LongDivide.m3 LongExtract.i3 LongExtract.m3 LongGE.i3 LongGE.m3 LongGT.i3 LongGT.m3 LongInsert.i3 LongInsert.m3 LongLE.i3 LongLE.m3 LongLT.i3 LongLT.m3 LongMinus.i3 LongMinus.m3 LongMod.i3 LongMod.m3 LongModule.i3 LongModule.m3 LongNot.i3 LongNot.m3 LongOr.i3 LongOr.m3 LongPlus.i3 LongPlus.m3 LongRotate.i3 LongRotate.m3 LongShift.i3 LongShift.m3 LongTimes.i3 LongTimes.m3 LongXor.i3 LongXor.m3 cm3/m3-sys/m3front/src/builtinTypes/: LInt.i3 LInt.m3 Log message: Compiler and runtime extensions to support LONGINT type. Bootstrapping instructions: build and ship packages in the following order m3middle m3linker m3front m3quake cm3 This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. Use this new compiler to build and ship the new system: export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 cd cm3/scripts ./do-cm3-std.sh buildship If this is successful then move the new compiler to BINDIR: mv $CM3 INSTALL_DIR/bin/cm3 From hosking at elego.de Wed Aug 8 14:24:10 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 8 Aug 2007 14:24:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070808122410.B6D4D10D434B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/08 14:24:10 Added files: cm3/m3-sys/m3front/src/builtinLong/: m3makefile Log message: Ommitted this. From hosking at cs.purdue.edu Wed Aug 8 14:39:34 2007 From: hosking at cs.purdue.edu (Tony Hosking) Date: Wed, 8 Aug 2007 08:39:34 -0400 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <9E7B2BE1-36D2-4D32-926D-CF70D7BBBC85@cs.purdue.edu> References: <20070808035016.A852410D440E@birch.elegosoft.com> <9E7B2BE1-36D2-4D32-926D-CF70D7BBBC85@cs.purdue.edu> Message-ID: <0B1FC476-C32B-4E57-8DC7-2856E85C1EF8@cs.purdue.edu> Make sure to start with clean build directories and clean before building with the bootstrapped compiler... On Aug 8, 2007, at 8:31 AM, Tony Hosking wrote: > Amended bootstrap instructions: > > Compiler and runtime extensions to support LONGINT type. > > Bootstrapping instructions: build and ship packages in the > following order > > m3cc > m3middle > m3linker > m3front > m3quake > cm3 > > This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. > > Use this new compiler to build and ship the new system: > > export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 > cd cm3/scripts ./do-cm3-std.sh realclean > ./do-cm3-std.sh buildship > > If this is successful then move the new compiler to BINDIR: > > mv $CM3 INSTALL_DIR/bin/cm3 > > On Aug 8, 2007, at 5:50 AM, Antony Hosking wrote: > >> CVSROOT: /usr/cvs >> Changes by: hosking at birch. 07/08/08 05:50:13 >> >> Modified files: >> cm3/doc/reference/: arithmetic.html arrays.html conventions.html >> for.html index.html m3.html m3index.html >> numbers.html ordinal.html subtypes.html >> typeops.html word-intf.html >> cm3/m3-db/smalldb/src/: OSSupport.m3 >> cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 FilePosix.m3 >> SocketPosix.m3 >> cm3/m3-libs/libm3/src/pickle/ver2/: ConvertPacking.m3 >> cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3 >> cm3/m3-libs/m3core/src/C/64BITS/: BasicCtypes.i3 >> cm3/m3-libs/m3core/src/Csupport/Common/: hand.c >> cm3/m3-libs/m3core/src/runtime/POSIX/: RTOS.m3 >> cm3/m3-libs/m3core/src/runtime/common/: RTTipe.i3 RTTipe.m3 >> cm3/m3-libs/m3core/src/thread/: m3makefile >> cm3/m3-libs/m3core/src/unix/darwin-generic/: Umman.i3 Unix.i3 >> Utypes.i3 >> m3makefile >> cm3/m3-libs/m3core/src/unix/freebsd-2/: Umman.i3 Unix.i3 >> Utypes.i3 m3makefile >> cm3/m3-libs/m3core/src/unix/freebsd-3/: Umman.i3 Unix.i3 >> Utypes.i3 m3makefile >> cm3/m3-libs/m3core/src/unix/freebsd-4/: Umman.i3 Unix.i3 >> Utypes.i3 m3makefile >> cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Umman.i3 Unix.i3 >> Utypes.i3 m3makefile >> cm3/m3-libs/m3core/src/word/: m3makefile >> cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c >> cm3/m3-sys/m3front/src/: m3makefile >> cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3 >> cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 Ceiling.m3 >> Dec.m3 First.m3 Floatt.m3 >> Floor.m3 Inc.m3 Last.m3 >> Max.m3 New.m3 Number.m3 >> Ord.m3 Round.m3 Subarray.m3 >> Trunc.m3 Val.m3 >> cm3/m3-sys/m3front/src/builtinTypes/: BuiltinTypes.m3 Int.m3 >> m3makefile >> cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3 >> WordInsert.m3 WordModule.m3 >> WordNot.m3 WordOr.m3 >> WordRotate.m3 WordShift.m3 >> WordXor.m3 >> cm3/m3-sys/m3front/src/exprs/: AddExpr.m3 ArrayExpr.m3 >> CastExpr.m3 CheckExpr.m3 >> CompareExpr.m3 DivExpr.m3 >> EqualExpr.m3 Expr.m3 ExprParse.m3 >> InExpr.m3 IntegerExpr.i3 >> IntegerExpr.m3 ModExpr.m3 >> MultiplyExpr.m3 NegateExpr.m3 >> ReelExpr.i3 ReelExpr.m3 >> SetExpr.m3 SubscriptExpr.m3 >> SubtractExpr.m3 >> cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 M3Front.m3 >> Marker.m3 Scanner.m3 TipeDesc.i3 >> TipeDesc.m3 Token.i3 Token.m3 >> cm3/m3-sys/m3front/src/stmts/: AssignStmt.m3 DebugStmt.m3 >> ForStmt.m3 TryFinStmt.m3 >> cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3 >> OpenArrayType.m3 SubrangeType.m3 >> Type.i3 Type.m3 >> cm3/m3-sys/m3front/src/values/: Exceptionz.m3 Formal.m3 >> Module.m3 Variable.m3 >> cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.m3 >> M3CG_Check.m3 M3CG_Rd.m3 M3CG_Wr.m3 >> TFloat.i3 TFloat.m3 TInt.i3 TInt.m3 >> TWord.i3 TWord.m3 Target.i3 Target.m3 >> cm3/m3-sys/m3scanner/src/: M3Scanner.i3 M3Scanner.m3 >> cm3/m3-sys/m3tools/src/: M3AST.i3 M3Builtin.m3 M3Const.m3 >> M3Lexer.m3 M3Type.i3 M3Type.m3 >> cm3/m3-tools/m3browser/src/: Main.m3 >> Added files: >> cm3/doc/reference/: m3logo.gif >> cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3 >> cm3/m3-sys/m3front/src/builtinLong/: LongAnd.i3 LongAnd.m3 >> LongDivide.i3 LongDivide.m3 >> LongExtract.i3 >> LongExtract.m3 LongGE.i3 >> LongGE.m3 LongGT.i3 >> LongGT.m3 LongInsert.i3 >> LongInsert.m3 LongLE.i3 >> LongLE.m3 LongLT.i3 >> LongLT.m3 LongMinus.i3 >> LongMinus.m3 LongMod.i3 >> LongMod.m3 LongModule.i3 >> LongModule.m3 LongNot.i3 >> LongNot.m3 LongOr.i3 >> LongOr.m3 LongPlus.i3 >> LongPlus.m3 LongRotate.i3 >> LongRotate.m3 LongShift.i3 >> LongShift.m3 LongTimes.i3 >> LongTimes.m3 LongXor.i3 >> LongXor.m3 >> cm3/m3-sys/m3front/src/builtinTypes/: LInt.i3 LInt.m3 >> >> Log message: >> Compiler and runtime extensions to support LONGINT type. >> >> Bootstrapping instructions: build and ship packages in the >> following order >> >> m3middle >> m3linker >> m3front >> m3quake >> cm3 >> >> This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. >> >> Use this new compiler to build and ship the new system: >> >> export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 >> cd cm3/scripts >> ./do-cm3-std.sh buildship >> >> If this is successful then move the new compiler to BINDIR: >> >> mv $CM3 INSTALL_DIR/bin/cm3 > From hosking at cs.purdue.edu Wed Aug 8 14:31:36 2007 From: hosking at cs.purdue.edu (Tony Hosking) Date: Wed, 8 Aug 2007 08:31:36 -0400 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20070808035016.A852410D440E@birch.elegosoft.com> References: <20070808035016.A852410D440E@birch.elegosoft.com> Message-ID: <9E7B2BE1-36D2-4D32-926D-CF70D7BBBC85@cs.purdue.edu> Amended bootstrap instructions: Compiler and runtime extensions to support LONGINT type. Bootstrapping instructions: build and ship packages in the following order m3cc m3middle m3linker m3front m3quake cm3 This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. Use this new compiler to build and ship the new system: export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 cd cm3/scripts ./do-cm3-std.sh buildship If this is successful then move the new compiler to BINDIR: mv $CM3 INSTALL_DIR/bin/cm3 On Aug 8, 2007, at 5:50 AM, Antony Hosking wrote: > CVSROOT: /usr/cvs > Changes by: hosking at birch. 07/08/08 05:50:13 > > Modified files: > cm3/doc/reference/: arithmetic.html arrays.html conventions.html > for.html index.html m3.html m3index.html > numbers.html ordinal.html subtypes.html > typeops.html word-intf.html > cm3/m3-db/smalldb/src/: OSSupport.m3 > cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 FilePosix.m3 > SocketPosix.m3 > cm3/m3-libs/libm3/src/pickle/ver2/: ConvertPacking.m3 > cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3 > cm3/m3-libs/m3core/src/C/64BITS/: BasicCtypes.i3 > cm3/m3-libs/m3core/src/Csupport/Common/: hand.c > cm3/m3-libs/m3core/src/runtime/POSIX/: RTOS.m3 > cm3/m3-libs/m3core/src/runtime/common/: RTTipe.i3 RTTipe.m3 > cm3/m3-libs/m3core/src/thread/: m3makefile > cm3/m3-libs/m3core/src/unix/darwin-generic/: Umman.i3 Unix.i3 > Utypes.i3 > m3makefile > cm3/m3-libs/m3core/src/unix/freebsd-2/: Umman.i3 Unix.i3 > Utypes.i3 m3makefile > cm3/m3-libs/m3core/src/unix/freebsd-3/: Umman.i3 Unix.i3 > Utypes.i3 m3makefile > cm3/m3-libs/m3core/src/unix/freebsd-4/: Umman.i3 Unix.i3 > Utypes.i3 m3makefile > cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Umman.i3 Unix.i3 > Utypes.i3 m3makefile > cm3/m3-libs/m3core/src/word/: m3makefile > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > cm3/m3-sys/m3front/src/: m3makefile > cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3 > cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 Ceiling.m3 > Dec.m3 First.m3 Floatt.m3 > Floor.m3 Inc.m3 Last.m3 > Max.m3 New.m3 Number.m3 > Ord.m3 Round.m3 Subarray.m3 > Trunc.m3 Val.m3 > cm3/m3-sys/m3front/src/builtinTypes/: BuiltinTypes.m3 Int.m3 > m3makefile > cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3 > WordInsert.m3 WordModule.m3 > WordNot.m3 WordOr.m3 > WordRotate.m3 WordShift.m3 > WordXor.m3 > cm3/m3-sys/m3front/src/exprs/: AddExpr.m3 ArrayExpr.m3 > CastExpr.m3 CheckExpr.m3 > CompareExpr.m3 DivExpr.m3 > EqualExpr.m3 Expr.m3 ExprParse.m3 > InExpr.m3 IntegerExpr.i3 > IntegerExpr.m3 ModExpr.m3 > MultiplyExpr.m3 NegateExpr.m3 > ReelExpr.i3 ReelExpr.m3 > SetExpr.m3 SubscriptExpr.m3 > SubtractExpr.m3 > cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 M3Front.m3 > Marker.m3 Scanner.m3 TipeDesc.i3 > TipeDesc.m3 Token.i3 Token.m3 > cm3/m3-sys/m3front/src/stmts/: AssignStmt.m3 DebugStmt.m3 > ForStmt.m3 TryFinStmt.m3 > cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3 > OpenArrayType.m3 SubrangeType.m3 > Type.i3 Type.m3 > cm3/m3-sys/m3front/src/values/: Exceptionz.m3 Formal.m3 > Module.m3 Variable.m3 > cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.m3 > M3CG_Check.m3 M3CG_Rd.m3 M3CG_Wr.m3 > TFloat.i3 TFloat.m3 TInt.i3 TInt.m3 > TWord.i3 TWord.m3 Target.i3 Target.m3 > cm3/m3-sys/m3scanner/src/: M3Scanner.i3 M3Scanner.m3 > cm3/m3-sys/m3tools/src/: M3AST.i3 M3Builtin.m3 M3Const.m3 > M3Lexer.m3 M3Type.i3 M3Type.m3 > cm3/m3-tools/m3browser/src/: Main.m3 > Added files: > cm3/doc/reference/: m3logo.gif > cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3 > cm3/m3-sys/m3front/src/builtinLong/: LongAnd.i3 LongAnd.m3 > LongDivide.i3 LongDivide.m3 > LongExtract.i3 > LongExtract.m3 LongGE.i3 > LongGE.m3 LongGT.i3 > LongGT.m3 LongInsert.i3 > LongInsert.m3 LongLE.i3 > LongLE.m3 LongLT.i3 > LongLT.m3 LongMinus.i3 > LongMinus.m3 LongMod.i3 > LongMod.m3 LongModule.i3 > LongModule.m3 LongNot.i3 > LongNot.m3 LongOr.i3 > LongOr.m3 LongPlus.i3 > LongPlus.m3 LongRotate.i3 > LongRotate.m3 LongShift.i3 > LongShift.m3 LongTimes.i3 > LongTimes.m3 LongXor.i3 > LongXor.m3 > cm3/m3-sys/m3front/src/builtinTypes/: LInt.i3 LInt.m3 > > Log message: > Compiler and runtime extensions to support LONGINT type. > > Bootstrapping instructions: build and ship packages in the > following order > > m3middle > m3linker > m3front > m3quake > cm3 > > This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. > > Use this new compiler to build and ship the new system: > > export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 > cd cm3/scripts > ./do-cm3-std.sh buildship > > If this is successful then move the new compiler to BINDIR: > > mv $CM3 INSTALL_DIR/bin/cm3 From rodney at elego.de Wed Aug 8 22:56:34 2007 From: rodney at elego.de (Rodney M. Bates) Date: Wed, 8 Aug 2007 22:56:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070808205644.DBE1410D43CF@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/08/08 22:56:34 Added files: cm3/doc/reference/complete/: m3-defn-complete.html m3-defn-complete.ps m3-defn-complete.tex Log message: Initial checkin, prior to updates. The three files are not yet known to be consistent. From rodney at elego.de Thu Aug 9 04:15:59 2007 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 9 Aug 2007 4:15:59 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070809021559.3573D10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/08/09 04:15:59 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: m3-util.c Log message: Fix to display numeric escapes in CHAR and TEXT values in Modula-3 octal, instead of hex. From hosking at cs.purdue.edu Sat Aug 11 19:14:21 2007 From: hosking at cs.purdue.edu (Tony Hosking) Date: Sat, 11 Aug 2007 13:14:21 -0400 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: Message-ID: <078AEEB2-F545-43ED-B01D-2783D318C4F9@cs.purdue.edu> Did you rebuild the backend? I have built this on Darwin x86 and Linux x86 without problems. On Aug 11, 2007, at 1:06 PM, j k wrote: > I can build the compiler, but, youch, can't build m3core\long.m3: > > "..\src\word\Long.m3", line 11: Unknown type of size other than > dword in movOp > > The x86 back end needs work..I'll see if I can't just provide this > stuff in C and avoid understanding the backend much.. > > - Jay > > > From: hosking at cs.purdue.edu > > Date: Wed, 8 Aug 2007 08:39:34 -0400 > > To: hosking at cs.purdue.edu > > CC: m3devel at elegosoft.com; m3commit at elegosoft.com > > Subject: Re: [M3commit] CVS Update: cm3 > > > > Make sure to start with clean build directories and clean before > > building with the bootstrapped compiler... > > > > On Aug 8, 2007, at 8:31 AM, Tony Hosking wrote: > > > > > Amended bootstrap instructions: > > > > > > Compiler and runtime extensions to support LONGINT type. > > > > > > Bootstrapping instructions: build and ship packages in the > > > following order > > > > > > m3cc > > > m3middle > > > m3linker > > > m3front > > > m3quake > > > cm3 > > > > > > This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. > > > > > > Use this new compiler to build and ship the new system: > > > > > > export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 > > > cd cm3/scripts > > > > ./do-cm3-std.sh realclean > > > > > ./do-cm3-std.sh buildship > > > > > > If this is successful then move the new compiler to BINDIR: > > > > > > mv $CM3 INSTALL_DIR/bin/cm3 > > > > > > On Aug 8, 2007, at 5:50 AM, Antony Hosking wrote: > > > > > >> CVSROOT: /usr/cvs > > >> Changes by: hosking at birch. 07/08/08 05:50:13 > > >> > > >> Modified files: > > >> cm3/doc/reference/: arithmetic.html arrays.html conventions.html > > >> for.html index.html m3.html m3index.html > > >> numbers.html ordinal.html subtypes.html > > >> typeops.html word-intf.html > > >> cm3/m3-db/smalldb/src/: OSSupport.m3 > > >> cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 FilePosix.m3 > > >> SocketPosix.m3 > > >> cm3/m3-libs/libm3/src/pickle/ver2/: ConvertPacking.m3 > > >> cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3 > > >> cm3/m3-libs/m3core/src/C/64BITS/: BasicCtypes.i3 > > >> cm3/m3-libs/m3core/src/Csupport/Common/: hand.c > > >> cm3/m3-libs/m3core/src/runtime/POSIX/: RTOS.m3 > > >> cm3/m3-libs/m3core/src/runtime/common/: RTTipe.i3 RTTipe.m3 > > >> cm3/m3-libs/m3core/src/thread/: m3makefile > > >> cm3/m3-libs/m3core/src/unix/darwin-generic/: Umman.i3 Unix.i3 > > >> Utypes.i3 > > >> m3makefile > > >> cm3/m3-libs/m3core/src/unix/freebsd-2/: Umman.i3 Unix.i3 > > >> Utypes.i3 m3makefile > > >> cm3/m3-libs/m3core/src/unix/freebsd-3/: Umman.i3 Unix.i3 > > >> Utypes.i3 m3makefile > > >> cm3/m3-libs/m3core/src/unix/freebsd-4/: Umman.i3 Unix.i3 > > >> Utypes.i3 m3makefile > > >> cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Umman.i3 Unix.i3 > > >> Utypes.i3 m3makefile > > >> cm3/m3-libs/m3core/src/word/: m3makefile > > >> cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > >> cm3/m3-sys/m3front/src/: m3makefile > > >> cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3 > > >> cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 Ceiling.m3 > > >> Dec.m3 First.m3 Floatt.m3 > > >> Floor.m3 Inc.m3 Last.m3 > > >> Max.m3 New.m3 Number.m3 > > >> Ord.m3 Round.m3 Subarray.m3 > > >> Trunc.m3 Val.m3 > > >> cm3/m3-sys/m3front/src/builtinTypes/: BuiltinTypes.m3 Int.m3 > > >> m3makefile > > >> cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3 > > >> WordInsert.m3 WordModule.m3 > > >> WordNot.m3 WordOr.m3 > > >> WordRotate.m3 WordShift.m3 > > >> WordXor.m3 > > >> cm3/m3-sys/m3front/src/exprs/: AddExpr.m3 ArrayExpr.m3 > > >> CastExpr.m3 CheckExpr.m3 > > >> CompareExpr.m3 DivExpr.m3 > > >> EqualExpr.m3 Expr.m3 ExprParse.m3 > > >> InExpr.m3 IntegerExpr.i3 > > >> IntegerExpr.m3 ModExpr.m3 > > >> MultiplyExpr.m3 NegateExpr.m3 > > >> ReelExpr.i3 ReelExpr.m3 > > >> SetExpr.m3 SubscriptExpr.m3 > > >> SubtractExpr.m3 > > >> cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 M3Front.m3 > > >> Marker.m3 Scanner.m3 TipeDesc.i3 > > >> TipeDesc.m3 Token.i3 Token.m3 > > >> cm3/m3-sys/m3front/src/stmts/: AssignStmt.m3 DebugStmt.m3 > > >> ForStmt.m3 TryFinStmt.m3 > > >> cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3 > > >> OpenArrayType.m3 SubrangeType.m3 > > >> Type.i3 Type.m3 > > >> cm3/m3-sys/m3front/src/values/: Exceptionz.m3 Formal.m3 > > >> Module.m3 Variable.m3 > > >> cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.m3 > > >> M3CG_Check.m3 M3CG_Rd.m3 M3CG_Wr.m3 > > >> TFloat.i3 TFloat.m3 TInt.i3 TInt.m3 > > >> TWord.i3 TWord.m3 Target.i3 Target.m3 > > >> cm3/m3-sys/m3scanner/src/: M3Scanner.i3 M3Scanner.m3 > > >> cm3/m3-sys/m3tools/src/: M3AST.i3 M3Builtin.m3 M3Const.m3 > > >> M3Lexer.m3 M3Type.i3 M3Type.m3 > > >> cm3/m3-tools/m3browser/src/: Main.m3 > > >> Added files: > > >> cm3/doc/reference/: m3logo.gif > > >> cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3 > > >> cm3/m3-sys/m3front/src/builtinLong/: LongAnd.i3 LongAnd.m3 > > >> LongDivide.i3 LongDivide.m3 > > >> LongExtract.i3 > > >> LongExtract.m3 LongGE.i3 > > >> LongGE.m3 LongGT.i3 > > >> LongGT.m3 LongInsert.i3 > > >> LongInsert.m3 LongLE.i3 > > >> LongLE.m3 LongLT.i3 > > >> LongLT.m3 LongMinus.i3 > > >> LongMinus.m3 LongMod.i3 > > >> LongMod.m3 LongModule.i3 > > >> LongModule.m3 LongNot.i3 > > >> LongNot.m3 LongOr.i3 > > >> LongOr.m3 LongPlus.i3 > > >> LongPlus.m3 LongRotate.i3 > > >> LongRotate.m3 LongShift.i3 > > >> LongShift.m3 LongTimes.i3 > > >> LongTimes.m3 LongXor.i3 > > >> LongXor.m3 > > >> cm3/m3-sys/m3front/src/builtinTypes/: LInt.i3 LInt.m3 > > >> > > >> Log message: > > >> Compiler and runtime extensions to support LONGINT type. > > >> > > >> Bootstrapping instructions: build and ship packages in the > > >> following order > > >> > > >> m3middle > > >> m3linker > > >> m3front > > >> m3quake > > >> cm3 > > >> > > >> This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. > > >> > > >> Use this new compiler to build and ship the new system: > > >> > > >> export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 > > >> cd cm3/scripts > > >> ./do-cm3-std.sh buildship > > >> > > >> If this is successful then move the new compiler to BINDIR: > > >> > > >> mv $CM3 INSTALL_DIR/bin/cm3 > > > > > > > > Recharge--play some free games. Win cool prizes too! Play It! From hosking at elego.de Sat Aug 11 19:19:09 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 11 Aug 2007 19:19:09 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070811171909.737AD10D4342@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/11 19:19:09 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Fix quotes. From jayk123 at hotmail.com Sat Aug 11 19:06:57 2007 From: jayk123 at hotmail.com (j k) Date: Sat, 11 Aug 2007 17:06:57 +0000 Subject: [M3commit] CVS Update: cm3 Message-ID: I can build the compiler, but, youch, can't build m3core\long.m3: "..\src\word\Long.m3", line 11: Unknown type of size other than dword in movOp The x86 back end needs work..I'll see if I can't just provide this stuff in C and avoid understanding the backend much.. - Jay> From: hosking at cs.purdue.edu> Date: Wed, 8 Aug 2007 08:39:34 -0400> To: hosking at cs.purdue.edu> CC: m3devel at elegosoft.com; m3commit at elegosoft.com> Subject: Re: [M3commit] CVS Update: cm3> > Make sure to start with clean build directories and clean before > building with the bootstrapped compiler...> > On Aug 8, 2007, at 8:31 AM, Tony Hosking wrote:> > > Amended bootstrap instructions:> >> > Compiler and runtime extensions to support LONGINT type.> > > > Bootstrapping instructions: build and ship packages in the > > following order> > > > m3cc> > m3middle> > m3linker> > m3front> > m3quake> > cm3> > > > This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3.> > > > Use this new compiler to build and ship the new system:> > > > export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3> > cd cm3/scripts> > ./do-cm3-std.sh realclean> > > ./do-cm3-std.sh buildship> > > > If this is successful then move the new compiler to BINDIR:> > > > mv $CM3 INSTALL_DIR/bin/cm3> >> > On Aug 8, 2007, at 5:50 AM, Antony Hosking wrote:> >> >> CVSROOT: /usr/cvs> >> Changes by: hosking at birch. 07/08/08 05:50:13> >>> >> Modified files:> >> cm3/doc/reference/: arithmetic.html arrays.html conventions.html> >> for.html index.html m3.html m3index.html> >> numbers.html ordinal.html subtypes.html> >> typeops.html word-intf.html> >> cm3/m3-db/smalldb/src/: OSSupport.m3> >> cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 FilePosix.m3> >> SocketPosix.m3> >> cm3/m3-libs/libm3/src/pickle/ver2/: ConvertPacking.m3> >> cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3> >> cm3/m3-libs/m3core/src/C/64BITS/: BasicCtypes.i3> >> cm3/m3-libs/m3core/src/Csupport/Common/: hand.c> >> cm3/m3-libs/m3core/src/runtime/POSIX/: RTOS.m3> >> cm3/m3-libs/m3core/src/runtime/common/: RTTipe.i3 RTTipe.m3> >> cm3/m3-libs/m3core/src/thread/: m3makefile> >> cm3/m3-libs/m3core/src/unix/darwin-generic/: Umman.i3 Unix.i3> >> Utypes.i3> >> m3makefile> >> cm3/m3-libs/m3core/src/unix/freebsd-2/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/unix/freebsd-3/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/unix/freebsd-4/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/word/: m3makefile> >> cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c> >> cm3/m3-sys/m3front/src/: m3makefile> >> cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3> >> cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 Ceiling.m3> >> Dec.m3 First.m3 Floatt.m3> >> Floor.m3 Inc.m3 Last.m3> >> Max.m3 New.m3 Number.m3> >> Ord.m3 Round.m3 Subarray.m3> >> Trunc.m3 Val.m3> >> cm3/m3-sys/m3front/src/builtinTypes/: BuiltinTypes.m3 Int.m3> >> m3makefile> >> cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3> >> WordInsert.m3 WordModule.m3> >> WordNot.m3 WordOr.m3> >> WordRotate.m3 WordShift.m3> >> WordXor.m3> >> cm3/m3-sys/m3front/src/exprs/: AddExpr.m3 ArrayExpr.m3> >> CastExpr.m3 CheckExpr.m3> >> CompareExpr.m3 DivExpr.m3> >> EqualExpr.m3 Expr.m3 ExprParse.m3> >> InExpr.m3 IntegerExpr.i3> >> IntegerExpr.m3 ModExpr.m3> >> MultiplyExpr.m3 NegateExpr.m3> >> ReelExpr.i3 ReelExpr.m3> >> SetExpr.m3 SubscriptExpr.m3> >> SubtractExpr.m3> >> cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 M3Front.m3> >> Marker.m3 Scanner.m3 TipeDesc.i3> >> TipeDesc.m3 Token.i3 Token.m3> >> cm3/m3-sys/m3front/src/stmts/: AssignStmt.m3 DebugStmt.m3> >> ForStmt.m3 TryFinStmt.m3> >> cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3> >> OpenArrayType.m3 SubrangeType.m3> >> Type.i3 Type.m3> >> cm3/m3-sys/m3front/src/values/: Exceptionz.m3 Formal.m3> >> Module.m3 Variable.m3> >> cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.m3> >> M3CG_Check.m3 M3CG_Rd.m3 M3CG_Wr.m3> >> TFloat.i3 TFloat.m3 TInt.i3 TInt.m3> >> TWord.i3 TWord.m3 Target.i3 Target.m3> >> cm3/m3-sys/m3scanner/src/: M3Scanner.i3 M3Scanner.m3> >> cm3/m3-sys/m3tools/src/: M3AST.i3 M3Builtin.m3 M3Const.m3> >> M3Lexer.m3 M3Type.i3 M3Type.m3> >> cm3/m3-tools/m3browser/src/: Main.m3> >> Added files:> >> cm3/doc/reference/: m3logo.gif> >> cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3> >> cm3/m3-sys/m3front/src/builtinLong/: LongAnd.i3 LongAnd.m3> >> LongDivide.i3 LongDivide.m3> >> LongExtract.i3> >> LongExtract.m3 LongGE.i3> >> LongGE.m3 LongGT.i3> >> LongGT.m3 LongInsert.i3> >> LongInsert.m3 LongLE.i3> >> LongLE.m3 LongLT.i3> >> LongLT.m3 LongMinus.i3> >> LongMinus.m3 LongMod.i3> >> LongMod.m3 LongModule.i3> >> LongModule.m3 LongNot.i3> >> LongNot.m3 LongOr.i3> >> LongOr.m3 LongPlus.i3> >> LongPlus.m3 LongRotate.i3> >> LongRotate.m3 LongShift.i3> >> LongShift.m3 LongTimes.i3> >> LongTimes.m3 LongXor.i3> >> LongXor.m3> >> cm3/m3-sys/m3front/src/builtinTypes/: LInt.i3 LInt.m3> >>> >> Log message:> >> Compiler and runtime extensions to support LONGINT type.> >> > >> Bootstrapping instructions: build and ship packages in the > >> following order> >> > >> m3middle> >> m3linker> >> m3front> >> m3quake> >> cm3> >> > >> This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3.> >> > >> Use this new compiler to build and ship the new system:> >> > >> export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3> >> cd cm3/scripts> >> ./do-cm3-std.sh buildship> >> > >> If this is successful then move the new compiler to BINDIR:> >> > >> mv $CM3 INSTALL_DIR/bin/cm3> >> _________________________________________________________________ Recharge--play some free games. Win cool prizes too! http://club.live.com/home.aspx?icid=CLUB_wlmailtextlink -------------- next part -------------- An HTML attachment was scrubbed... URL: From hosking at elego.de Sat Aug 11 20:51:17 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 11 Aug 2007 20:51:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070811185117.81DAC10D4342@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/11 20:51:17 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: White-space changes. Indent and wrap lines. From hosking at elego.de Sat Aug 11 20:53:52 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 11 Aug 2007 20:53:52 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070811185352.4489E10D4342@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/11 20:53:52 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Space sentence endings, fix abbreviation periods. From hosking at elego.de Sat Aug 11 20:59:11 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 11 Aug 2007 20:59:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070811185914.87B8D10D4342@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/11 20:59:11 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Re-format paragraphs. From hosking at elego.de Sun Aug 12 05:03:50 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 5:03:50 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812030352.6086710D43A8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 05:03:50 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Format verbatims and align tables. From hosking at elego.de Sun Aug 12 05:34:24 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 5:34:24 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812033428.5E89C10D43A8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 05:34:24 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Let's use Times-Roman. Fix broken hboxes. From hosking at elego.de Sun Aug 12 05:39:11 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 5:39:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812033913.3C4CE10D43A8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 05:39:11 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Fix indent. From hosking at elego.de Sun Aug 12 06:29:00 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 6:29:00 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812042902.C602610D43A8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 06:29:00 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Tidier. From hosking at elego.de Sun Aug 12 06:42:50 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 6:42:50 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812044250.4DD4310D43A8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 06:42:50 Modified files: cm3/doc/reference/: numbers.html Log message: Tweaks. From hosking at elego.de Sun Aug 12 06:47:19 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 6:47:19 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812044719.1DBE110D4342@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 06:47:19 Modified files: cm3/doc/reference/: for.html Log message: Tweak. From hosking at elego.de Sun Aug 12 06:49:27 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 6:49:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812044927.2944F10D43B1@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 06:49:27 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Changes for LONGINT. From jkrell at elego.de Sun Aug 12 18:46:32 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 18:46:32 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812164632.1C3C310D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 18:46:32 Modified files: cm3/m3-lectern/buildlectern/src/: Cscale.c Log message: Make it valid C++ and fix warnings. From jkrell at elego.de Sun Aug 12 18:53:49 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 18:53:49 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812165349.BE9FF10D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 18:53:49 Modified files: cm3/m3-lectern/buildlectern/src/: Cscale.c Log message: gcc -Wall suggests braces on ambiguous else; assembly is the same either way. gcc -Wall points out undefined-nes due to use of *foo and *foo++ with no intervening "sequence pointe". Use two statements instead. From jkrell at elego.de Sun Aug 12 18:57:51 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 18:57:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812165751.1C4F110D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 18:57:51 Modified files: cm3/m3-libs/m3core/src/C/FreeBSD2/: CstdioC.c Log message: Remove gratuitious semicolons at global scope. From jkrell at elego.de Sun Aug 12 19:03:47 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 19:03:47 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812170347.6EB3610D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 19:03:47 Modified files: cm3/m3-libs/m3core/src/C/FreeBSD/: CstdioC.c cm3/m3-libs/m3core/src/C/FreeBSD3/: CstdioC.c cm3/m3-libs/m3core/src/C/FreeBSD4/: CstdioC.c cm3/m3-libs/m3core/src/C/I386_DARWIN/: CstdioC.c cm3/m3-libs/m3core/src/C/NetBSD2_i386/: CstdioC.c cm3/m3-libs/m3core/src/C/PPC_DARWIN/: CstdioC.c Log message: remove gratuious semicolons, mostly at global scope From jkrell at elego.de Sun Aug 12 19:16:10 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 19:16:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812171610.5483A10D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 19:16:10 Modified files: cm3/m3-win/: vcredist.txt Log message: add link to service pack 1 (which you can easily find searchig the web anyway) From jkrell at elego.de Sun Aug 12 19:41:21 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 19:41:21 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812174121.94FAE10D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 19:41:21 Modified files: cm3/m3-ui/ui/src/winvbt/: WinTrestle.m3 Log message: fix it to build -- RTHeapDep.VM is always FALSE, and no longer avialable From jkrell at elego.de Sun Aug 12 20:17:53 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 20:17:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812181753.57DC410D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 20:17:53 Modified files: cm3/scripts/win/: make-dist.cmd upgrade.cmd Log message: Start with the installed cm3. From jkrell at elego.de Sun Aug 12 20:21:55 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 20:21:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812182155.ED0D810D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 20:21:55 Modified files: cm3/scripts/win/: make-dist.cmd upgrade.cmd Log message: oops - clearing non set variable is an error and makes us do nothing, fast From hosking at elego.de Sun Aug 12 20:43:53 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 20:43:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812184353.53B0A10D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 20:43:53 Modified files: cm3/m3-ui/ui/src/winvbt/: WinTrestle.m3 Log message: Reverse sense of StarTrek parameter, as for X. From hosking at elego.de Sun Aug 12 20:45:44 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 20:45:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812184544.5BC9210D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 20:45:44 Modified files: cm3/m3-ui/ui/src/winvbt/: WinTrestle.m3 Log message: Change comment to match StarTrek parameter meaning. From hosking at elego.de Sun Aug 12 20:46:38 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 20:46:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812184638.60A7910D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 20:46:38 Modified files: cm3/m3-ui/ui/src/xvbt/: NTClientF.m3 Log message: Reverse sense of StarTrek parameter, as for X. From jkrell at elego.de Sun Aug 12 20:57:44 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 20:57:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812185744.726D910D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 20:57:44 Modified files: cm3/scripts/win/: make-dist.cmd Log message: don't make the runtime in the first pass; that doesn't work instead copy it from old package store use the current import .libs -- necessary when bootstrapping from 5.2.6 remove redundant comment From jkrell at elego.de Sun Aug 12 20:59:56 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 20:59:56 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812185956.7869A10D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 20:59:56 Modified files: cm3/scripts/win/: backup-pkgs.cmd def-std-pkgs.cmd do-cm3-base.cmd do-cm3-core.cmd Log message: remove dll2lib, Tony asked about it -- it is tied to the old GC From jkrell at elego.de Sun Aug 12 21:02:06 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 21:02:06 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812190206.D5D5C10D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 21:02:06 Modified files: cm3/scripts/win/: sysinfo.cmd Log message: update version to d5.5.0, tracking scripts/sysinfo.sh From rodney at elego.de Mon Aug 13 16:37:56 2007 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 13 Aug 2007 16:37:56 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813143756.A48D610D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/08/13 16:37:56 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: ada-lex.l Log message: No change to the contents of these files. This is an attempt to get the time stampof ada-lex.c to be later than that of ada-lex.l. This will mean m3gdb will build without requiring flex to be installed. From rodney at elego.de Mon Aug 13 16:39:15 2007 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 13 Aug 2007 16:39:15 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813143915.71BE510D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/08/13 16:39:15 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: ada-lex.c Log message: No change to the contents of these files. This is an attempt to get the time stampof ada-lex.c to be later than that of ada-lex.l. This will mean m3gdb will build without requiring flex to be installed. From hosking at elego.de Mon Aug 13 21:49:07 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 13 Aug 2007 21:49:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813194908.98E4710D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/13 21:49:07 Modified files: cm3/m3-libs/libm3/src/types/: m3makefile cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3 cm3/m3-libs/m3core/src/runtime/common/: RTBuiltin.mx cm3/m3-sys/m3front/src/builtinLong/: LongAnd.m3 LongExtract.m3 LongInsert.m3 LongMod.m3 LongRotate.m3 LongShift.m3 cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 Dec.m3 First.m3 Inc.m3 IsType.m3 Last.m3 Number.m3 Ord.m3 Subarray.m3 Val.m3 cm3/m3-sys/m3front/src/builtinTypes/: Bool.m3 Card.m3 Null.m3 cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3 WordInsert.m3 WordMod.m3 WordRotate.m3 WordShift.m3 cm3/m3-sys/m3front/src/exprs/: AddressExpr.m3 AndExpr.m3 ArrayExpr.m3 CheckExpr.m3 CompareExpr.m3 DivExpr.m3 EnumExpr.m3 EqualExpr.m3 Expr.m3 ExprParse.m3 InExpr.m3 IntegerExpr.m3 ModExpr.m3 NamedExpr.m3 NilChkExpr.m3 NotExpr.m3 OrExpr.m3 SetExpr.m3 SubscriptExpr.m3 cm3/m3-sys/m3front/src/misc/: CG.m3 Coverage.m3 Scanner.m3 TipeDesc.m3 cm3/m3-sys/m3front/src/stmts/: AssertStmt.m3 CaseStmt.m3 DebugStmt.m3 ForStmt.m3 cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3 ObjectType.m3 OpenArrayType.m3 SubrangeType.m3 Type.m3 cm3/m3-sys/m3linker/src/: MxGen.m3 cm3/m3-sys/m3middle/src/: M3CG_BinRd.m3 M3CG_BinWr.m3 M3CG_Rd.m3 TInt.i3 TInt.m3 TWord.i3 TWord.m3 Target.i3 Target.m3 cm3/m3-sys/m3tools/src/: M3Builtin.m3 M3Const.m3 M3Type.m3 cm3/m3-tools/m3browser/src/: Main.m3 Added files: cm3/m3-libs/libm3/src/types/: Int64.i3 Int64.m3 Longint.i3 Longint.m3 Log message: Fix problems with LONGINT subranges. Tidy up TInt usage. Add LONGINT and its UID to RTBuiltin.mx and m3browser/src/Main.m3. From hosking at elego.de Mon Aug 13 22:30:04 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 13 Aug 2007 22:30:04 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813203006.D7C9510D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/13 22:30:04 Modified files: cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3 cm3/m3-sys/m3front/src/misc/: M3Front.m3 Log message: LongModule needs treatment for builtins the same as WordModule. m3browser now works properly for LONGINT. From hosking at elego.de Tue Aug 14 01:01:38 2007 From: hosking at elego.de (Antony Hosking) Date: Tue, 14 Aug 2007 1:01:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813230139.0653910D43FC@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/14 01:01:38 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTBuiltin.mx Log message: Adjust count to match addition of LONGINT. From hosking at elego.de Tue Aug 14 01:02:30 2007 From: hosking at elego.de (Antony Hosking) Date: Tue, 14 Aug 2007 1:02:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813230231.151F810D43FC@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/14 01:02:30 Modified files: cm3/m3-sys/m3front/src/types/: Type.m3 Log message: Put LInt in TypeTbl along with other builtin types. From hosking at elego.de Tue Aug 14 01:47:10 2007 From: hosking at elego.de (Antony Hosking) Date: Tue, 14 Aug 2007 1:47:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813234710.F411B10D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/14 01:47:10 Modified files: cm3/m3-tools/m3markup/src/: M3MarkUp.m3 cm3/m3-tools/m3scan/src/: M3Scanner.m3 M3Token.i3 M3Token.m3 Log message: Fix m3scan and m3markup to handle LONGINT. m3browser *really* works now... :-) From hosking at elego.de Wed Aug 15 17:20:56 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 15 Aug 2007 17:20:56 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070815152101.4F31710D4408@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/15 17:20:56 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Fix scan_target_int to properly scan 64-bit integers on 32-bit hosts when HOST_WIDE_INT == long long. This fixes the problem with LONGINT on PPC_DARWIN. "do-cm3-std.sh buildship" now succeeds with LONGINT for all of I386_DARWIN, PPC_DARWIN, LINUXLIBC6. Testing on SOLgnu next. From hosking at elego.de Wed Aug 15 19:39:55 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 15 Aug 2007 19:39:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070815173955.2649B10D440A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/15 19:39:55 Modified files: cm3/m3-libs/m3core/src/word/: m3makefile Added files: cm3/m3-libs/m3core/src/word/: Long.i3 Removed files: cm3/m3-libs/m3core/src/word/POSIX/: Long.i3 Long.m3 m3makefile cm3/m3-libs/m3core/src/word/WIN32/: Long.i3 LongC.c m3makefile Log message: Resurrect Long.i3. Backend compilers support this. m3back needs fixing to handle 64-bit LONGINT. From hosking at elego.de Wed Aug 15 19:41:20 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 15 Aug 2007 19:41:20 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070815174125.982E310D440A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/15 19:41:20 Added files: cm3/m3-libs/m3core/src/word/: Long.m3 Log message: Resurrect Long.i3. Backend compilers support this. m3back needs fixing to handle 64-bit LONGINT. From hosking at elego.de Wed Aug 15 21:52:48 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 15 Aug 2007 21:52:48 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070815195248.AC8FD10D441A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/15 21:52:48 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Problems with pthread_cond_timedwait on SMP. Use nanowait instead. From hosking at elego.de Thu Aug 16 18:53:50 2007 From: hosking at elego.de (Antony Hosking) Date: Thu, 16 Aug 2007 18:53:50 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070816165350.D234110D43FC@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/16 18:53:50 Modified files: cm3/m3-sys/m3middle/src/: Target.m3 Log message: Make Longint/Longword to be 32 bits on NT386 so Jay can build. From hosking at elego.de Sat Aug 18 23:57:59 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 18 Aug 2007 23:57:59 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070818215759.8BC4410D41BA@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/18 23:57:59 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Add debugging support. Drain semaphore on receipt of signals. From hosking at elego.de Sun Aug 19 21:33:18 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 19 Aug 2007 21:33:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070819193318.5FCDE10D433D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/19 21:33:18 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Cosmetic changes. From hosking at elego.de Sun Aug 19 22:02:18 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 19 Aug 2007 22:02:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070819200218.3F8B910D433D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/19 22:02:18 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Cosmetic changes. From hosking at elego.de Mon Aug 20 00:23:57 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 0:23:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070819222358.27D0E10D4338@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 00:23:57 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: pthread_t is not always an ADDRESS. From hosking at elego.de Mon Aug 20 16:17:13 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:17:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820141713.C156510D4364@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:17:13 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Solaris thr_getstate is unreliable (when did this happen??) for threads blocking in pthread_cond_wait and nanosleep. Threads entering blocking calls must deposit a reliable stack pointer into their activation record before blocking, and clear it afterwards, to signal to the stopping thread that it should not rely on GetState. mentor now runs again on Solaris. From hosking at elego.de Mon Aug 20 16:18:12 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:18:12 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820141812.5592C10D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:18:12 Modified files: cm3/m3-libs/m3core/src/runtime/SOLgnu/: RTMachine.m3 Log message: Solaris thr_getstate is unreliable (when did this happen??) for threads blocking in pthread_cond_wait and nanosleep. Threads entering blocking calls must deposit a reliable stack pointer into their activation record before blocking, and clear it afterwards, to signal to the stopping thread that it should not rely on GetState. mentor now runs again on Solaris. From hosking at elego.de Mon Aug 20 16:18:49 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:18:49 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820141849.6906910D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:18:49 Modified files: cm3/m3-libs/m3core/src/runtime/SOLgnu/: RTMachine.i3 Log message: Solaris thr_getstate is unreliable (when did this happen??) for threads blocking in pthread_cond_wait and nanosleep. Threads entering blocking calls must deposit a reliable stack pointer into their activation record before blocking, and clear it afterwards, to signal to the stopping thread that it should not rely on GetState. mentor now runs again on Solaris. From hosking at elego.de Mon Aug 20 16:21:15 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:21:15 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820142115.D376210D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:21:15 Modified files: cm3/m3-libs/m3core/src/runtime/SOLgnu/: m3makefile Log message: Use RTMachine__SaveRegsInStack instead of RTStack__Flush. From hosking at elego.de Mon Aug 20 16:21:28 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:21:28 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820142128.7304F10D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:21:28 Modified files: cm3/m3-libs/m3core/src/runtime/SOLgnu/: RTStackC.c Log message: Use RTMachine__SaveRegsInStack instead of RTStack__Flush. From hosking at elego.de Mon Aug 20 16:23:30 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:23:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820142330.3120710D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:23:30 Modified files: cm3/m3-libs/m3core/src/runtime/SOLsun/: RTStackC.c Log message: Bring into sync with SOLgnu. From hosking at elego.de Mon Aug 20 16:24:38 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:24:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820142438.DC01810D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:24:38 Modified files: cm3/m3-libs/m3core/src/runtime/SOLsun/: RTMachine.i3 Log message: Bring into sync with SOLgnu. From hosking at elego.de Mon Aug 20 16:25:18 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:25:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820142518.E0B3D10D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:25:18 Modified files: cm3/m3-libs/m3core/src/runtime/SOLsun/: RTMachine.m3 Log message: Bring into sync with SOLgnu. From hosking at elego.de Mon Aug 20 16:25:44 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:25:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820142544.61E4110D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:25:44 Modified files: cm3/m3-libs/m3core/src/runtime/SOLsun/: m3makefile Log message: Bring into sync with SOLgnu. From hosking at elego.de Mon Aug 20 16:38:05 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:38:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820143805.B008710D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:38:05 Modified files: cm3/m3-sys/m3middle/src/: Target.i3 Log message: Change comment to avoid "'" so that M3 syntax highlighting in emacs does not get confused. From hosking at elego.de Mon Aug 20 16:42:34 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:42:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820144234.C19F010D4308@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:42:34 Modified files: cm3/m3-libs/m3core/src/runtime/I386_DARWIN/: RTMachine.i3 RTThreadC.c m3makefile cm3/m3-libs/m3core/src/runtime/LINUXLIBC6/: RTMachine.i3 cm3/m3-libs/m3core/src/runtime/PPC_DARWIN/: RTMachine.i3 RTThreadC.c m3makefile Added files: cm3/m3-libs/m3core/src/runtime/I386_DARWIN/: RTMachineC.c cm3/m3-libs/m3core/src/runtime/PPC_DARWIN/: RTMachineC.c Log message: Sync RTMachine.GetState declarations with changes made for Solaris. Move RTMachine functionality from RTThreadC.c into separate RTMachineC.c. From hosking at elego.de Mon Aug 20 21:40:21 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 21:40:21 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820194021.0556110D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 21:40:20 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Get rid of alertable field. Alerted waiters can dequeue themselves. From hosking at elego.de Tue Aug 21 01:32:55 2007 From: hosking at elego.de (Antony Hosking) Date: Tue, 21 Aug 2007 1:32:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820233255.8963810D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/21 01:32:55 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Slight tidy-up of scan_float, but doesn't fix problem with building float constants on AMD64 unless we compile with "-m32". From rodney at elego.de Sun Aug 26 02:05:09 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sun, 26 Aug 2007 2:05:09 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826000509.EDF2510D4435@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/08/26 02:05:09 Modified files: cm3/m3-sys/m3cc/gcc/gcc/: dbxout.c cm3/m3-sys/m3gdb/gdb/gdb/: m3-eval.c m3-lang.c Log message: m3gdb function calls had lost the ability to display the result of a function call. In particular, "print Thread.Self()" now works again. To get the benefit of this, you have to rebuild cm3, then use it to rebuild m3core (or whatever contains functions you would like to call.) 1) Forward patch a change to dbxout.c that never made it from the 3.4.5-to the 4.1.1-based code generator. This gives m3gdb necessary information about blocks, so it can find local variables (which, oddly, is how it finds if a procedure is a function and if so, its result type.) 2) Fix a regression in m3gdb, no longer looking in the outermost block of a function, for the function result pseudo-variable. This affected recent-cm3-compiled functions with "large" function results. From jkrell at elego.de Sun Aug 26 12:13:17 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:13:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826101317.1959810D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:13:17 Modified files: cm3/scripts/win/: make-dist.cmd Log message: better error reporting and fix an error in early stages mklib.pdb does not exist, ok From jkrell at elego.de Sun Aug 26 12:25:05 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:25:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826102505.486A410D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:25:05 Modified files: cm3/scripts/win/: make-dist.cmd pkgmap.cmd Log message: tweak error reporting to give more context note that the errors appear in a backwards stack sort of way From jkrell at elego.de Sun Aug 26 12:29:33 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:29:33 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826102933.1E23B10D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:29:33 Modified files: cm3/scripts/win/: make-dist.cmd Log message: butt coverage regarding abuse of %TEMP% From jkrell at elego.de Sun Aug 26 12:31:13 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:31:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826103114.64D0A10D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:31:13 Modified files: cm3/scripts/win/: make-dist.cmd Log message: slightly terser butt coverage From jkrell at elego.de Sun Aug 26 12:35:52 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:35:52 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826103553.CF81E10D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:35:52 Modified files: cm3/scripts/win/: make-dist.cmd Log message: beware cmd wackiness -- cmd does not like parens in the body of an if, thereby making the whole if-paren feature largely broken.. From jkrell at elego.de Sun Aug 26 12:43:41 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:43:41 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826104341.06A5010D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:43:41 Modified files: cm3/scripts/win/: pkgmap.cmd Log message: more context to peel the onion when reproducing errors From jkrell at elego.de Sun Aug 26 12:44:17 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:44:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826104417.23AAF10D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:44:17 Modified files: cm3/scripts/win/: clearenv.cmd Log message: cleanup mess made by make-dist From jkrell at elego.de Sun Aug 26 13:08:11 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 13:08:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826110811.F256710D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 13:08:11 Modified files: cm3/m3-sys/m3back/src/: Codex86.m3 Log message: fix it to compile; unknown if this is correct From jkrell at elego.de Sun Aug 26 13:43:01 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 13:43:01 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826114301.54E3710D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 13:43:01 Modified files: cm3/m3-libs/libm3/src/types/: Int64.i3 Log message: Fix it to compile for Win32's temporary 32 bit Int64. Is this correct? I think so. From jkrell at elego.de Sun Aug 26 13:44:42 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 13:44:42 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826114442.86B8010D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 13:44:42 Modified files: cm3/m3-libs/libm3/src/types/: Int32.i3 Log message: commented out possibility that is consistent with Int64.i3; is it correct? Not sure -- is INTEGER always 32 bits or is it 64 bits on some platforms? Does the compiler compute these values correctly? These are not difficult to answer questions.. From jkrell at elego.de Sun Aug 26 13:59:50 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 13:59:50 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826115952.2103F10D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 13:59:50 Modified files: cm3/m3-libs/libm3/src/types/: Int32.i3 Log message: remove just added comment, ALPHA_OSF target has 64 bit integers.. I still think this is all of unclear goodness vs. other models.. From jayk123 at hotmail.com Sun Aug 26 14:08:59 2007 From: jayk123 at hotmail.com (j k) Date: Sun, 26 Aug 2007 12:08:59 +0000 Subject: [M3commit] CVS Update: cm3 (64 bit integers...) Message-ID: Here is the change:< TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. 16_7fffffffffffffffL ];> (*TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. 16_7fffffffffffffffL ];*)> TYPE T = BITS BITSIZE(LONGINT) FOR [ FIRST(LONGINT) .. LAST(LONGINT) ];Otherwise you get a compile error when the constants overflow at compile time.I still think all this stuff is a little wierd. Can we write off ALPHA_OSF, assert that INTEGER is 32 bits, and introduce a new type that is the same size as a pointer?Again I think the types you want are: INT8, INT16, INT32, INT64 -- signed types with exact sizes, the same on all platforms (INT64 yet missing on Win32) UINT8, UINT16, UINT32, UINT64 -- unsigned types with exact sizes, the same on all platforms (UINT64 yet missing on Win32) SIZE_T, ?SSIZE_T? or ?PTRDIFF_T?-- unsigned and signed types for storing addresses, or sizes of arrays, or array indices, or the differences thereof, PERHAPS guaranteed to be 32 bits or 64 bits INTEGER -- same as SSIZE_T ?or? INT32?? What's the pickle story? Are pickles interchangable beteen Alpha and non-Alpha? Should probably be equiv to SSIZE_T. That's what Alpha has. LONGINT -- same as INT64 - Jay> Date: Sun, 26 Aug 2007 13:43:01 +0000> To: m3commit at elegosoft.com> From: jkrell at elego.de> Subject: [M3commit] CVS Update: cm3> > CVSROOT: /usr/cvs> Changes by: jkrell at birch. 07/08/26 13:43:01> > Modified files:> cm3/m3-libs/libm3/src/types/: Int64.i3 > > Log message:> Fix it to compile for Win32's temporary 32 bit Int64.> Is this correct? I think so.> _________________________________________________________________ Messenger Caf? ? open for fun 24/7. Hot games, cool activities served daily. Visit now. http://cafemessenger.com?ocid=TXT_TAGLM_AugWLtagline -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Sun Aug 26 14:10:37 2007 From: jayk123 at hotmail.com (j k) Date: Sun, 26 Aug 2007 12:10:37 +0000 Subject: [M3commit] CVS Update: cm3 Message-ID: before, I think: t.parent.init_int(abscall.loc, TargetInt.Zero, Type.Int32);doesn't compile.after: t.parent.init_int(abscall.loc, TargetInt.Zero[Target.Pre.Integer], Type.Int32);right? - Jay> Date: Sun, 26 Aug 2007 13:08:11 +0000> To: m3commit at elegosoft.com> From: jkrell at elego.de> Subject: [M3commit] CVS Update: cm3> > CVSROOT: /usr/cvs> Changes by: jkrell at birch. 07/08/26 13:08:11> > Modified files:> cm3/m3-sys/m3back/src/: Codex86.m3 > > Log message:> fix it to compile; unknown if this is correct> _________________________________________________________________ See what you?re getting into?before you go there http://newlivehotmail.com/?ocid=TXT_TAGHM_migration_HM_viral_preview_0507 -------------- next part -------------- An HTML attachment was scrubbed... URL: From hosking at cs.purdue.edu Sun Aug 26 17:28:49 2007 From: hosking at cs.purdue.edu (Tony Hosking) Date: Sun, 26 Aug 2007 11:28:49 -0400 Subject: [M3commit] CVS Update: cm3 (64 bit integers...) In-Reply-To: References: Message-ID: On Aug 26, 2007, at 8:08 AM, j k wrote: > Here is the change: > > < TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. > 16_7fffffffffffffffL ]; > > > (*TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. > 16_7fffffffffffffffL ];*) > > TYPE T = BITS BITSIZE(LONGINT) FOR [ FIRST(LONGINT) .. LAST > (LONGINT) ]; This should be OK. > Otherwise you get a compile error when the constants overflow at > compile time. You only get the compiler error for NT386, for which LONGINT is 32- bits because the non-gcc backend can handle only 32-bit integers. What we really need is for NT386 to use a back-end that is capable of 64 bits. NT386GNU may be the easiest route to this. > I still think all this stuff is a little wierd. Can we write off > ALPHA_OSF, assert that INTEGER is 32 bits, and introduce a new type > that is the same size as a pointer? No way. INTEGER is intended to be abstract -- as defined in the language spec. > Again I think the types you want are: > INT8, INT16, INT32, INT64 -- signed types with exact sizes, the > same on all platforms (INT64 yet missing on Win32) > UINT8, UINT16, UINT32, UINT64 -- unsigned types with exact > sizes, the same on all platforms (UINT64 yet missing on Win32) > SIZE_T, ?SSIZE_T? or ?PTRDIFF_T?-- unsigned and signed types for > storing addresses, or sizes of arrays, or array indices, or the > differences thereof, PERHAPS guaranteed to be 32 bits or 64 bits > INTEGER -- same as SSIZE_T ?or? INT32?? > What's the pickle story? Are pickles interchangable beteen > Alpha and non-Alpha? > Should probably be equiv to SSIZE_T. That's what Alpha has. > LONGINT -- same as INT64 This leads us into the swamp, full of nightmares and dragons. > > - Jay > > > > Date: Sun, 26 Aug 2007 13:43:01 +0000 > > To: m3commit at elegosoft.com > > From: jkrell at elego.de > > Subject: [M3commit] CVS Update: cm3 > > > > CVSROOT: /usr/cvs > > Changes by: jkrell at birch. 07/08/26 13:43:01 > > > > Modified files: > > cm3/m3-libs/libm3/src/types/: Int64.i3 > > > > Log message: > > Fix it to compile for Win32's temporary 32 bit Int64. > > Is this correct? I think so. > > > > Messenger Caf? ? open for fun 24/7. Hot games, cool activities > served daily. Visit now. From hosking at cs.purdue.edu Sun Aug 26 17:29:21 2007 From: hosking at cs.purdue.edu (Tony Hosking) Date: Sun, 26 Aug 2007 11:29:21 -0400 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20070826110811.F256710D4363@birch.elegosoft.com> References: <20070826110811.F256710D4363@birch.elegosoft.com> Message-ID: <67072DC5-83FA-430D-A3B6-A14F96AC7DDD@cs.purdue.edu> Why did this not compile? On Aug 26, 2007, at 1:08 PM, Jay Krell wrote: > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 07/08/26 13:08:11 > > Modified files: > cm3/m3-sys/m3back/src/: Codex86.m3 > > Log message: > fix it to compile; unknown if this is correct From hosking at elego.de Sun Aug 26 17:36:02 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 26 Aug 2007 17:36:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826153602.7C57710D442D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/26 17:36:02 Modified files: cm3/m3-libs/libm3/src/types/: Int64.i3 Log message: Revert Int64 and change m3makefile so it does not get compiled on NT386 target which uses the non-gcc backend that can't handle 64 bits yet. From hosking at elego.de Sun Aug 26 17:36:14 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 26 Aug 2007 17:36:14 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826153615.3EE7210D442D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/26 17:36:14 Modified files: cm3/m3-libs/libm3/src/types/: m3makefile Log message: Revert Int64 and change m3makefile so it does not get compiled on NT386 target which uses the non-gcc backend that can't handle 64 bits yet. From hosking at elego.de Sun Aug 26 23:34:25 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 26 Aug 2007 23:34:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826213428.93A1010D442D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/26 23:34:25 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTAllocator.m3 RTCollector.m3 RTHeapRep.i3 cm3/m3-libs/m3core/src/thread/POSIX/: ThreadPosix.m3 cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadF.i3 ThreadPThread.m3 cm3/m3-libs/m3core/src/thread/WIN32/: ThreadWin32.m3 Log message: Switch to using generic "heapState" field in thread in preparation for additional state. From jayk123 at hotmail.com Mon Aug 27 03:26:44 2007 From: jayk123 at hotmail.com (j k) Date: Mon, 27 Aug 2007 01:26:44 +0000 Subject: [M3commit] CVS Update: cm3 (64 bit integers...) Message-ID: I think fixing NT386 should be easy enough given just a /bit/more time.I've been poking through it a bit.. > No way. INTEGER is intended to be abstract -- as defined in the > language spec.I'll have to read it to see what characteristics are guaranteed. Assuming you can have "very large" arrays, approaching the address space, or at least half of it, you are generally stuck with either INTEGER being the size of a pointer, or some "complicated" representation, like with varying precision, or heck even floating point.> This leads us into the swamp, full of nightmares and dragons. I really tend to think "my way" is the clear simple way. (Not "my way", but the way of a LOT of code, some of it very high quality, some of it not). Yeah I am colored by "where I live", in the swamp perhaps. It all seems to work quite well. Granted there is a need sometimes for floating point and very high precision, but the types I list, plus bit fields of any size 1 to 64, satisfy nearly all needs very well and very clearly. You do have to declare that assigning a larger precision integer to a smaller precision integer is a checked operation that can fail. Or some way to turn on/off the checks, though, really.. if you look at the "runtime checks" that Visual C++ offers, if you really want silent truncation, you can & with the appropriate value, e.g. UINT32 b; UINT16 a = (b & 0xffff) will not fail. There is the matter of assuming two's complement or not. Do people still work under the notion that there might be one's complement or arbitrary other representations of fixed small precision integers? Again I'll have to read the spec to see what abstraction INTEGER provides. > You only get the compiler error for NT386, for which LONGINT is 32- Understood. - Jay > From: hosking at cs.purdue.edu> Date: Sun, 26 Aug 2007 11:28:49 -0400> To: jay.krell at cornell.edu> CC: m3commit at elegosoft.com> Subject: Re: [M3commit] CVS Update: cm3 (64 bit integers...)> > > On Aug 26, 2007, at 8:08 AM, j k wrote:> > > Here is the change:> >> > < TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. > > 16_7fffffffffffffffL ];> >> > > (*TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. > > 16_7fffffffffffffffL ];*)> > > TYPE T = BITS BITSIZE(LONGINT) FOR [ FIRST(LONGINT) .. LAST > > (LONGINT) ];> > This should be OK.> > > Otherwise you get a compile error when the constants overflow at > > compile time.> > You only get the compiler error for NT386, for which LONGINT is 32- > bits because the non-gcc backend can handle only 32-bit integers. > What we really need is for NT386 to use a back-end that is capable of > 64 bits. NT386GNU may be the easiest route to this.> > > I still think all this stuff is a little wierd. Can we write off > > ALPHA_OSF, assert that INTEGER is 32 bits, and introduce a new type > > that is the same size as a pointer?> > No way. INTEGER is intended to be abstract -- as defined in the > language spec.> > > Again I think the types you want are:> > INT8, INT16, INT32, INT64 -- signed types with exact sizes, the > > same on all platforms (INT64 yet missing on Win32)> > UINT8, UINT16, UINT32, UINT64 -- unsigned types with exact > > sizes, the same on all platforms (UINT64 yet missing on Win32)> > SIZE_T, ?SSIZE_T? or ?PTRDIFF_T?-- unsigned and signed types for > > storing addresses, or sizes of arrays, or array indices, or the > > differences thereof, PERHAPS guaranteed to be 32 bits or 64 bits> > INTEGER -- same as SSIZE_T ?or? INT32??> > What's the pickle story? Are pickles interchangable beteen > > Alpha and non-Alpha?> > Should probably be equiv to SSIZE_T. That's what Alpha has.> > LONGINT -- same as INT64> > This leads us into the swamp, full of nightmares and dragons.> > >> > - Jay> >> >> > > Date: Sun, 26 Aug 2007 13:43:01 +0000> > > To: m3commit at elegosoft.com> > > From: jkrell at elego.de> > > Subject: [M3commit] CVS Update: cm3> > >> > > CVSROOT: /usr/cvs> > > Changes by: jkrell at birch. 07/08/26 13:43:01> > >> > > Modified files:> > > cm3/m3-libs/libm3/src/types/: Int64.i3> > >> > > Log message:> > > Fix it to compile for Win32's temporary 32 bit Int64.> > > Is this correct? I think so.> > >> >> > Messenger Caf? ? open for fun 24/7. Hot games, cool activities > > served daily. Visit now.> _________________________________________________________________ Recharge--play some free games. Win cool prizes too! http://club.live.com/home.aspx?icid=CLUB_wlmailtextlink -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Mon Aug 27 03:27:27 2007 From: jayk123 at hotmail.com (j k) Date: Mon, 27 Aug 2007 01:27:27 +0000 Subject: [M3commit] CVS Update: cm3 Message-ID: Like..it was an array instead of a value, something like that. - Jay > From: hosking at cs.purdue.edu> Date: Sun, 26 Aug 2007 11:29:21 -0400> To: jkrell at elego.de> CC: m3commit at elegosoft.com> Subject: Re: [M3commit] CVS Update: cm3> > Why did this not compile?> > On Aug 26, 2007, at 1:08 PM, Jay Krell wrote:> > > CVSROOT: /usr/cvs> > Changes by: jkrell at birch. 07/08/26 13:08:11> >> > Modified files:> > cm3/m3-sys/m3back/src/: Codex86.m3> >> > Log message:> > fix it to compile; unknown if this is correct> _________________________________________________________________ See what you?re getting into?before you go there http://newlivehotmail.com/?ocid=TXT_TAGHM_migration_HM_viral_preview_0507 -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Sat Aug 11 19:19:24 2007 From: jayk123 at hotmail.com (j k) Date: Sat, 11 Aug 2007 17:19:24 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: I can build the compiler, but, youch, can't build m3core\long.m3: "..\src\word\Long.m3", line 11: Unknown type of size other than dword in movOp The x86 back end needs work..I'll see if I can't just provide this stuff in C and avoid understanding the backend much.. - Jay> From: hosking at cs.purdue.edu> Date: Wed, 8 Aug 2007 08:39:34 -0400> To: hosking at cs.purdue.edu> CC: m3devel at elegosoft.com; m3commit at elegosoft.com> Subject: Re: [M3commit] CVS Update: cm3> > Make sure to start with clean build directories and clean before > building with the bootstrapped compiler...> > On Aug 8, 2007, at 8:31 AM, Tony Hosking wrote:> > > Amended bootstrap instructions:> >> > Compiler and runtime extensions to support LONGINT type.> > > > Bootstrapping instructions: build and ship packages in the > > following order> > > > m3cc> > m3middle> > m3linker> > m3front> > m3quake> > cm3> > > > This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3.> > > > Use this new compiler to build and ship the new system:> > > > export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3> > cd cm3/scripts> > ./do-cm3-std.sh realclean> > > ./do-cm3-std.sh buildship> > > > If this is successful then move the new compiler to BINDIR:> > > > mv $CM3 INSTALL_DIR/bin/cm3> >> > On Aug 8, 2007, at 5:50 AM, Antony Hosking wrote:> >> >> CVSROOT: /usr/cvs> >> Changes by: hosking at birch. 07/08/08 05:50:13> >>> >> Modified files:> >> cm3/doc/reference/: arithmetic.html arrays.html conventions.html> >> for.html index.html m3.html m3index.html> >> numbers.html ordinal.html subtypes.html> >> typeops.html word-intf.html> >> cm3/m3-db/smalldb/src/: OSSupport.m3> >> cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 FilePosix.m3> >> SocketPosix.m3> >> cm3/m3-libs/libm3/src/pickle/ver2/: ConvertPacking.m3> >> cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3> >> cm3/m3-libs/m3core/src/C/64BITS/: BasicCtypes.i3> >> cm3/m3-libs/m3core/src/Csupport/Common/: hand.c> >> cm3/m3-libs/m3core/src/runtime/POSIX/: RTOS.m3> >> cm3/m3-libs/m3core/src/runtime/common/: RTTipe.i3 RTTipe.m3> >> cm3/m3-libs/m3core/src/thread/: m3makefile> >> cm3/m3-libs/m3core/src/unix/darwin-generic/: Umman.i3 Unix.i3> >> Utypes.i3> >> m3makefile> >> cm3/m3-libs/m3core/src/unix/freebsd-2/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/unix/freebsd-3/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/unix/freebsd-4/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/word/: m3makefile> >> cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c> >> cm3/m3-sys/m3front/src/: m3makefile> >> cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3> >> cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 Ceiling.m3> >> Dec.m3 First.m3 Floatt.m3> >> Floor.m3 Inc.m3 Last.m3> >> Max.m3 New.m3 Number.m3> >> Ord.m3 Round.m3 Subarray.m3> >> Trunc.m3 Val.m3> >> cm3/m3-sys/m3front/src/builtinTypes/: BuiltinTypes.m3 Int.m3> >> m3makefile> >> cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3> >> WordInsert.m3 WordModule.m3> >> WordNot.m3 WordOr.m3> >> WordRotate.m3 WordShift.m3> >> WordXor.m3> >> cm3/m3-sys/m3front/src/exprs/: AddExpr.m3 ArrayExpr.m3> >> CastExpr.m3 CheckExpr.m3> >> CompareExpr.m3 DivExpr.m3> >> EqualExpr.m3 Expr.m3 ExprParse.m3> >> InExpr.m3 IntegerExpr.i3> >> IntegerExpr.m3 ModExpr.m3> >> MultiplyExpr.m3 NegateExpr.m3> >> ReelExpr.i3 ReelExpr.m3> >> SetExpr.m3 SubscriptExpr.m3> >> SubtractExpr.m3> >> cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 M3Front.m3> >> Marker.m3 Scanner.m3 TipeDesc.i3> >> TipeDesc.m3 Token.i3 Token.m3> >> cm3/m3-sys/m3front/src/stmts/: AssignStmt.m3 DebugStmt.m3> >> ForStmt.m3 TryFinStmt.m3> >> cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3> >> OpenArrayType.m3 SubrangeType.m3> >> Type.i3 Type.m3> >> cm3/m3-sys/m3front/src/values/: Exceptionz.m3 Formal.m3> >> Module.m3 Variable.m3> >> cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.m3> >> M3CG_Check.m3 M3CG_Rd.m3 M3CG_Wr.m3> >> TFloat.i3 TFloat.m3 TInt.i3 TInt.m3> >> TWord.i3 TWord.m3 Target.i3 Target.m3> >> cm3/m3-sys/m3scanner/src/: M3Scanner.i3 M3Scanner.m3> >> cm3/m3-sys/m3tools/src/: M3AST.i3 M3Builtin.m3 M3Const.m3> >> M3Lexer.m3 M3Type.i3 M3Type.m3> >> cm3/m3-tools/m3browser/src/: Main.m3> >> Added files:> >> cm3/doc/reference/: m3logo.gif> >> cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3> >> cm3/m3-sys/m3front/src/builtinLong/: LongAnd.i3 LongAnd.m3> >> LongDivide.i3 LongDivide.m3> >> LongExtract.i3> >> LongExtract.m3 LongGE.i3> >> LongGE.m3 LongGT.i3> >> LongGT.m3 LongInsert.i3> >> LongInsert.m3 LongLE.i3> >> LongLE.m3 LongLT.i3> >> LongLT.m3 LongMinus.i3> >> LongMinus.m3 LongMod.i3> >> LongMod.m3 LongModule.i3> >> LongModule.m3 LongNot.i3> >> LongNot.m3 LongOr.i3> >> LongOr.m3 LongPlus.i3> >> LongPlus.m3 LongRotate.i3> >> LongRotate.m3 LongShift.i3> >> LongShift.m3 LongTimes.i3> >> LongTimes.m3 LongXor.i3> >> LongXor.m3> >> cm3/m3-sys/m3front/src/builtinTypes/: LInt.i3 LInt.m3> >>> >> Log message:> >> Compiler and runtime extensions to support LONGINT type.> >> > >> Bootstrapping instructions: build and ship packages in the > >> following order> >> > >> m3middle> >> m3linker> >> m3front> >> m3quake> >> cm3> >> > >> This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3.> >> > >> Use this new compiler to build and ship the new system:> >> > >> export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3> >> cd cm3/scripts> >> ./do-cm3-std.sh buildship> >> > >> If this is successful then move the new compiler to BINDIR:> >> > >> mv $CM3 INSTALL_DIR/bin/cm3> >> _________________________________________________________________ Recharge--play some free games. Win cool prizes too! http://club.live.com/home.aspx?icid=CLUB_wlmailtextlink -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Sun Aug 26 14:08:59 2007 From: jayk123 at hotmail.com (j k) Date: Sun, 26 Aug 2007 12:08:59 +0000 Subject: [M3commit] CVS Update: cm3 (64 bit integers...) Message-ID: Here is the change:< TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. 16_7fffffffffffffffL ];> (*TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. 16_7fffffffffffffffL ];*)> TYPE T = BITS BITSIZE(LONGINT) FOR [ FIRST(LONGINT) .. LAST(LONGINT) ];Otherwise you get a compile error when the constants overflow at compile time.I still think all this stuff is a little wierd. Can we write off ALPHA_OSF, assert that INTEGER is 32 bits, and introduce a new type that is the same size as a pointer?Again I think the types you want are: INT8, INT16, INT32, INT64 -- signed types with exact sizes, the same on all platforms (INT64 yet missing on Win32) UINT8, UINT16, UINT32, UINT64 -- unsigned types with exact sizes, the same on all platforms (UINT64 yet missing on Win32) SIZE_T, ?SSIZE_T? or ?PTRDIFF_T?-- unsigned and signed types for storing addresses, or sizes of arrays, or array indices, or the differences thereof, PERHAPS guaranteed to be 32 bits or 64 bits INTEGER -- same as SSIZE_T ?or? INT32?? What's the pickle story? Are pickles interchangable beteen Alpha and non-Alpha? Should probably be equiv to SSIZE_T. That's what Alpha has. LONGINT -- same as INT64 - Jay> Date: Sun, 26 Aug 2007 13:43:01 +0000> To: m3commit at elegosoft.com> From: jkrell at elego.de> Subject: [M3commit] CVS Update: cm3> > CVSROOT: /usr/cvs> Changes by: jkrell at birch. 07/08/26 13:43:01> > Modified files:> cm3/m3-libs/libm3/src/types/: Int64.i3 > > Log message:> Fix it to compile for Win32's temporary 32 bit Int64.> Is this correct? I think so.> _________________________________________________________________ Messenger Caf? ? open for fun 24/7. Hot games, cool activities served daily. Visit now. http://cafemessenger.com?ocid=TXT_TAGLM_AugWLtagline -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Sun Aug 26 14:10:37 2007 From: jayk123 at hotmail.com (j k) Date: Sun, 26 Aug 2007 12:10:37 +0000 Subject: [M3commit] CVS Update: cm3 Message-ID: before, I think: t.parent.init_int(abscall.loc, TargetInt.Zero, Type.Int32);doesn't compile.after: t.parent.init_int(abscall.loc, TargetInt.Zero[Target.Pre.Integer], Type.Int32);right? - Jay> Date: Sun, 26 Aug 2007 13:08:11 +0000> To: m3commit at elegosoft.com> From: jkrell at elego.de> Subject: [M3commit] CVS Update: cm3> > CVSROOT: /usr/cvs> Changes by: jkrell at birch. 07/08/26 13:08:11> > Modified files:> cm3/m3-sys/m3back/src/: Codex86.m3 > > Log message:> fix it to compile; unknown if this is correct> _________________________________________________________________ See what you?re getting into?before you go there http://newlivehotmail.com/?ocid=TXT_TAGHM_migration_HM_viral_preview_0507 -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Mon Aug 27 03:26:44 2007 From: jayk123 at hotmail.com (j k) Date: Mon, 27 Aug 2007 01:26:44 +0000 Subject: [M3commit] CVS Update: cm3 (64 bit integers...) Message-ID: I think fixing NT386 should be easy enough given just a /bit/more time.I've been poking through it a bit.. > No way. INTEGER is intended to be abstract -- as defined in the > language spec.I'll have to read it to see what characteristics are guaranteed. Assuming you can have "very large" arrays, approaching the address space, or at least half of it, you are generally stuck with either INTEGER being the size of a pointer, or some "complicated" representation, like with varying precision, or heck even floating point.> This leads us into the swamp, full of nightmares and dragons. I really tend to think "my way" is the clear simple way. (Not "my way", but the way of a LOT of code, some of it very high quality, some of it not). Yeah I am colored by "where I live", in the swamp perhaps. It all seems to work quite well. Granted there is a need sometimes for floating point and very high precision, but the types I list, plus bit fields of any size 1 to 64, satisfy nearly all needs very well and very clearly. You do have to declare that assigning a larger precision integer to a smaller precision integer is a checked operation that can fail. Or some way to turn on/off the checks, though, really.. if you look at the "runtime checks" that Visual C++ offers, if you really want silent truncation, you can & with the appropriate value, e.g. UINT32 b; UINT16 a = (b & 0xffff) will not fail. There is the matter of assuming two's complement or not. Do people still work under the notion that there might be one's complement or arbitrary other representations of fixed small precision integers? Again I'll have to read the spec to see what abstraction INTEGER provides. > You only get the compiler error for NT386, for which LONGINT is 32- Understood. - Jay > From: hosking at cs.purdue.edu> Date: Sun, 26 Aug 2007 11:28:49 -0400> To: jay.krell at cornell.edu> CC: m3commit at elegosoft.com> Subject: Re: [M3commit] CVS Update: cm3 (64 bit integers...)> > > On Aug 26, 2007, at 8:08 AM, j k wrote:> > > Here is the change:> >> > < TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. > > 16_7fffffffffffffffL ];> >> > > (*TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. > > 16_7fffffffffffffffL ];*)> > > TYPE T = BITS BITSIZE(LONGINT) FOR [ FIRST(LONGINT) .. LAST > > (LONGINT) ];> > This should be OK.> > > Otherwise you get a compile error when the constants overflow at > > compile time.> > You only get the compiler error for NT386, for which LONGINT is 32- > bits because the non-gcc backend can handle only 32-bit integers. > What we really need is for NT386 to use a back-end that is capable of > 64 bits. NT386GNU may be the easiest route to this.> > > I still think all this stuff is a little wierd. Can we write off > > ALPHA_OSF, assert that INTEGER is 32 bits, and introduce a new type > > that is the same size as a pointer?> > No way. INTEGER is intended to be abstract -- as defined in the > language spec.> > > Again I think the types you want are:> > INT8, INT16, INT32, INT64 -- signed types with exact sizes, the > > same on all platforms (INT64 yet missing on Win32)> > UINT8, UINT16, UINT32, UINT64 -- unsigned types with exact > > sizes, the same on all platforms (UINT64 yet missing on Win32)> > SIZE_T, ?SSIZE_T? or ?PTRDIFF_T?-- unsigned and signed types for > > storing addresses, or sizes of arrays, or array indices, or the > > differences thereof, PERHAPS guaranteed to be 32 bits or 64 bits> > INTEGER -- same as SSIZE_T ?or? INT32??> > What's the pickle story? Are pickles interchangable beteen > > Alpha and non-Alpha?> > Should probably be equiv to SSIZE_T. That's what Alpha has.> > LONGINT -- same as INT64> > This leads us into the swamp, full of nightmares and dragons.> > >> > - Jay> >> >> > > Date: Sun, 26 Aug 2007 13:43:01 +0000> > > To: m3commit at elegosoft.com> > > From: jkrell at elego.de> > > Subject: [M3commit] CVS Update: cm3> > >> > > CVSROOT: /usr/cvs> > > Changes by: jkrell at birch. 07/08/26 13:43:01> > >> > > Modified files:> > > cm3/m3-libs/libm3/src/types/: Int64.i3> > >> > > Log message:> > > Fix it to compile for Win32's temporary 32 bit Int64.> > > Is this correct? I think so.> > >> >> > Messenger Caf? ? open for fun 24/7. Hot games, cool activities > > served daily. Visit now.> _________________________________________________________________ Recharge--play some free games. Win cool prizes too! http://club.live.com/home.aspx?icid=CLUB_wlmailtextlink -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Mon Aug 27 03:27:27 2007 From: jayk123 at hotmail.com (j k) Date: Mon, 27 Aug 2007 01:27:27 +0000 Subject: [M3commit] CVS Update: cm3 Message-ID: Like..it was an array instead of a value, something like that. - Jay > From: hosking at cs.purdue.edu> Date: Sun, 26 Aug 2007 11:29:21 -0400> To: jkrell at elego.de> CC: m3commit at elegosoft.com> Subject: Re: [M3commit] CVS Update: cm3> > Why did this not compile?> > On Aug 26, 2007, at 1:08 PM, Jay Krell wrote:> > > CVSROOT: /usr/cvs> > Changes by: jkrell at birch. 07/08/26 13:08:11> >> > Modified files:> > cm3/m3-sys/m3back/src/: Codex86.m3> >> > Log message:> > fix it to compile; unknown if this is correct> _________________________________________________________________ See what you?re getting into?before you go there http://newlivehotmail.com/?ocid=TXT_TAGHM_migration_HM_viral_preview_0507 -------------- next part -------------- An HTML attachment was scrubbed... URL: From hosking at elego.de Fri Aug 3 01:21:38 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:21:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802232151.65C7510D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:21:38 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTCollector.m3 Log message: RTParams really do need to be set during Init instead of at module initialization. From hosking at elego.de Fri Aug 3 01:22:37 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:22:37 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802232237.6326410D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:22:37 Modified files: cm3/m3-libs/m3core/src/unix/linux-libc6/: Upthread.i3 Log message: Change definition of pthread_mutex_init to permit NIL 'attr' argument. From hosking at elego.de Fri Aug 3 01:23:04 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:23:04 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802232304.2C5E210D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:23:04 Modified files: cm3/m3-libs/m3core/src/unix/darwin-generic/: Upthread.i3 Log message: Change definition of pthread_mutex_init to permit NIL 'attr' argument. From hosking at elego.de Fri Aug 3 01:23:22 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:23:22 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802232322.B910810D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:23:22 Modified files: cm3/m3-libs/m3core/src/unix/solaris-2-x/: Upthread.i3 Log message: Change definition of pthread_mutex_init to permit NIL 'attr' argument. From hosking at elego.de Fri Aug 3 01:30:18 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:30:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802233019.E456B10D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:30:18 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Rework PTHREADS subsystem to map every M3 MUTEX to a pthread mutex and every M3 Condition to a pthread condition. This will improve scalability. Thanks to Dragisa Duric for his comments and suggestions for how to improve pthread-based threading. This update also fixes a major problem with IOWait and IOAlertWait that was causing major problems for GUI applications like mentor. I am happy to report that mentor now runs properly (subject to associated bugfixes in the GUI packages). From hosking at elego.de Fri Aug 3 01:32:25 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:32:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802233232.EF29C10D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:32:25 Modified files: cm3/m3-ui/ui/src/vbt/: VBTClass.m3 Log message: SyncDefault had a nasty race in it. The handshake requires that the child be released and reacquired while the parent is still held. From hosking at elego.de Fri Aug 3 01:33:34 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:33:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802233334.E750B10D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:33:34 Modified files: cm3/m3-ui/ui/src/xvbt/: XClient.m3 Log message: Sync had a nasty race in it. The handshake requires that the children be released and reacquired while the parent is still held. From hosking at elego.de Fri Aug 3 18:09:26 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 18:09:26 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070803160926.7B83310D42E3@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 18:09:26 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Fix race between Fork and Join. Make sure thread is truly up and running before returning from fork. From hosking at elego.de Sat Aug 4 18:30:42 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 4 Aug 2007 18:30:42 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070804163042.6EF6010D43A8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/04 18:30:42 Modified files: cm3/m3-ui/mgkit/src/: GraphVBT.m3 Log message: Fix deadlock! Need to release and acquire locks in reverse order to respect protocol that graph is locked before graph.mgv. From hosking at elego.de Sat Aug 4 19:28:16 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 4 Aug 2007 19:28:16 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070804172823.428DA10D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/04 19:28:16 Modified files: cm3/m3-ui/ui/src/vbt/: VBTClass.m3 Log message: Revert previous change. Bad assumptions made. From hosking at elego.de Sat Aug 4 19:28:36 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 4 Aug 2007 19:28:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070804172837.CF1B510D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/04 19:28:36 Modified files: cm3/m3-ui/ui/src/xvbt/: XClient.m3 Log message: Revert previous change. Bad assumptions made. From hosking at elego.de Sat Aug 4 19:44:10 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 4 Aug 2007 19:44:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070804174423.95ACE10D4302@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/04 19:44:10 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Add debug support for dumping all threads. Still issues on Darwin. May need to revert to original approach with explicit queues. From hosking at elego.de Sun Aug 5 21:40:59 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 5 Aug 2007 21:40:59 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070805194059.556B610D437A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/05 21:40:59 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Make sure to test alert before returning from XWait. From hosking at elego.de Mon Aug 6 18:35:44 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 6 Aug 2007 18:35:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070806163544.1C97C10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/06 18:35:44 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: The problem with the pure pthread condition = M3 condition strategy is that it doesn't play well with alerts on Mac OS X. It turns out signalling the alerted thread won't wake it up from pthread_cond_wait or pthread_cond_timedwait, as it will under Linux. This is a problem, since it means alerted threads can hang around until the main thread exits, leaving no thread active. Moreover, the timeout does not seem to get delivered even to a thread waiting on pthread_cond_timedwait, so we can't even use a polling approach. Thus, I am reverting to the older style of condition using explicit queues and a per-thread wait condition, which we can signal on alert to wake up threads in pthread_cond_wait/pthread_cond_timedwait. Sigh! In any case, this thread implementation is tested on both Mac OSX Darwin and Linux. i.e., GUI apps like mentor work correctly. I will look at coming up with a hybrid implementation that retains 1-1 mapping of M3 mutexes to pthread mutexes, but implements M3 conditions as they are in this update, with explicit queues. That way, we will have scalability of avoiding global locks for mutexes, while retaining desirable M3 alert behavior. From jdp at polstra.com Mon Aug 6 18:55:40 2007 From: jdp at polstra.com (John Polstra) Date: Mon, 06 Aug 2007 09:55:40 -0700 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20070806163544.1C97C10D4407@birch.elegosoft.com> References: <20070806163544.1C97C10D4407@birch.elegosoft.com> Message-ID: <46B7528C.4040901@polstra.com> Antony Hosking wrote: > Log message: > The problem with the pure pthread condition = M3 condition strategy is that it > doesn't play well with alerts on Mac OS X. It turns out signalling the > alerted thread won't wake it up from pthread_cond_wait or > pthread_cond_timedwait, as it will under Linux. The MacOSX behavior is OK according to POSIX, so it's good that you're making this change. John From hosking at elego.de Mon Aug 6 21:22:02 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 6 Aug 2007 21:22:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070806192202.3171F10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/06 21:22:02 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Added explicit variable state field for later use. Minor edits. From hosking at elego.de Wed Aug 8 05:50:13 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 8 Aug 2007 5:50:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070808035016.A852410D440E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/08 05:50:13 Modified files: cm3/doc/reference/: arithmetic.html arrays.html conventions.html for.html index.html m3.html m3index.html numbers.html ordinal.html subtypes.html typeops.html word-intf.html cm3/m3-db/smalldb/src/: OSSupport.m3 cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 FilePosix.m3 SocketPosix.m3 cm3/m3-libs/libm3/src/pickle/ver2/: ConvertPacking.m3 cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3 cm3/m3-libs/m3core/src/C/64BITS/: BasicCtypes.i3 cm3/m3-libs/m3core/src/Csupport/Common/: hand.c cm3/m3-libs/m3core/src/runtime/POSIX/: RTOS.m3 cm3/m3-libs/m3core/src/runtime/common/: RTTipe.i3 RTTipe.m3 cm3/m3-libs/m3core/src/thread/: m3makefile cm3/m3-libs/m3core/src/unix/darwin-generic/: Umman.i3 Unix.i3 Utypes.i3 m3makefile cm3/m3-libs/m3core/src/unix/freebsd-2/: Umman.i3 Unix.i3 Utypes.i3 m3makefile cm3/m3-libs/m3core/src/unix/freebsd-3/: Umman.i3 Unix.i3 Utypes.i3 m3makefile cm3/m3-libs/m3core/src/unix/freebsd-4/: Umman.i3 Unix.i3 Utypes.i3 m3makefile cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Umman.i3 Unix.i3 Utypes.i3 m3makefile cm3/m3-libs/m3core/src/word/: m3makefile cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c cm3/m3-sys/m3front/src/: m3makefile cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3 cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 Ceiling.m3 Dec.m3 First.m3 Floatt.m3 Floor.m3 Inc.m3 Last.m3 Max.m3 New.m3 Number.m3 Ord.m3 Round.m3 Subarray.m3 Trunc.m3 Val.m3 cm3/m3-sys/m3front/src/builtinTypes/: BuiltinTypes.m3 Int.m3 m3makefile cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3 WordInsert.m3 WordModule.m3 WordNot.m3 WordOr.m3 WordRotate.m3 WordShift.m3 WordXor.m3 cm3/m3-sys/m3front/src/exprs/: AddExpr.m3 ArrayExpr.m3 CastExpr.m3 CheckExpr.m3 CompareExpr.m3 DivExpr.m3 EqualExpr.m3 Expr.m3 ExprParse.m3 InExpr.m3 IntegerExpr.i3 IntegerExpr.m3 ModExpr.m3 MultiplyExpr.m3 NegateExpr.m3 ReelExpr.i3 ReelExpr.m3 SetExpr.m3 SubscriptExpr.m3 SubtractExpr.m3 cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 M3Front.m3 Marker.m3 Scanner.m3 TipeDesc.i3 TipeDesc.m3 Token.i3 Token.m3 cm3/m3-sys/m3front/src/stmts/: AssignStmt.m3 DebugStmt.m3 ForStmt.m3 TryFinStmt.m3 cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3 OpenArrayType.m3 SubrangeType.m3 Type.i3 Type.m3 cm3/m3-sys/m3front/src/values/: Exceptionz.m3 Formal.m3 Module.m3 Variable.m3 cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.m3 M3CG_Check.m3 M3CG_Rd.m3 M3CG_Wr.m3 TFloat.i3 TFloat.m3 TInt.i3 TInt.m3 TWord.i3 TWord.m3 Target.i3 Target.m3 cm3/m3-sys/m3scanner/src/: M3Scanner.i3 M3Scanner.m3 cm3/m3-sys/m3tools/src/: M3AST.i3 M3Builtin.m3 M3Const.m3 M3Lexer.m3 M3Type.i3 M3Type.m3 cm3/m3-tools/m3browser/src/: Main.m3 Added files: cm3/doc/reference/: m3logo.gif cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3 cm3/m3-sys/m3front/src/builtinLong/: LongAnd.i3 LongAnd.m3 LongDivide.i3 LongDivide.m3 LongExtract.i3 LongExtract.m3 LongGE.i3 LongGE.m3 LongGT.i3 LongGT.m3 LongInsert.i3 LongInsert.m3 LongLE.i3 LongLE.m3 LongLT.i3 LongLT.m3 LongMinus.i3 LongMinus.m3 LongMod.i3 LongMod.m3 LongModule.i3 LongModule.m3 LongNot.i3 LongNot.m3 LongOr.i3 LongOr.m3 LongPlus.i3 LongPlus.m3 LongRotate.i3 LongRotate.m3 LongShift.i3 LongShift.m3 LongTimes.i3 LongTimes.m3 LongXor.i3 LongXor.m3 cm3/m3-sys/m3front/src/builtinTypes/: LInt.i3 LInt.m3 Log message: Compiler and runtime extensions to support LONGINT type. Bootstrapping instructions: build and ship packages in the following order m3middle m3linker m3front m3quake cm3 This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. Use this new compiler to build and ship the new system: export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 cd cm3/scripts ./do-cm3-std.sh buildship If this is successful then move the new compiler to BINDIR: mv $CM3 INSTALL_DIR/bin/cm3 From hosking at elego.de Wed Aug 8 14:24:10 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 8 Aug 2007 14:24:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070808122410.B6D4D10D434B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/08 14:24:10 Added files: cm3/m3-sys/m3front/src/builtinLong/: m3makefile Log message: Ommitted this. From hosking at cs.purdue.edu Wed Aug 8 14:39:34 2007 From: hosking at cs.purdue.edu (Tony Hosking) Date: Wed, 8 Aug 2007 08:39:34 -0400 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <9E7B2BE1-36D2-4D32-926D-CF70D7BBBC85@cs.purdue.edu> References: <20070808035016.A852410D440E@birch.elegosoft.com> <9E7B2BE1-36D2-4D32-926D-CF70D7BBBC85@cs.purdue.edu> Message-ID: <0B1FC476-C32B-4E57-8DC7-2856E85C1EF8@cs.purdue.edu> Make sure to start with clean build directories and clean before building with the bootstrapped compiler... On Aug 8, 2007, at 8:31 AM, Tony Hosking wrote: > Amended bootstrap instructions: > > Compiler and runtime extensions to support LONGINT type. > > Bootstrapping instructions: build and ship packages in the > following order > > m3cc > m3middle > m3linker > m3front > m3quake > cm3 > > This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. > > Use this new compiler to build and ship the new system: > > export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 > cd cm3/scripts ./do-cm3-std.sh realclean > ./do-cm3-std.sh buildship > > If this is successful then move the new compiler to BINDIR: > > mv $CM3 INSTALL_DIR/bin/cm3 > > On Aug 8, 2007, at 5:50 AM, Antony Hosking wrote: > >> CVSROOT: /usr/cvs >> Changes by: hosking at birch. 07/08/08 05:50:13 >> >> Modified files: >> cm3/doc/reference/: arithmetic.html arrays.html conventions.html >> for.html index.html m3.html m3index.html >> numbers.html ordinal.html subtypes.html >> typeops.html word-intf.html >> cm3/m3-db/smalldb/src/: OSSupport.m3 >> cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 FilePosix.m3 >> SocketPosix.m3 >> cm3/m3-libs/libm3/src/pickle/ver2/: ConvertPacking.m3 >> cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3 >> cm3/m3-libs/m3core/src/C/64BITS/: BasicCtypes.i3 >> cm3/m3-libs/m3core/src/Csupport/Common/: hand.c >> cm3/m3-libs/m3core/src/runtime/POSIX/: RTOS.m3 >> cm3/m3-libs/m3core/src/runtime/common/: RTTipe.i3 RTTipe.m3 >> cm3/m3-libs/m3core/src/thread/: m3makefile >> cm3/m3-libs/m3core/src/unix/darwin-generic/: Umman.i3 Unix.i3 >> Utypes.i3 >> m3makefile >> cm3/m3-libs/m3core/src/unix/freebsd-2/: Umman.i3 Unix.i3 >> Utypes.i3 m3makefile >> cm3/m3-libs/m3core/src/unix/freebsd-3/: Umman.i3 Unix.i3 >> Utypes.i3 m3makefile >> cm3/m3-libs/m3core/src/unix/freebsd-4/: Umman.i3 Unix.i3 >> Utypes.i3 m3makefile >> cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Umman.i3 Unix.i3 >> Utypes.i3 m3makefile >> cm3/m3-libs/m3core/src/word/: m3makefile >> cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c >> cm3/m3-sys/m3front/src/: m3makefile >> cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3 >> cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 Ceiling.m3 >> Dec.m3 First.m3 Floatt.m3 >> Floor.m3 Inc.m3 Last.m3 >> Max.m3 New.m3 Number.m3 >> Ord.m3 Round.m3 Subarray.m3 >> Trunc.m3 Val.m3 >> cm3/m3-sys/m3front/src/builtinTypes/: BuiltinTypes.m3 Int.m3 >> m3makefile >> cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3 >> WordInsert.m3 WordModule.m3 >> WordNot.m3 WordOr.m3 >> WordRotate.m3 WordShift.m3 >> WordXor.m3 >> cm3/m3-sys/m3front/src/exprs/: AddExpr.m3 ArrayExpr.m3 >> CastExpr.m3 CheckExpr.m3 >> CompareExpr.m3 DivExpr.m3 >> EqualExpr.m3 Expr.m3 ExprParse.m3 >> InExpr.m3 IntegerExpr.i3 >> IntegerExpr.m3 ModExpr.m3 >> MultiplyExpr.m3 NegateExpr.m3 >> ReelExpr.i3 ReelExpr.m3 >> SetExpr.m3 SubscriptExpr.m3 >> SubtractExpr.m3 >> cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 M3Front.m3 >> Marker.m3 Scanner.m3 TipeDesc.i3 >> TipeDesc.m3 Token.i3 Token.m3 >> cm3/m3-sys/m3front/src/stmts/: AssignStmt.m3 DebugStmt.m3 >> ForStmt.m3 TryFinStmt.m3 >> cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3 >> OpenArrayType.m3 SubrangeType.m3 >> Type.i3 Type.m3 >> cm3/m3-sys/m3front/src/values/: Exceptionz.m3 Formal.m3 >> Module.m3 Variable.m3 >> cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.m3 >> M3CG_Check.m3 M3CG_Rd.m3 M3CG_Wr.m3 >> TFloat.i3 TFloat.m3 TInt.i3 TInt.m3 >> TWord.i3 TWord.m3 Target.i3 Target.m3 >> cm3/m3-sys/m3scanner/src/: M3Scanner.i3 M3Scanner.m3 >> cm3/m3-sys/m3tools/src/: M3AST.i3 M3Builtin.m3 M3Const.m3 >> M3Lexer.m3 M3Type.i3 M3Type.m3 >> cm3/m3-tools/m3browser/src/: Main.m3 >> Added files: >> cm3/doc/reference/: m3logo.gif >> cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3 >> cm3/m3-sys/m3front/src/builtinLong/: LongAnd.i3 LongAnd.m3 >> LongDivide.i3 LongDivide.m3 >> LongExtract.i3 >> LongExtract.m3 LongGE.i3 >> LongGE.m3 LongGT.i3 >> LongGT.m3 LongInsert.i3 >> LongInsert.m3 LongLE.i3 >> LongLE.m3 LongLT.i3 >> LongLT.m3 LongMinus.i3 >> LongMinus.m3 LongMod.i3 >> LongMod.m3 LongModule.i3 >> LongModule.m3 LongNot.i3 >> LongNot.m3 LongOr.i3 >> LongOr.m3 LongPlus.i3 >> LongPlus.m3 LongRotate.i3 >> LongRotate.m3 LongShift.i3 >> LongShift.m3 LongTimes.i3 >> LongTimes.m3 LongXor.i3 >> LongXor.m3 >> cm3/m3-sys/m3front/src/builtinTypes/: LInt.i3 LInt.m3 >> >> Log message: >> Compiler and runtime extensions to support LONGINT type. >> >> Bootstrapping instructions: build and ship packages in the >> following order >> >> m3middle >> m3linker >> m3front >> m3quake >> cm3 >> >> This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. >> >> Use this new compiler to build and ship the new system: >> >> export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 >> cd cm3/scripts >> ./do-cm3-std.sh buildship >> >> If this is successful then move the new compiler to BINDIR: >> >> mv $CM3 INSTALL_DIR/bin/cm3 > From hosking at cs.purdue.edu Wed Aug 8 14:31:36 2007 From: hosking at cs.purdue.edu (Tony Hosking) Date: Wed, 8 Aug 2007 08:31:36 -0400 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20070808035016.A852410D440E@birch.elegosoft.com> References: <20070808035016.A852410D440E@birch.elegosoft.com> Message-ID: <9E7B2BE1-36D2-4D32-926D-CF70D7BBBC85@cs.purdue.edu> Amended bootstrap instructions: Compiler and runtime extensions to support LONGINT type. Bootstrapping instructions: build and ship packages in the following order m3cc m3middle m3linker m3front m3quake cm3 This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. Use this new compiler to build and ship the new system: export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 cd cm3/scripts ./do-cm3-std.sh buildship If this is successful then move the new compiler to BINDIR: mv $CM3 INSTALL_DIR/bin/cm3 On Aug 8, 2007, at 5:50 AM, Antony Hosking wrote: > CVSROOT: /usr/cvs > Changes by: hosking at birch. 07/08/08 05:50:13 > > Modified files: > cm3/doc/reference/: arithmetic.html arrays.html conventions.html > for.html index.html m3.html m3index.html > numbers.html ordinal.html subtypes.html > typeops.html word-intf.html > cm3/m3-db/smalldb/src/: OSSupport.m3 > cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 FilePosix.m3 > SocketPosix.m3 > cm3/m3-libs/libm3/src/pickle/ver2/: ConvertPacking.m3 > cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3 > cm3/m3-libs/m3core/src/C/64BITS/: BasicCtypes.i3 > cm3/m3-libs/m3core/src/Csupport/Common/: hand.c > cm3/m3-libs/m3core/src/runtime/POSIX/: RTOS.m3 > cm3/m3-libs/m3core/src/runtime/common/: RTTipe.i3 RTTipe.m3 > cm3/m3-libs/m3core/src/thread/: m3makefile > cm3/m3-libs/m3core/src/unix/darwin-generic/: Umman.i3 Unix.i3 > Utypes.i3 > m3makefile > cm3/m3-libs/m3core/src/unix/freebsd-2/: Umman.i3 Unix.i3 > Utypes.i3 m3makefile > cm3/m3-libs/m3core/src/unix/freebsd-3/: Umman.i3 Unix.i3 > Utypes.i3 m3makefile > cm3/m3-libs/m3core/src/unix/freebsd-4/: Umman.i3 Unix.i3 > Utypes.i3 m3makefile > cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Umman.i3 Unix.i3 > Utypes.i3 m3makefile > cm3/m3-libs/m3core/src/word/: m3makefile > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > cm3/m3-sys/m3front/src/: m3makefile > cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3 > cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 Ceiling.m3 > Dec.m3 First.m3 Floatt.m3 > Floor.m3 Inc.m3 Last.m3 > Max.m3 New.m3 Number.m3 > Ord.m3 Round.m3 Subarray.m3 > Trunc.m3 Val.m3 > cm3/m3-sys/m3front/src/builtinTypes/: BuiltinTypes.m3 Int.m3 > m3makefile > cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3 > WordInsert.m3 WordModule.m3 > WordNot.m3 WordOr.m3 > WordRotate.m3 WordShift.m3 > WordXor.m3 > cm3/m3-sys/m3front/src/exprs/: AddExpr.m3 ArrayExpr.m3 > CastExpr.m3 CheckExpr.m3 > CompareExpr.m3 DivExpr.m3 > EqualExpr.m3 Expr.m3 ExprParse.m3 > InExpr.m3 IntegerExpr.i3 > IntegerExpr.m3 ModExpr.m3 > MultiplyExpr.m3 NegateExpr.m3 > ReelExpr.i3 ReelExpr.m3 > SetExpr.m3 SubscriptExpr.m3 > SubtractExpr.m3 > cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 M3Front.m3 > Marker.m3 Scanner.m3 TipeDesc.i3 > TipeDesc.m3 Token.i3 Token.m3 > cm3/m3-sys/m3front/src/stmts/: AssignStmt.m3 DebugStmt.m3 > ForStmt.m3 TryFinStmt.m3 > cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3 > OpenArrayType.m3 SubrangeType.m3 > Type.i3 Type.m3 > cm3/m3-sys/m3front/src/values/: Exceptionz.m3 Formal.m3 > Module.m3 Variable.m3 > cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.m3 > M3CG_Check.m3 M3CG_Rd.m3 M3CG_Wr.m3 > TFloat.i3 TFloat.m3 TInt.i3 TInt.m3 > TWord.i3 TWord.m3 Target.i3 Target.m3 > cm3/m3-sys/m3scanner/src/: M3Scanner.i3 M3Scanner.m3 > cm3/m3-sys/m3tools/src/: M3AST.i3 M3Builtin.m3 M3Const.m3 > M3Lexer.m3 M3Type.i3 M3Type.m3 > cm3/m3-tools/m3browser/src/: Main.m3 > Added files: > cm3/doc/reference/: m3logo.gif > cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3 > cm3/m3-sys/m3front/src/builtinLong/: LongAnd.i3 LongAnd.m3 > LongDivide.i3 LongDivide.m3 > LongExtract.i3 > LongExtract.m3 LongGE.i3 > LongGE.m3 LongGT.i3 > LongGT.m3 LongInsert.i3 > LongInsert.m3 LongLE.i3 > LongLE.m3 LongLT.i3 > LongLT.m3 LongMinus.i3 > LongMinus.m3 LongMod.i3 > LongMod.m3 LongModule.i3 > LongModule.m3 LongNot.i3 > LongNot.m3 LongOr.i3 > LongOr.m3 LongPlus.i3 > LongPlus.m3 LongRotate.i3 > LongRotate.m3 LongShift.i3 > LongShift.m3 LongTimes.i3 > LongTimes.m3 LongXor.i3 > LongXor.m3 > cm3/m3-sys/m3front/src/builtinTypes/: LInt.i3 LInt.m3 > > Log message: > Compiler and runtime extensions to support LONGINT type. > > Bootstrapping instructions: build and ship packages in the > following order > > m3middle > m3linker > m3front > m3quake > cm3 > > This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. > > Use this new compiler to build and ship the new system: > > export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 > cd cm3/scripts > ./do-cm3-std.sh buildship > > If this is successful then move the new compiler to BINDIR: > > mv $CM3 INSTALL_DIR/bin/cm3 From rodney at elego.de Wed Aug 8 22:56:34 2007 From: rodney at elego.de (Rodney M. Bates) Date: Wed, 8 Aug 2007 22:56:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070808205644.DBE1410D43CF@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/08/08 22:56:34 Added files: cm3/doc/reference/complete/: m3-defn-complete.html m3-defn-complete.ps m3-defn-complete.tex Log message: Initial checkin, prior to updates. The three files are not yet known to be consistent. From rodney at elego.de Thu Aug 9 04:15:59 2007 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 9 Aug 2007 4:15:59 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070809021559.3573D10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/08/09 04:15:59 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: m3-util.c Log message: Fix to display numeric escapes in CHAR and TEXT values in Modula-3 octal, instead of hex. From hosking at cs.purdue.edu Sat Aug 11 19:14:21 2007 From: hosking at cs.purdue.edu (Tony Hosking) Date: Sat, 11 Aug 2007 13:14:21 -0400 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: Message-ID: <078AEEB2-F545-43ED-B01D-2783D318C4F9@cs.purdue.edu> Did you rebuild the backend? I have built this on Darwin x86 and Linux x86 without problems. On Aug 11, 2007, at 1:06 PM, j k wrote: > I can build the compiler, but, youch, can't build m3core\long.m3: > > "..\src\word\Long.m3", line 11: Unknown type of size other than > dword in movOp > > The x86 back end needs work..I'll see if I can't just provide this > stuff in C and avoid understanding the backend much.. > > - Jay > > > From: hosking at cs.purdue.edu > > Date: Wed, 8 Aug 2007 08:39:34 -0400 > > To: hosking at cs.purdue.edu > > CC: m3devel at elegosoft.com; m3commit at elegosoft.com > > Subject: Re: [M3commit] CVS Update: cm3 > > > > Make sure to start with clean build directories and clean before > > building with the bootstrapped compiler... > > > > On Aug 8, 2007, at 8:31 AM, Tony Hosking wrote: > > > > > Amended bootstrap instructions: > > > > > > Compiler and runtime extensions to support LONGINT type. > > > > > > Bootstrapping instructions: build and ship packages in the > > > following order > > > > > > m3cc > > > m3middle > > > m3linker > > > m3front > > > m3quake > > > cm3 > > > > > > This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. > > > > > > Use this new compiler to build and ship the new system: > > > > > > export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 > > > cd cm3/scripts > > > > ./do-cm3-std.sh realclean > > > > > ./do-cm3-std.sh buildship > > > > > > If this is successful then move the new compiler to BINDIR: > > > > > > mv $CM3 INSTALL_DIR/bin/cm3 > > > > > > On Aug 8, 2007, at 5:50 AM, Antony Hosking wrote: > > > > > >> CVSROOT: /usr/cvs > > >> Changes by: hosking at birch. 07/08/08 05:50:13 > > >> > > >> Modified files: > > >> cm3/doc/reference/: arithmetic.html arrays.html conventions.html > > >> for.html index.html m3.html m3index.html > > >> numbers.html ordinal.html subtypes.html > > >> typeops.html word-intf.html > > >> cm3/m3-db/smalldb/src/: OSSupport.m3 > > >> cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 FilePosix.m3 > > >> SocketPosix.m3 > > >> cm3/m3-libs/libm3/src/pickle/ver2/: ConvertPacking.m3 > > >> cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3 > > >> cm3/m3-libs/m3core/src/C/64BITS/: BasicCtypes.i3 > > >> cm3/m3-libs/m3core/src/Csupport/Common/: hand.c > > >> cm3/m3-libs/m3core/src/runtime/POSIX/: RTOS.m3 > > >> cm3/m3-libs/m3core/src/runtime/common/: RTTipe.i3 RTTipe.m3 > > >> cm3/m3-libs/m3core/src/thread/: m3makefile > > >> cm3/m3-libs/m3core/src/unix/darwin-generic/: Umman.i3 Unix.i3 > > >> Utypes.i3 > > >> m3makefile > > >> cm3/m3-libs/m3core/src/unix/freebsd-2/: Umman.i3 Unix.i3 > > >> Utypes.i3 m3makefile > > >> cm3/m3-libs/m3core/src/unix/freebsd-3/: Umman.i3 Unix.i3 > > >> Utypes.i3 m3makefile > > >> cm3/m3-libs/m3core/src/unix/freebsd-4/: Umman.i3 Unix.i3 > > >> Utypes.i3 m3makefile > > >> cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Umman.i3 Unix.i3 > > >> Utypes.i3 m3makefile > > >> cm3/m3-libs/m3core/src/word/: m3makefile > > >> cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > >> cm3/m3-sys/m3front/src/: m3makefile > > >> cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3 > > >> cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 Ceiling.m3 > > >> Dec.m3 First.m3 Floatt.m3 > > >> Floor.m3 Inc.m3 Last.m3 > > >> Max.m3 New.m3 Number.m3 > > >> Ord.m3 Round.m3 Subarray.m3 > > >> Trunc.m3 Val.m3 > > >> cm3/m3-sys/m3front/src/builtinTypes/: BuiltinTypes.m3 Int.m3 > > >> m3makefile > > >> cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3 > > >> WordInsert.m3 WordModule.m3 > > >> WordNot.m3 WordOr.m3 > > >> WordRotate.m3 WordShift.m3 > > >> WordXor.m3 > > >> cm3/m3-sys/m3front/src/exprs/: AddExpr.m3 ArrayExpr.m3 > > >> CastExpr.m3 CheckExpr.m3 > > >> CompareExpr.m3 DivExpr.m3 > > >> EqualExpr.m3 Expr.m3 ExprParse.m3 > > >> InExpr.m3 IntegerExpr.i3 > > >> IntegerExpr.m3 ModExpr.m3 > > >> MultiplyExpr.m3 NegateExpr.m3 > > >> ReelExpr.i3 ReelExpr.m3 > > >> SetExpr.m3 SubscriptExpr.m3 > > >> SubtractExpr.m3 > > >> cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 M3Front.m3 > > >> Marker.m3 Scanner.m3 TipeDesc.i3 > > >> TipeDesc.m3 Token.i3 Token.m3 > > >> cm3/m3-sys/m3front/src/stmts/: AssignStmt.m3 DebugStmt.m3 > > >> ForStmt.m3 TryFinStmt.m3 > > >> cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3 > > >> OpenArrayType.m3 SubrangeType.m3 > > >> Type.i3 Type.m3 > > >> cm3/m3-sys/m3front/src/values/: Exceptionz.m3 Formal.m3 > > >> Module.m3 Variable.m3 > > >> cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.m3 > > >> M3CG_Check.m3 M3CG_Rd.m3 M3CG_Wr.m3 > > >> TFloat.i3 TFloat.m3 TInt.i3 TInt.m3 > > >> TWord.i3 TWord.m3 Target.i3 Target.m3 > > >> cm3/m3-sys/m3scanner/src/: M3Scanner.i3 M3Scanner.m3 > > >> cm3/m3-sys/m3tools/src/: M3AST.i3 M3Builtin.m3 M3Const.m3 > > >> M3Lexer.m3 M3Type.i3 M3Type.m3 > > >> cm3/m3-tools/m3browser/src/: Main.m3 > > >> Added files: > > >> cm3/doc/reference/: m3logo.gif > > >> cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3 > > >> cm3/m3-sys/m3front/src/builtinLong/: LongAnd.i3 LongAnd.m3 > > >> LongDivide.i3 LongDivide.m3 > > >> LongExtract.i3 > > >> LongExtract.m3 LongGE.i3 > > >> LongGE.m3 LongGT.i3 > > >> LongGT.m3 LongInsert.i3 > > >> LongInsert.m3 LongLE.i3 > > >> LongLE.m3 LongLT.i3 > > >> LongLT.m3 LongMinus.i3 > > >> LongMinus.m3 LongMod.i3 > > >> LongMod.m3 LongModule.i3 > > >> LongModule.m3 LongNot.i3 > > >> LongNot.m3 LongOr.i3 > > >> LongOr.m3 LongPlus.i3 > > >> LongPlus.m3 LongRotate.i3 > > >> LongRotate.m3 LongShift.i3 > > >> LongShift.m3 LongTimes.i3 > > >> LongTimes.m3 LongXor.i3 > > >> LongXor.m3 > > >> cm3/m3-sys/m3front/src/builtinTypes/: LInt.i3 LInt.m3 > > >> > > >> Log message: > > >> Compiler and runtime extensions to support LONGINT type. > > >> > > >> Bootstrapping instructions: build and ship packages in the > > >> following order > > >> > > >> m3middle > > >> m3linker > > >> m3front > > >> m3quake > > >> cm3 > > >> > > >> This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. > > >> > > >> Use this new compiler to build and ship the new system: > > >> > > >> export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 > > >> cd cm3/scripts > > >> ./do-cm3-std.sh buildship > > >> > > >> If this is successful then move the new compiler to BINDIR: > > >> > > >> mv $CM3 INSTALL_DIR/bin/cm3 > > > > > > > > Recharge--play some free games. Win cool prizes too! Play It! From hosking at elego.de Sat Aug 11 19:19:09 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 11 Aug 2007 19:19:09 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070811171909.737AD10D4342@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/11 19:19:09 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Fix quotes. From jayk123 at hotmail.com Sat Aug 11 19:06:57 2007 From: jayk123 at hotmail.com (j k) Date: Sat, 11 Aug 2007 17:06:57 +0000 Subject: [M3commit] CVS Update: cm3 Message-ID: I can build the compiler, but, youch, can't build m3core\long.m3: "..\src\word\Long.m3", line 11: Unknown type of size other than dword in movOp The x86 back end needs work..I'll see if I can't just provide this stuff in C and avoid understanding the backend much.. - Jay> From: hosking at cs.purdue.edu> Date: Wed, 8 Aug 2007 08:39:34 -0400> To: hosking at cs.purdue.edu> CC: m3devel at elegosoft.com; m3commit at elegosoft.com> Subject: Re: [M3commit] CVS Update: cm3> > Make sure to start with clean build directories and clean before > building with the bootstrapped compiler...> > On Aug 8, 2007, at 8:31 AM, Tony Hosking wrote:> > > Amended bootstrap instructions:> >> > Compiler and runtime extensions to support LONGINT type.> > > > Bootstrapping instructions: build and ship packages in the > > following order> > > > m3cc> > m3middle> > m3linker> > m3front> > m3quake> > cm3> > > > This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3.> > > > Use this new compiler to build and ship the new system:> > > > export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3> > cd cm3/scripts> > ./do-cm3-std.sh realclean> > > ./do-cm3-std.sh buildship> > > > If this is successful then move the new compiler to BINDIR:> > > > mv $CM3 INSTALL_DIR/bin/cm3> >> > On Aug 8, 2007, at 5:50 AM, Antony Hosking wrote:> >> >> CVSROOT: /usr/cvs> >> Changes by: hosking at birch. 07/08/08 05:50:13> >>> >> Modified files:> >> cm3/doc/reference/: arithmetic.html arrays.html conventions.html> >> for.html index.html m3.html m3index.html> >> numbers.html ordinal.html subtypes.html> >> typeops.html word-intf.html> >> cm3/m3-db/smalldb/src/: OSSupport.m3> >> cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 FilePosix.m3> >> SocketPosix.m3> >> cm3/m3-libs/libm3/src/pickle/ver2/: ConvertPacking.m3> >> cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3> >> cm3/m3-libs/m3core/src/C/64BITS/: BasicCtypes.i3> >> cm3/m3-libs/m3core/src/Csupport/Common/: hand.c> >> cm3/m3-libs/m3core/src/runtime/POSIX/: RTOS.m3> >> cm3/m3-libs/m3core/src/runtime/common/: RTTipe.i3 RTTipe.m3> >> cm3/m3-libs/m3core/src/thread/: m3makefile> >> cm3/m3-libs/m3core/src/unix/darwin-generic/: Umman.i3 Unix.i3> >> Utypes.i3> >> m3makefile> >> cm3/m3-libs/m3core/src/unix/freebsd-2/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/unix/freebsd-3/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/unix/freebsd-4/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/word/: m3makefile> >> cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c> >> cm3/m3-sys/m3front/src/: m3makefile> >> cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3> >> cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 Ceiling.m3> >> Dec.m3 First.m3 Floatt.m3> >> Floor.m3 Inc.m3 Last.m3> >> Max.m3 New.m3 Number.m3> >> Ord.m3 Round.m3 Subarray.m3> >> Trunc.m3 Val.m3> >> cm3/m3-sys/m3front/src/builtinTypes/: BuiltinTypes.m3 Int.m3> >> m3makefile> >> cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3> >> WordInsert.m3 WordModule.m3> >> WordNot.m3 WordOr.m3> >> WordRotate.m3 WordShift.m3> >> WordXor.m3> >> cm3/m3-sys/m3front/src/exprs/: AddExpr.m3 ArrayExpr.m3> >> CastExpr.m3 CheckExpr.m3> >> CompareExpr.m3 DivExpr.m3> >> EqualExpr.m3 Expr.m3 ExprParse.m3> >> InExpr.m3 IntegerExpr.i3> >> IntegerExpr.m3 ModExpr.m3> >> MultiplyExpr.m3 NegateExpr.m3> >> ReelExpr.i3 ReelExpr.m3> >> SetExpr.m3 SubscriptExpr.m3> >> SubtractExpr.m3> >> cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 M3Front.m3> >> Marker.m3 Scanner.m3 TipeDesc.i3> >> TipeDesc.m3 Token.i3 Token.m3> >> cm3/m3-sys/m3front/src/stmts/: AssignStmt.m3 DebugStmt.m3> >> ForStmt.m3 TryFinStmt.m3> >> cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3> >> OpenArrayType.m3 SubrangeType.m3> >> Type.i3 Type.m3> >> cm3/m3-sys/m3front/src/values/: Exceptionz.m3 Formal.m3> >> Module.m3 Variable.m3> >> cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.m3> >> M3CG_Check.m3 M3CG_Rd.m3 M3CG_Wr.m3> >> TFloat.i3 TFloat.m3 TInt.i3 TInt.m3> >> TWord.i3 TWord.m3 Target.i3 Target.m3> >> cm3/m3-sys/m3scanner/src/: M3Scanner.i3 M3Scanner.m3> >> cm3/m3-sys/m3tools/src/: M3AST.i3 M3Builtin.m3 M3Const.m3> >> M3Lexer.m3 M3Type.i3 M3Type.m3> >> cm3/m3-tools/m3browser/src/: Main.m3> >> Added files:> >> cm3/doc/reference/: m3logo.gif> >> cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3> >> cm3/m3-sys/m3front/src/builtinLong/: LongAnd.i3 LongAnd.m3> >> LongDivide.i3 LongDivide.m3> >> LongExtract.i3> >> LongExtract.m3 LongGE.i3> >> LongGE.m3 LongGT.i3> >> LongGT.m3 LongInsert.i3> >> LongInsert.m3 LongLE.i3> >> LongLE.m3 LongLT.i3> >> LongLT.m3 LongMinus.i3> >> LongMinus.m3 LongMod.i3> >> LongMod.m3 LongModule.i3> >> LongModule.m3 LongNot.i3> >> LongNot.m3 LongOr.i3> >> LongOr.m3 LongPlus.i3> >> LongPlus.m3 LongRotate.i3> >> LongRotate.m3 LongShift.i3> >> LongShift.m3 LongTimes.i3> >> LongTimes.m3 LongXor.i3> >> LongXor.m3> >> cm3/m3-sys/m3front/src/builtinTypes/: LInt.i3 LInt.m3> >>> >> Log message:> >> Compiler and runtime extensions to support LONGINT type.> >> > >> Bootstrapping instructions: build and ship packages in the > >> following order> >> > >> m3middle> >> m3linker> >> m3front> >> m3quake> >> cm3> >> > >> This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3.> >> > >> Use this new compiler to build and ship the new system:> >> > >> export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3> >> cd cm3/scripts> >> ./do-cm3-std.sh buildship> >> > >> If this is successful then move the new compiler to BINDIR:> >> > >> mv $CM3 INSTALL_DIR/bin/cm3> >> _________________________________________________________________ Recharge--play some free games. Win cool prizes too! http://club.live.com/home.aspx?icid=CLUB_wlmailtextlink -------------- next part -------------- An HTML attachment was scrubbed... URL: From hosking at elego.de Sat Aug 11 20:51:17 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 11 Aug 2007 20:51:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070811185117.81DAC10D4342@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/11 20:51:17 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: White-space changes. Indent and wrap lines. From hosking at elego.de Sat Aug 11 20:53:52 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 11 Aug 2007 20:53:52 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070811185352.4489E10D4342@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/11 20:53:52 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Space sentence endings, fix abbreviation periods. From hosking at elego.de Sat Aug 11 20:59:11 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 11 Aug 2007 20:59:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070811185914.87B8D10D4342@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/11 20:59:11 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Re-format paragraphs. From hosking at elego.de Sun Aug 12 05:03:50 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 5:03:50 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812030352.6086710D43A8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 05:03:50 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Format verbatims and align tables. From hosking at elego.de Sun Aug 12 05:34:24 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 5:34:24 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812033428.5E89C10D43A8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 05:34:24 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Let's use Times-Roman. Fix broken hboxes. From hosking at elego.de Sun Aug 12 05:39:11 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 5:39:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812033913.3C4CE10D43A8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 05:39:11 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Fix indent. From hosking at elego.de Sun Aug 12 06:29:00 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 6:29:00 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812042902.C602610D43A8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 06:29:00 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Tidier. From hosking at elego.de Sun Aug 12 06:42:50 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 6:42:50 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812044250.4DD4310D43A8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 06:42:50 Modified files: cm3/doc/reference/: numbers.html Log message: Tweaks. From hosking at elego.de Sun Aug 12 06:47:19 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 6:47:19 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812044719.1DBE110D4342@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 06:47:19 Modified files: cm3/doc/reference/: for.html Log message: Tweak. From hosking at elego.de Sun Aug 12 06:49:27 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 6:49:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812044927.2944F10D43B1@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 06:49:27 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Changes for LONGINT. From jkrell at elego.de Sun Aug 12 18:46:32 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 18:46:32 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812164632.1C3C310D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 18:46:32 Modified files: cm3/m3-lectern/buildlectern/src/: Cscale.c Log message: Make it valid C++ and fix warnings. From jkrell at elego.de Sun Aug 12 18:53:49 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 18:53:49 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812165349.BE9FF10D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 18:53:49 Modified files: cm3/m3-lectern/buildlectern/src/: Cscale.c Log message: gcc -Wall suggests braces on ambiguous else; assembly is the same either way. gcc -Wall points out undefined-nes due to use of *foo and *foo++ with no intervening "sequence pointe". Use two statements instead. From jkrell at elego.de Sun Aug 12 18:57:51 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 18:57:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812165751.1C4F110D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 18:57:51 Modified files: cm3/m3-libs/m3core/src/C/FreeBSD2/: CstdioC.c Log message: Remove gratuitious semicolons at global scope. From jkrell at elego.de Sun Aug 12 19:03:47 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 19:03:47 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812170347.6EB3610D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 19:03:47 Modified files: cm3/m3-libs/m3core/src/C/FreeBSD/: CstdioC.c cm3/m3-libs/m3core/src/C/FreeBSD3/: CstdioC.c cm3/m3-libs/m3core/src/C/FreeBSD4/: CstdioC.c cm3/m3-libs/m3core/src/C/I386_DARWIN/: CstdioC.c cm3/m3-libs/m3core/src/C/NetBSD2_i386/: CstdioC.c cm3/m3-libs/m3core/src/C/PPC_DARWIN/: CstdioC.c Log message: remove gratuious semicolons, mostly at global scope From jkrell at elego.de Sun Aug 12 19:16:10 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 19:16:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812171610.5483A10D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 19:16:10 Modified files: cm3/m3-win/: vcredist.txt Log message: add link to service pack 1 (which you can easily find searchig the web anyway) From jkrell at elego.de Sun Aug 12 19:41:21 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 19:41:21 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812174121.94FAE10D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 19:41:21 Modified files: cm3/m3-ui/ui/src/winvbt/: WinTrestle.m3 Log message: fix it to build -- RTHeapDep.VM is always FALSE, and no longer avialable From jkrell at elego.de Sun Aug 12 20:17:53 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 20:17:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812181753.57DC410D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 20:17:53 Modified files: cm3/scripts/win/: make-dist.cmd upgrade.cmd Log message: Start with the installed cm3. From jkrell at elego.de Sun Aug 12 20:21:55 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 20:21:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812182155.ED0D810D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 20:21:55 Modified files: cm3/scripts/win/: make-dist.cmd upgrade.cmd Log message: oops - clearing non set variable is an error and makes us do nothing, fast From hosking at elego.de Sun Aug 12 20:43:53 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 20:43:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812184353.53B0A10D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 20:43:53 Modified files: cm3/m3-ui/ui/src/winvbt/: WinTrestle.m3 Log message: Reverse sense of StarTrek parameter, as for X. From hosking at elego.de Sun Aug 12 20:45:44 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 20:45:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812184544.5BC9210D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 20:45:44 Modified files: cm3/m3-ui/ui/src/winvbt/: WinTrestle.m3 Log message: Change comment to match StarTrek parameter meaning. From hosking at elego.de Sun Aug 12 20:46:38 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 20:46:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812184638.60A7910D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 20:46:38 Modified files: cm3/m3-ui/ui/src/xvbt/: NTClientF.m3 Log message: Reverse sense of StarTrek parameter, as for X. From jkrell at elego.de Sun Aug 12 20:57:44 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 20:57:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812185744.726D910D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 20:57:44 Modified files: cm3/scripts/win/: make-dist.cmd Log message: don't make the runtime in the first pass; that doesn't work instead copy it from old package store use the current import .libs -- necessary when bootstrapping from 5.2.6 remove redundant comment From jkrell at elego.de Sun Aug 12 20:59:56 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 20:59:56 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812185956.7869A10D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 20:59:56 Modified files: cm3/scripts/win/: backup-pkgs.cmd def-std-pkgs.cmd do-cm3-base.cmd do-cm3-core.cmd Log message: remove dll2lib, Tony asked about it -- it is tied to the old GC From jkrell at elego.de Sun Aug 12 21:02:06 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 21:02:06 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812190206.D5D5C10D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 21:02:06 Modified files: cm3/scripts/win/: sysinfo.cmd Log message: update version to d5.5.0, tracking scripts/sysinfo.sh From rodney at elego.de Mon Aug 13 16:37:56 2007 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 13 Aug 2007 16:37:56 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813143756.A48D610D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/08/13 16:37:56 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: ada-lex.l Log message: No change to the contents of these files. This is an attempt to get the time stampof ada-lex.c to be later than that of ada-lex.l. This will mean m3gdb will build without requiring flex to be installed. From rodney at elego.de Mon Aug 13 16:39:15 2007 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 13 Aug 2007 16:39:15 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813143915.71BE510D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/08/13 16:39:15 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: ada-lex.c Log message: No change to the contents of these files. This is an attempt to get the time stampof ada-lex.c to be later than that of ada-lex.l. This will mean m3gdb will build without requiring flex to be installed. From hosking at elego.de Mon Aug 13 21:49:07 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 13 Aug 2007 21:49:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813194908.98E4710D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/13 21:49:07 Modified files: cm3/m3-libs/libm3/src/types/: m3makefile cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3 cm3/m3-libs/m3core/src/runtime/common/: RTBuiltin.mx cm3/m3-sys/m3front/src/builtinLong/: LongAnd.m3 LongExtract.m3 LongInsert.m3 LongMod.m3 LongRotate.m3 LongShift.m3 cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 Dec.m3 First.m3 Inc.m3 IsType.m3 Last.m3 Number.m3 Ord.m3 Subarray.m3 Val.m3 cm3/m3-sys/m3front/src/builtinTypes/: Bool.m3 Card.m3 Null.m3 cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3 WordInsert.m3 WordMod.m3 WordRotate.m3 WordShift.m3 cm3/m3-sys/m3front/src/exprs/: AddressExpr.m3 AndExpr.m3 ArrayExpr.m3 CheckExpr.m3 CompareExpr.m3 DivExpr.m3 EnumExpr.m3 EqualExpr.m3 Expr.m3 ExprParse.m3 InExpr.m3 IntegerExpr.m3 ModExpr.m3 NamedExpr.m3 NilChkExpr.m3 NotExpr.m3 OrExpr.m3 SetExpr.m3 SubscriptExpr.m3 cm3/m3-sys/m3front/src/misc/: CG.m3 Coverage.m3 Scanner.m3 TipeDesc.m3 cm3/m3-sys/m3front/src/stmts/: AssertStmt.m3 CaseStmt.m3 DebugStmt.m3 ForStmt.m3 cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3 ObjectType.m3 OpenArrayType.m3 SubrangeType.m3 Type.m3 cm3/m3-sys/m3linker/src/: MxGen.m3 cm3/m3-sys/m3middle/src/: M3CG_BinRd.m3 M3CG_BinWr.m3 M3CG_Rd.m3 TInt.i3 TInt.m3 TWord.i3 TWord.m3 Target.i3 Target.m3 cm3/m3-sys/m3tools/src/: M3Builtin.m3 M3Const.m3 M3Type.m3 cm3/m3-tools/m3browser/src/: Main.m3 Added files: cm3/m3-libs/libm3/src/types/: Int64.i3 Int64.m3 Longint.i3 Longint.m3 Log message: Fix problems with LONGINT subranges. Tidy up TInt usage. Add LONGINT and its UID to RTBuiltin.mx and m3browser/src/Main.m3. From hosking at elego.de Mon Aug 13 22:30:04 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 13 Aug 2007 22:30:04 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813203006.D7C9510D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/13 22:30:04 Modified files: cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3 cm3/m3-sys/m3front/src/misc/: M3Front.m3 Log message: LongModule needs treatment for builtins the same as WordModule. m3browser now works properly for LONGINT. From hosking at elego.de Tue Aug 14 01:01:38 2007 From: hosking at elego.de (Antony Hosking) Date: Tue, 14 Aug 2007 1:01:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813230139.0653910D43FC@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/14 01:01:38 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTBuiltin.mx Log message: Adjust count to match addition of LONGINT. From hosking at elego.de Tue Aug 14 01:02:30 2007 From: hosking at elego.de (Antony Hosking) Date: Tue, 14 Aug 2007 1:02:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813230231.151F810D43FC@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/14 01:02:30 Modified files: cm3/m3-sys/m3front/src/types/: Type.m3 Log message: Put LInt in TypeTbl along with other builtin types. From hosking at elego.de Tue Aug 14 01:47:10 2007 From: hosking at elego.de (Antony Hosking) Date: Tue, 14 Aug 2007 1:47:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813234710.F411B10D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/14 01:47:10 Modified files: cm3/m3-tools/m3markup/src/: M3MarkUp.m3 cm3/m3-tools/m3scan/src/: M3Scanner.m3 M3Token.i3 M3Token.m3 Log message: Fix m3scan and m3markup to handle LONGINT. m3browser *really* works now... :-) From hosking at elego.de Wed Aug 15 17:20:56 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 15 Aug 2007 17:20:56 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070815152101.4F31710D4408@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/15 17:20:56 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Fix scan_target_int to properly scan 64-bit integers on 32-bit hosts when HOST_WIDE_INT == long long. This fixes the problem with LONGINT on PPC_DARWIN. "do-cm3-std.sh buildship" now succeeds with LONGINT for all of I386_DARWIN, PPC_DARWIN, LINUXLIBC6. Testing on SOLgnu next. From hosking at elego.de Wed Aug 15 19:39:55 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 15 Aug 2007 19:39:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070815173955.2649B10D440A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/15 19:39:55 Modified files: cm3/m3-libs/m3core/src/word/: m3makefile Added files: cm3/m3-libs/m3core/src/word/: Long.i3 Removed files: cm3/m3-libs/m3core/src/word/POSIX/: Long.i3 Long.m3 m3makefile cm3/m3-libs/m3core/src/word/WIN32/: Long.i3 LongC.c m3makefile Log message: Resurrect Long.i3. Backend compilers support this. m3back needs fixing to handle 64-bit LONGINT. From hosking at elego.de Wed Aug 15 19:41:20 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 15 Aug 2007 19:41:20 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070815174125.982E310D440A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/15 19:41:20 Added files: cm3/m3-libs/m3core/src/word/: Long.m3 Log message: Resurrect Long.i3. Backend compilers support this. m3back needs fixing to handle 64-bit LONGINT. From hosking at elego.de Wed Aug 15 21:52:48 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 15 Aug 2007 21:52:48 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070815195248.AC8FD10D441A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/15 21:52:48 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Problems with pthread_cond_timedwait on SMP. Use nanowait instead. From hosking at elego.de Thu Aug 16 18:53:50 2007 From: hosking at elego.de (Antony Hosking) Date: Thu, 16 Aug 2007 18:53:50 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070816165350.D234110D43FC@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/16 18:53:50 Modified files: cm3/m3-sys/m3middle/src/: Target.m3 Log message: Make Longint/Longword to be 32 bits on NT386 so Jay can build. From hosking at elego.de Sat Aug 18 23:57:59 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 18 Aug 2007 23:57:59 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070818215759.8BC4410D41BA@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/18 23:57:59 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Add debugging support. Drain semaphore on receipt of signals. From hosking at elego.de Sun Aug 19 21:33:18 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 19 Aug 2007 21:33:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070819193318.5FCDE10D433D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/19 21:33:18 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Cosmetic changes. From hosking at elego.de Sun Aug 19 22:02:18 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 19 Aug 2007 22:02:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070819200218.3F8B910D433D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/19 22:02:18 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Cosmetic changes. From hosking at elego.de Mon Aug 20 00:23:57 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 0:23:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070819222358.27D0E10D4338@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 00:23:57 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: pthread_t is not always an ADDRESS. From hosking at elego.de Mon Aug 20 16:17:13 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:17:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820141713.C156510D4364@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:17:13 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Solaris thr_getstate is unreliable (when did this happen??) for threads blocking in pthread_cond_wait and nanosleep. Threads entering blocking calls must deposit a reliable stack pointer into their activation record before blocking, and clear it afterwards, to signal to the stopping thread that it should not rely on GetState. mentor now runs again on Solaris. From hosking at elego.de Mon Aug 20 16:18:12 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:18:12 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820141812.5592C10D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:18:12 Modified files: cm3/m3-libs/m3core/src/runtime/SOLgnu/: RTMachine.m3 Log message: Solaris thr_getstate is unreliable (when did this happen??) for threads blocking in pthread_cond_wait and nanosleep. Threads entering blocking calls must deposit a reliable stack pointer into their activation record before blocking, and clear it afterwards, to signal to the stopping thread that it should not rely on GetState. mentor now runs again on Solaris. From hosking at elego.de Mon Aug 20 16:18:49 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:18:49 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820141849.6906910D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:18:49 Modified files: cm3/m3-libs/m3core/src/runtime/SOLgnu/: RTMachine.i3 Log message: Solaris thr_getstate is unreliable (when did this happen??) for threads blocking in pthread_cond_wait and nanosleep. Threads entering blocking calls must deposit a reliable stack pointer into their activation record before blocking, and clear it afterwards, to signal to the stopping thread that it should not rely on GetState. mentor now runs again on Solaris. From hosking at elego.de Mon Aug 20 16:21:15 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:21:15 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820142115.D376210D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:21:15 Modified files: cm3/m3-libs/m3core/src/runtime/SOLgnu/: m3makefile Log message: Use RTMachine__SaveRegsInStack instead of RTStack__Flush. From hosking at elego.de Mon Aug 20 16:21:28 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:21:28 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820142128.7304F10D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:21:28 Modified files: cm3/m3-libs/m3core/src/runtime/SOLgnu/: RTStackC.c Log message: Use RTMachine__SaveRegsInStack instead of RTStack__Flush. From hosking at elego.de Mon Aug 20 16:23:30 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:23:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820142330.3120710D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:23:30 Modified files: cm3/m3-libs/m3core/src/runtime/SOLsun/: RTStackC.c Log message: Bring into sync with SOLgnu. From hosking at elego.de Mon Aug 20 16:24:38 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:24:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820142438.DC01810D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:24:38 Modified files: cm3/m3-libs/m3core/src/runtime/SOLsun/: RTMachine.i3 Log message: Bring into sync with SOLgnu. From hosking at elego.de Mon Aug 20 16:25:18 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:25:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820142518.E0B3D10D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:25:18 Modified files: cm3/m3-libs/m3core/src/runtime/SOLsun/: RTMachine.m3 Log message: Bring into sync with SOLgnu. From hosking at elego.de Mon Aug 20 16:25:44 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:25:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820142544.61E4110D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:25:44 Modified files: cm3/m3-libs/m3core/src/runtime/SOLsun/: m3makefile Log message: Bring into sync with SOLgnu. From hosking at elego.de Mon Aug 20 16:38:05 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:38:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820143805.B008710D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:38:05 Modified files: cm3/m3-sys/m3middle/src/: Target.i3 Log message: Change comment to avoid "'" so that M3 syntax highlighting in emacs does not get confused. From hosking at elego.de Mon Aug 20 16:42:34 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:42:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820144234.C19F010D4308@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:42:34 Modified files: cm3/m3-libs/m3core/src/runtime/I386_DARWIN/: RTMachine.i3 RTThreadC.c m3makefile cm3/m3-libs/m3core/src/runtime/LINUXLIBC6/: RTMachine.i3 cm3/m3-libs/m3core/src/runtime/PPC_DARWIN/: RTMachine.i3 RTThreadC.c m3makefile Added files: cm3/m3-libs/m3core/src/runtime/I386_DARWIN/: RTMachineC.c cm3/m3-libs/m3core/src/runtime/PPC_DARWIN/: RTMachineC.c Log message: Sync RTMachine.GetState declarations with changes made for Solaris. Move RTMachine functionality from RTThreadC.c into separate RTMachineC.c. From hosking at elego.de Mon Aug 20 21:40:21 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 21:40:21 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820194021.0556110D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 21:40:20 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Get rid of alertable field. Alerted waiters can dequeue themselves. From hosking at elego.de Tue Aug 21 01:32:55 2007 From: hosking at elego.de (Antony Hosking) Date: Tue, 21 Aug 2007 1:32:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820233255.8963810D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/21 01:32:55 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Slight tidy-up of scan_float, but doesn't fix problem with building float constants on AMD64 unless we compile with "-m32". From rodney at elego.de Sun Aug 26 02:05:09 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sun, 26 Aug 2007 2:05:09 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826000509.EDF2510D4435@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/08/26 02:05:09 Modified files: cm3/m3-sys/m3cc/gcc/gcc/: dbxout.c cm3/m3-sys/m3gdb/gdb/gdb/: m3-eval.c m3-lang.c Log message: m3gdb function calls had lost the ability to display the result of a function call. In particular, "print Thread.Self()" now works again. To get the benefit of this, you have to rebuild cm3, then use it to rebuild m3core (or whatever contains functions you would like to call.) 1) Forward patch a change to dbxout.c that never made it from the 3.4.5-to the 4.1.1-based code generator. This gives m3gdb necessary information about blocks, so it can find local variables (which, oddly, is how it finds if a procedure is a function and if so, its result type.) 2) Fix a regression in m3gdb, no longer looking in the outermost block of a function, for the function result pseudo-variable. This affected recent-cm3-compiled functions with "large" function results. From jkrell at elego.de Sun Aug 26 12:13:17 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:13:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826101317.1959810D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:13:17 Modified files: cm3/scripts/win/: make-dist.cmd Log message: better error reporting and fix an error in early stages mklib.pdb does not exist, ok From jkrell at elego.de Sun Aug 26 12:25:05 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:25:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826102505.486A410D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:25:05 Modified files: cm3/scripts/win/: make-dist.cmd pkgmap.cmd Log message: tweak error reporting to give more context note that the errors appear in a backwards stack sort of way From jkrell at elego.de Sun Aug 26 12:29:33 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:29:33 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826102933.1E23B10D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:29:33 Modified files: cm3/scripts/win/: make-dist.cmd Log message: butt coverage regarding abuse of %TEMP% From jkrell at elego.de Sun Aug 26 12:31:13 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:31:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826103114.64D0A10D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:31:13 Modified files: cm3/scripts/win/: make-dist.cmd Log message: slightly terser butt coverage From jkrell at elego.de Sun Aug 26 12:35:52 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:35:52 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826103553.CF81E10D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:35:52 Modified files: cm3/scripts/win/: make-dist.cmd Log message: beware cmd wackiness -- cmd does not like parens in the body of an if, thereby making the whole if-paren feature largely broken.. From jkrell at elego.de Sun Aug 26 12:43:41 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:43:41 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826104341.06A5010D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:43:41 Modified files: cm3/scripts/win/: pkgmap.cmd Log message: more context to peel the onion when reproducing errors From jkrell at elego.de Sun Aug 26 12:44:17 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:44:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826104417.23AAF10D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:44:17 Modified files: cm3/scripts/win/: clearenv.cmd Log message: cleanup mess made by make-dist From jkrell at elego.de Sun Aug 26 13:08:11 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 13:08:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826110811.F256710D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 13:08:11 Modified files: cm3/m3-sys/m3back/src/: Codex86.m3 Log message: fix it to compile; unknown if this is correct From jkrell at elego.de Sun Aug 26 13:43:01 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 13:43:01 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826114301.54E3710D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 13:43:01 Modified files: cm3/m3-libs/libm3/src/types/: Int64.i3 Log message: Fix it to compile for Win32's temporary 32 bit Int64. Is this correct? I think so. From jkrell at elego.de Sun Aug 26 13:44:42 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 13:44:42 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826114442.86B8010D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 13:44:42 Modified files: cm3/m3-libs/libm3/src/types/: Int32.i3 Log message: commented out possibility that is consistent with Int64.i3; is it correct? Not sure -- is INTEGER always 32 bits or is it 64 bits on some platforms? Does the compiler compute these values correctly? These are not difficult to answer questions.. From jkrell at elego.de Sun Aug 26 13:59:50 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 13:59:50 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826115952.2103F10D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 13:59:50 Modified files: cm3/m3-libs/libm3/src/types/: Int32.i3 Log message: remove just added comment, ALPHA_OSF target has 64 bit integers.. I still think this is all of unclear goodness vs. other models.. From jayk123 at hotmail.com Sun Aug 26 14:08:59 2007 From: jayk123 at hotmail.com (j k) Date: Sun, 26 Aug 2007 12:08:59 +0000 Subject: [M3commit] CVS Update: cm3 (64 bit integers...) Message-ID: Here is the change:< TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. 16_7fffffffffffffffL ];> (*TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. 16_7fffffffffffffffL ];*)> TYPE T = BITS BITSIZE(LONGINT) FOR [ FIRST(LONGINT) .. LAST(LONGINT) ];Otherwise you get a compile error when the constants overflow at compile time.I still think all this stuff is a little wierd. Can we write off ALPHA_OSF, assert that INTEGER is 32 bits, and introduce a new type that is the same size as a pointer?Again I think the types you want are: INT8, INT16, INT32, INT64 -- signed types with exact sizes, the same on all platforms (INT64 yet missing on Win32) UINT8, UINT16, UINT32, UINT64 -- unsigned types with exact sizes, the same on all platforms (UINT64 yet missing on Win32) SIZE_T, ?SSIZE_T? or ?PTRDIFF_T?-- unsigned and signed types for storing addresses, or sizes of arrays, or array indices, or the differences thereof, PERHAPS guaranteed to be 32 bits or 64 bits INTEGER -- same as SSIZE_T ?or? INT32?? What's the pickle story? Are pickles interchangable beteen Alpha and non-Alpha? Should probably be equiv to SSIZE_T. That's what Alpha has. LONGINT -- same as INT64 - Jay> Date: Sun, 26 Aug 2007 13:43:01 +0000> To: m3commit at elegosoft.com> From: jkrell at elego.de> Subject: [M3commit] CVS Update: cm3> > CVSROOT: /usr/cvs> Changes by: jkrell at birch. 07/08/26 13:43:01> > Modified files:> cm3/m3-libs/libm3/src/types/: Int64.i3 > > Log message:> Fix it to compile for Win32's temporary 32 bit Int64.> Is this correct? I think so.> _________________________________________________________________ Messenger Caf? ? open for fun 24/7. Hot games, cool activities served daily. Visit now. http://cafemessenger.com?ocid=TXT_TAGLM_AugWLtagline -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Sun Aug 26 14:10:37 2007 From: jayk123 at hotmail.com (j k) Date: Sun, 26 Aug 2007 12:10:37 +0000 Subject: [M3commit] CVS Update: cm3 Message-ID: before, I think: t.parent.init_int(abscall.loc, TargetInt.Zero, Type.Int32);doesn't compile.after: t.parent.init_int(abscall.loc, TargetInt.Zero[Target.Pre.Integer], Type.Int32);right? - Jay> Date: Sun, 26 Aug 2007 13:08:11 +0000> To: m3commit at elegosoft.com> From: jkrell at elego.de> Subject: [M3commit] CVS Update: cm3> > CVSROOT: /usr/cvs> Changes by: jkrell at birch. 07/08/26 13:08:11> > Modified files:> cm3/m3-sys/m3back/src/: Codex86.m3 > > Log message:> fix it to compile; unknown if this is correct> _________________________________________________________________ See what you?re getting into?before you go there http://newlivehotmail.com/?ocid=TXT_TAGHM_migration_HM_viral_preview_0507 -------------- next part -------------- An HTML attachment was scrubbed... URL: From hosking at cs.purdue.edu Sun Aug 26 17:28:49 2007 From: hosking at cs.purdue.edu (Tony Hosking) Date: Sun, 26 Aug 2007 11:28:49 -0400 Subject: [M3commit] CVS Update: cm3 (64 bit integers...) In-Reply-To: References: Message-ID: On Aug 26, 2007, at 8:08 AM, j k wrote: > Here is the change: > > < TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. > 16_7fffffffffffffffL ]; > > > (*TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. > 16_7fffffffffffffffL ];*) > > TYPE T = BITS BITSIZE(LONGINT) FOR [ FIRST(LONGINT) .. LAST > (LONGINT) ]; This should be OK. > Otherwise you get a compile error when the constants overflow at > compile time. You only get the compiler error for NT386, for which LONGINT is 32- bits because the non-gcc backend can handle only 32-bit integers. What we really need is for NT386 to use a back-end that is capable of 64 bits. NT386GNU may be the easiest route to this. > I still think all this stuff is a little wierd. Can we write off > ALPHA_OSF, assert that INTEGER is 32 bits, and introduce a new type > that is the same size as a pointer? No way. INTEGER is intended to be abstract -- as defined in the language spec. > Again I think the types you want are: > INT8, INT16, INT32, INT64 -- signed types with exact sizes, the > same on all platforms (INT64 yet missing on Win32) > UINT8, UINT16, UINT32, UINT64 -- unsigned types with exact > sizes, the same on all platforms (UINT64 yet missing on Win32) > SIZE_T, ?SSIZE_T? or ?PTRDIFF_T?-- unsigned and signed types for > storing addresses, or sizes of arrays, or array indices, or the > differences thereof, PERHAPS guaranteed to be 32 bits or 64 bits > INTEGER -- same as SSIZE_T ?or? INT32?? > What's the pickle story? Are pickles interchangable beteen > Alpha and non-Alpha? > Should probably be equiv to SSIZE_T. That's what Alpha has. > LONGINT -- same as INT64 This leads us into the swamp, full of nightmares and dragons. > > - Jay > > > > Date: Sun, 26 Aug 2007 13:43:01 +0000 > > To: m3commit at elegosoft.com > > From: jkrell at elego.de > > Subject: [M3commit] CVS Update: cm3 > > > > CVSROOT: /usr/cvs > > Changes by: jkrell at birch. 07/08/26 13:43:01 > > > > Modified files: > > cm3/m3-libs/libm3/src/types/: Int64.i3 > > > > Log message: > > Fix it to compile for Win32's temporary 32 bit Int64. > > Is this correct? I think so. > > > > Messenger Caf? ? open for fun 24/7. Hot games, cool activities > served daily. Visit now. From hosking at cs.purdue.edu Sun Aug 26 17:29:21 2007 From: hosking at cs.purdue.edu (Tony Hosking) Date: Sun, 26 Aug 2007 11:29:21 -0400 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20070826110811.F256710D4363@birch.elegosoft.com> References: <20070826110811.F256710D4363@birch.elegosoft.com> Message-ID: <67072DC5-83FA-430D-A3B6-A14F96AC7DDD@cs.purdue.edu> Why did this not compile? On Aug 26, 2007, at 1:08 PM, Jay Krell wrote: > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 07/08/26 13:08:11 > > Modified files: > cm3/m3-sys/m3back/src/: Codex86.m3 > > Log message: > fix it to compile; unknown if this is correct From hosking at elego.de Sun Aug 26 17:36:02 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 26 Aug 2007 17:36:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826153602.7C57710D442D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/26 17:36:02 Modified files: cm3/m3-libs/libm3/src/types/: Int64.i3 Log message: Revert Int64 and change m3makefile so it does not get compiled on NT386 target which uses the non-gcc backend that can't handle 64 bits yet. From hosking at elego.de Sun Aug 26 17:36:14 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 26 Aug 2007 17:36:14 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826153615.3EE7210D442D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/26 17:36:14 Modified files: cm3/m3-libs/libm3/src/types/: m3makefile Log message: Revert Int64 and change m3makefile so it does not get compiled on NT386 target which uses the non-gcc backend that can't handle 64 bits yet. From hosking at elego.de Sun Aug 26 23:34:25 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 26 Aug 2007 23:34:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826213428.93A1010D442D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/26 23:34:25 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTAllocator.m3 RTCollector.m3 RTHeapRep.i3 cm3/m3-libs/m3core/src/thread/POSIX/: ThreadPosix.m3 cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadF.i3 ThreadPThread.m3 cm3/m3-libs/m3core/src/thread/WIN32/: ThreadWin32.m3 Log message: Switch to using generic "heapState" field in thread in preparation for additional state. From jayk123 at hotmail.com Mon Aug 27 03:26:44 2007 From: jayk123 at hotmail.com (j k) Date: Mon, 27 Aug 2007 01:26:44 +0000 Subject: [M3commit] CVS Update: cm3 (64 bit integers...) Message-ID: I think fixing NT386 should be easy enough given just a /bit/more time.I've been poking through it a bit.. > No way. INTEGER is intended to be abstract -- as defined in the > language spec.I'll have to read it to see what characteristics are guaranteed. Assuming you can have "very large" arrays, approaching the address space, or at least half of it, you are generally stuck with either INTEGER being the size of a pointer, or some "complicated" representation, like with varying precision, or heck even floating point.> This leads us into the swamp, full of nightmares and dragons. I really tend to think "my way" is the clear simple way. (Not "my way", but the way of a LOT of code, some of it very high quality, some of it not). Yeah I am colored by "where I live", in the swamp perhaps. It all seems to work quite well. Granted there is a need sometimes for floating point and very high precision, but the types I list, plus bit fields of any size 1 to 64, satisfy nearly all needs very well and very clearly. You do have to declare that assigning a larger precision integer to a smaller precision integer is a checked operation that can fail. Or some way to turn on/off the checks, though, really.. if you look at the "runtime checks" that Visual C++ offers, if you really want silent truncation, you can & with the appropriate value, e.g. UINT32 b; UINT16 a = (b & 0xffff) will not fail. There is the matter of assuming two's complement or not. Do people still work under the notion that there might be one's complement or arbitrary other representations of fixed small precision integers? Again I'll have to read the spec to see what abstraction INTEGER provides. > You only get the compiler error for NT386, for which LONGINT is 32- Understood. - Jay > From: hosking at cs.purdue.edu> Date: Sun, 26 Aug 2007 11:28:49 -0400> To: jay.krell at cornell.edu> CC: m3commit at elegosoft.com> Subject: Re: [M3commit] CVS Update: cm3 (64 bit integers...)> > > On Aug 26, 2007, at 8:08 AM, j k wrote:> > > Here is the change:> >> > < TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. > > 16_7fffffffffffffffL ];> >> > > (*TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. > > 16_7fffffffffffffffL ];*)> > > TYPE T = BITS BITSIZE(LONGINT) FOR [ FIRST(LONGINT) .. LAST > > (LONGINT) ];> > This should be OK.> > > Otherwise you get a compile error when the constants overflow at > > compile time.> > You only get the compiler error for NT386, for which LONGINT is 32- > bits because the non-gcc backend can handle only 32-bit integers. > What we really need is for NT386 to use a back-end that is capable of > 64 bits. NT386GNU may be the easiest route to this.> > > I still think all this stuff is a little wierd. Can we write off > > ALPHA_OSF, assert that INTEGER is 32 bits, and introduce a new type > > that is the same size as a pointer?> > No way. INTEGER is intended to be abstract -- as defined in the > language spec.> > > Again I think the types you want are:> > INT8, INT16, INT32, INT64 -- signed types with exact sizes, the > > same on all platforms (INT64 yet missing on Win32)> > UINT8, UINT16, UINT32, UINT64 -- unsigned types with exact > > sizes, the same on all platforms (UINT64 yet missing on Win32)> > SIZE_T, ?SSIZE_T? or ?PTRDIFF_T?-- unsigned and signed types for > > storing addresses, or sizes of arrays, or array indices, or the > > differences thereof, PERHAPS guaranteed to be 32 bits or 64 bits> > INTEGER -- same as SSIZE_T ?or? INT32??> > What's the pickle story? Are pickles interchangable beteen > > Alpha and non-Alpha?> > Should probably be equiv to SSIZE_T. That's what Alpha has.> > LONGINT -- same as INT64> > This leads us into the swamp, full of nightmares and dragons.> > >> > - Jay> >> >> > > Date: Sun, 26 Aug 2007 13:43:01 +0000> > > To: m3commit at elegosoft.com> > > From: jkrell at elego.de> > > Subject: [M3commit] CVS Update: cm3> > >> > > CVSROOT: /usr/cvs> > > Changes by: jkrell at birch. 07/08/26 13:43:01> > >> > > Modified files:> > > cm3/m3-libs/libm3/src/types/: Int64.i3> > >> > > Log message:> > > Fix it to compile for Win32's temporary 32 bit Int64.> > > Is this correct? I think so.> > >> >> > Messenger Caf? ? open for fun 24/7. Hot games, cool activities > > served daily. Visit now.> _________________________________________________________________ Recharge--play some free games. Win cool prizes too! http://club.live.com/home.aspx?icid=CLUB_wlmailtextlink -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Mon Aug 27 03:27:27 2007 From: jayk123 at hotmail.com (j k) Date: Mon, 27 Aug 2007 01:27:27 +0000 Subject: [M3commit] CVS Update: cm3 Message-ID: Like..it was an array instead of a value, something like that. - Jay > From: hosking at cs.purdue.edu> Date: Sun, 26 Aug 2007 11:29:21 -0400> To: jkrell at elego.de> CC: m3commit at elegosoft.com> Subject: Re: [M3commit] CVS Update: cm3> > Why did this not compile?> > On Aug 26, 2007, at 1:08 PM, Jay Krell wrote:> > > CVSROOT: /usr/cvs> > Changes by: jkrell at birch. 07/08/26 13:08:11> >> > Modified files:> > cm3/m3-sys/m3back/src/: Codex86.m3> >> > Log message:> > fix it to compile; unknown if this is correct> _________________________________________________________________ See what you?re getting into?before you go there http://newlivehotmail.com/?ocid=TXT_TAGHM_migration_HM_viral_preview_0507 -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Sat Aug 11 19:19:24 2007 From: jayk123 at hotmail.com (j k) Date: Sat, 11 Aug 2007 17:19:24 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: I can build the compiler, but, youch, can't build m3core\long.m3: "..\src\word\Long.m3", line 11: Unknown type of size other than dword in movOp The x86 back end needs work..I'll see if I can't just provide this stuff in C and avoid understanding the backend much.. - Jay> From: hosking at cs.purdue.edu> Date: Wed, 8 Aug 2007 08:39:34 -0400> To: hosking at cs.purdue.edu> CC: m3devel at elegosoft.com; m3commit at elegosoft.com> Subject: Re: [M3commit] CVS Update: cm3> > Make sure to start with clean build directories and clean before > building with the bootstrapped compiler...> > On Aug 8, 2007, at 8:31 AM, Tony Hosking wrote:> > > Amended bootstrap instructions:> >> > Compiler and runtime extensions to support LONGINT type.> > > > Bootstrapping instructions: build and ship packages in the > > following order> > > > m3cc> > m3middle> > m3linker> > m3front> > m3quake> > cm3> > > > This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3.> > > > Use this new compiler to build and ship the new system:> > > > export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3> > cd cm3/scripts> > ./do-cm3-std.sh realclean> > > ./do-cm3-std.sh buildship> > > > If this is successful then move the new compiler to BINDIR:> > > > mv $CM3 INSTALL_DIR/bin/cm3> >> > On Aug 8, 2007, at 5:50 AM, Antony Hosking wrote:> >> >> CVSROOT: /usr/cvs> >> Changes by: hosking at birch. 07/08/08 05:50:13> >>> >> Modified files:> >> cm3/doc/reference/: arithmetic.html arrays.html conventions.html> >> for.html index.html m3.html m3index.html> >> numbers.html ordinal.html subtypes.html> >> typeops.html word-intf.html> >> cm3/m3-db/smalldb/src/: OSSupport.m3> >> cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 FilePosix.m3> >> SocketPosix.m3> >> cm3/m3-libs/libm3/src/pickle/ver2/: ConvertPacking.m3> >> cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3> >> cm3/m3-libs/m3core/src/C/64BITS/: BasicCtypes.i3> >> cm3/m3-libs/m3core/src/Csupport/Common/: hand.c> >> cm3/m3-libs/m3core/src/runtime/POSIX/: RTOS.m3> >> cm3/m3-libs/m3core/src/runtime/common/: RTTipe.i3 RTTipe.m3> >> cm3/m3-libs/m3core/src/thread/: m3makefile> >> cm3/m3-libs/m3core/src/unix/darwin-generic/: Umman.i3 Unix.i3> >> Utypes.i3> >> m3makefile> >> cm3/m3-libs/m3core/src/unix/freebsd-2/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/unix/freebsd-3/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/unix/freebsd-4/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/word/: m3makefile> >> cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c> >> cm3/m3-sys/m3front/src/: m3makefile> >> cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3> >> cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 Ceiling.m3> >> Dec.m3 First.m3 Floatt.m3> >> Floor.m3 Inc.m3 Last.m3> >> Max.m3 New.m3 Number.m3> >> Ord.m3 Round.m3 Subarray.m3> >> Trunc.m3 Val.m3> >> cm3/m3-sys/m3front/src/builtinTypes/: BuiltinTypes.m3 Int.m3> >> m3makefile> >> cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3> >> WordInsert.m3 WordModule.m3> >> WordNot.m3 WordOr.m3> >> WordRotate.m3 WordShift.m3> >> WordXor.m3> >> cm3/m3-sys/m3front/src/exprs/: AddExpr.m3 ArrayExpr.m3> >> CastExpr.m3 CheckExpr.m3> >> CompareExpr.m3 DivExpr.m3> >> EqualExpr.m3 Expr.m3 ExprParse.m3> >> InExpr.m3 IntegerExpr.i3> >> IntegerExpr.m3 ModExpr.m3> >> MultiplyExpr.m3 NegateExpr.m3> >> ReelExpr.i3 ReelExpr.m3> >> SetExpr.m3 SubscriptExpr.m3> >> SubtractExpr.m3> >> cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 M3Front.m3> >> Marker.m3 Scanner.m3 TipeDesc.i3> >> TipeDesc.m3 Token.i3 Token.m3> >> cm3/m3-sys/m3front/src/stmts/: AssignStmt.m3 DebugStmt.m3> >> ForStmt.m3 TryFinStmt.m3> >> cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3> >> OpenArrayType.m3 SubrangeType.m3> >> Type.i3 Type.m3> >> cm3/m3-sys/m3front/src/values/: Exceptionz.m3 Formal.m3> >> Module.m3 Variable.m3> >> cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.m3> >> M3CG_Check.m3 M3CG_Rd.m3 M3CG_Wr.m3> >> TFloat.i3 TFloat.m3 TInt.i3 TInt.m3> >> TWord.i3 TWord.m3 Target.i3 Target.m3> >> cm3/m3-sys/m3scanner/src/: M3Scanner.i3 M3Scanner.m3> >> cm3/m3-sys/m3tools/src/: M3AST.i3 M3Builtin.m3 M3Const.m3> >> M3Lexer.m3 M3Type.i3 M3Type.m3> >> cm3/m3-tools/m3browser/src/: Main.m3> >> Added files:> >> cm3/doc/reference/: m3logo.gif> >> cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3> >> cm3/m3-sys/m3front/src/builtinLong/: LongAnd.i3 LongAnd.m3> >> LongDivide.i3 LongDivide.m3> >> LongExtract.i3> >> LongExtract.m3 LongGE.i3> >> LongGE.m3 LongGT.i3> >> LongGT.m3 LongInsert.i3> >> LongInsert.m3 LongLE.i3> >> LongLE.m3 LongLT.i3> >> LongLT.m3 LongMinus.i3> >> LongMinus.m3 LongMod.i3> >> LongMod.m3 LongModule.i3> >> LongModule.m3 LongNot.i3> >> LongNot.m3 LongOr.i3> >> LongOr.m3 LongPlus.i3> >> LongPlus.m3 LongRotate.i3> >> LongRotate.m3 LongShift.i3> >> LongShift.m3 LongTimes.i3> >> LongTimes.m3 LongXor.i3> >> LongXor.m3> >> cm3/m3-sys/m3front/src/builtinTypes/: LInt.i3 LInt.m3> >>> >> Log message:> >> Compiler and runtime extensions to support LONGINT type.> >> > >> Bootstrapping instructions: build and ship packages in the > >> following order> >> > >> m3middle> >> m3linker> >> m3front> >> m3quake> >> cm3> >> > >> This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3.> >> > >> Use this new compiler to build and ship the new system:> >> > >> export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3> >> cd cm3/scripts> >> ./do-cm3-std.sh buildship> >> > >> If this is successful then move the new compiler to BINDIR:> >> > >> mv $CM3 INSTALL_DIR/bin/cm3> >> _________________________________________________________________ Recharge--play some free games. Win cool prizes too! http://club.live.com/home.aspx?icid=CLUB_wlmailtextlink -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Sun Aug 26 14:08:59 2007 From: jayk123 at hotmail.com (j k) Date: Sun, 26 Aug 2007 12:08:59 +0000 Subject: [M3commit] CVS Update: cm3 (64 bit integers...) Message-ID: Here is the change:< TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. 16_7fffffffffffffffL ];> (*TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. 16_7fffffffffffffffL ];*)> TYPE T = BITS BITSIZE(LONGINT) FOR [ FIRST(LONGINT) .. LAST(LONGINT) ];Otherwise you get a compile error when the constants overflow at compile time.I still think all this stuff is a little wierd. Can we write off ALPHA_OSF, assert that INTEGER is 32 bits, and introduce a new type that is the same size as a pointer?Again I think the types you want are: INT8, INT16, INT32, INT64 -- signed types with exact sizes, the same on all platforms (INT64 yet missing on Win32) UINT8, UINT16, UINT32, UINT64 -- unsigned types with exact sizes, the same on all platforms (UINT64 yet missing on Win32) SIZE_T, ?SSIZE_T? or ?PTRDIFF_T?-- unsigned and signed types for storing addresses, or sizes of arrays, or array indices, or the differences thereof, PERHAPS guaranteed to be 32 bits or 64 bits INTEGER -- same as SSIZE_T ?or? INT32?? What's the pickle story? Are pickles interchangable beteen Alpha and non-Alpha? Should probably be equiv to SSIZE_T. That's what Alpha has. LONGINT -- same as INT64 - Jay> Date: Sun, 26 Aug 2007 13:43:01 +0000> To: m3commit at elegosoft.com> From: jkrell at elego.de> Subject: [M3commit] CVS Update: cm3> > CVSROOT: /usr/cvs> Changes by: jkrell at birch. 07/08/26 13:43:01> > Modified files:> cm3/m3-libs/libm3/src/types/: Int64.i3 > > Log message:> Fix it to compile for Win32's temporary 32 bit Int64.> Is this correct? I think so.> _________________________________________________________________ Messenger Caf? ? open for fun 24/7. Hot games, cool activities served daily. Visit now. http://cafemessenger.com?ocid=TXT_TAGLM_AugWLtagline -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Sun Aug 26 14:10:37 2007 From: jayk123 at hotmail.com (j k) Date: Sun, 26 Aug 2007 12:10:37 +0000 Subject: [M3commit] CVS Update: cm3 Message-ID: before, I think: t.parent.init_int(abscall.loc, TargetInt.Zero, Type.Int32);doesn't compile.after: t.parent.init_int(abscall.loc, TargetInt.Zero[Target.Pre.Integer], Type.Int32);right? - Jay> Date: Sun, 26 Aug 2007 13:08:11 +0000> To: m3commit at elegosoft.com> From: jkrell at elego.de> Subject: [M3commit] CVS Update: cm3> > CVSROOT: /usr/cvs> Changes by: jkrell at birch. 07/08/26 13:08:11> > Modified files:> cm3/m3-sys/m3back/src/: Codex86.m3 > > Log message:> fix it to compile; unknown if this is correct> _________________________________________________________________ See what you?re getting into?before you go there http://newlivehotmail.com/?ocid=TXT_TAGHM_migration_HM_viral_preview_0507 -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Mon Aug 27 03:26:44 2007 From: jayk123 at hotmail.com (j k) Date: Mon, 27 Aug 2007 01:26:44 +0000 Subject: [M3commit] CVS Update: cm3 (64 bit integers...) Message-ID: I think fixing NT386 should be easy enough given just a /bit/more time.I've been poking through it a bit.. > No way. INTEGER is intended to be abstract -- as defined in the > language spec.I'll have to read it to see what characteristics are guaranteed. Assuming you can have "very large" arrays, approaching the address space, or at least half of it, you are generally stuck with either INTEGER being the size of a pointer, or some "complicated" representation, like with varying precision, or heck even floating point.> This leads us into the swamp, full of nightmares and dragons. I really tend to think "my way" is the clear simple way. (Not "my way", but the way of a LOT of code, some of it very high quality, some of it not). Yeah I am colored by "where I live", in the swamp perhaps. It all seems to work quite well. Granted there is a need sometimes for floating point and very high precision, but the types I list, plus bit fields of any size 1 to 64, satisfy nearly all needs very well and very clearly. You do have to declare that assigning a larger precision integer to a smaller precision integer is a checked operation that can fail. Or some way to turn on/off the checks, though, really.. if you look at the "runtime checks" that Visual C++ offers, if you really want silent truncation, you can & with the appropriate value, e.g. UINT32 b; UINT16 a = (b & 0xffff) will not fail. There is the matter of assuming two's complement or not. Do people still work under the notion that there might be one's complement or arbitrary other representations of fixed small precision integers? Again I'll have to read the spec to see what abstraction INTEGER provides. > You only get the compiler error for NT386, for which LONGINT is 32- Understood. - Jay > From: hosking at cs.purdue.edu> Date: Sun, 26 Aug 2007 11:28:49 -0400> To: jay.krell at cornell.edu> CC: m3commit at elegosoft.com> Subject: Re: [M3commit] CVS Update: cm3 (64 bit integers...)> > > On Aug 26, 2007, at 8:08 AM, j k wrote:> > > Here is the change:> >> > < TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. > > 16_7fffffffffffffffL ];> >> > > (*TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. > > 16_7fffffffffffffffL ];*)> > > TYPE T = BITS BITSIZE(LONGINT) FOR [ FIRST(LONGINT) .. LAST > > (LONGINT) ];> > This should be OK.> > > Otherwise you get a compile error when the constants overflow at > > compile time.> > You only get the compiler error for NT386, for which LONGINT is 32- > bits because the non-gcc backend can handle only 32-bit integers. > What we really need is for NT386 to use a back-end that is capable of > 64 bits. NT386GNU may be the easiest route to this.> > > I still think all this stuff is a little wierd. Can we write off > > ALPHA_OSF, assert that INTEGER is 32 bits, and introduce a new type > > that is the same size as a pointer?> > No way. INTEGER is intended to be abstract -- as defined in the > language spec.> > > Again I think the types you want are:> > INT8, INT16, INT32, INT64 -- signed types with exact sizes, the > > same on all platforms (INT64 yet missing on Win32)> > UINT8, UINT16, UINT32, UINT64 -- unsigned types with exact > > sizes, the same on all platforms (UINT64 yet missing on Win32)> > SIZE_T, ?SSIZE_T? or ?PTRDIFF_T?-- unsigned and signed types for > > storing addresses, or sizes of arrays, or array indices, or the > > differences thereof, PERHAPS guaranteed to be 32 bits or 64 bits> > INTEGER -- same as SSIZE_T ?or? INT32??> > What's the pickle story? Are pickles interchangable beteen > > Alpha and non-Alpha?> > Should probably be equiv to SSIZE_T. That's what Alpha has.> > LONGINT -- same as INT64> > This leads us into the swamp, full of nightmares and dragons.> > >> > - Jay> >> >> > > Date: Sun, 26 Aug 2007 13:43:01 +0000> > > To: m3commit at elegosoft.com> > > From: jkrell at elego.de> > > Subject: [M3commit] CVS Update: cm3> > >> > > CVSROOT: /usr/cvs> > > Changes by: jkrell at birch. 07/08/26 13:43:01> > >> > > Modified files:> > > cm3/m3-libs/libm3/src/types/: Int64.i3> > >> > > Log message:> > > Fix it to compile for Win32's temporary 32 bit Int64.> > > Is this correct? I think so.> > >> >> > Messenger Caf? ? open for fun 24/7. Hot games, cool activities > > served daily. Visit now.> _________________________________________________________________ Recharge--play some free games. Win cool prizes too! http://club.live.com/home.aspx?icid=CLUB_wlmailtextlink -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Mon Aug 27 03:27:27 2007 From: jayk123 at hotmail.com (j k) Date: Mon, 27 Aug 2007 01:27:27 +0000 Subject: [M3commit] CVS Update: cm3 Message-ID: Like..it was an array instead of a value, something like that. - Jay > From: hosking at cs.purdue.edu> Date: Sun, 26 Aug 2007 11:29:21 -0400> To: jkrell at elego.de> CC: m3commit at elegosoft.com> Subject: Re: [M3commit] CVS Update: cm3> > Why did this not compile?> > On Aug 26, 2007, at 1:08 PM, Jay Krell wrote:> > > CVSROOT: /usr/cvs> > Changes by: jkrell at birch. 07/08/26 13:08:11> >> > Modified files:> > cm3/m3-sys/m3back/src/: Codex86.m3> >> > Log message:> > fix it to compile; unknown if this is correct> _________________________________________________________________ See what you?re getting into?before you go there http://newlivehotmail.com/?ocid=TXT_TAGHM_migration_HM_viral_preview_0507 -------------- next part -------------- An HTML attachment was scrubbed... URL: From hosking at elego.de Fri Aug 3 01:21:38 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:21:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802232151.65C7510D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:21:38 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTCollector.m3 Log message: RTParams really do need to be set during Init instead of at module initialization. From hosking at elego.de Fri Aug 3 01:22:37 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:22:37 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802232237.6326410D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:22:37 Modified files: cm3/m3-libs/m3core/src/unix/linux-libc6/: Upthread.i3 Log message: Change definition of pthread_mutex_init to permit NIL 'attr' argument. From hosking at elego.de Fri Aug 3 01:23:04 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:23:04 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802232304.2C5E210D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:23:04 Modified files: cm3/m3-libs/m3core/src/unix/darwin-generic/: Upthread.i3 Log message: Change definition of pthread_mutex_init to permit NIL 'attr' argument. From hosking at elego.de Fri Aug 3 01:23:22 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:23:22 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802232322.B910810D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:23:22 Modified files: cm3/m3-libs/m3core/src/unix/solaris-2-x/: Upthread.i3 Log message: Change definition of pthread_mutex_init to permit NIL 'attr' argument. From hosking at elego.de Fri Aug 3 01:30:18 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:30:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802233019.E456B10D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:30:18 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Rework PTHREADS subsystem to map every M3 MUTEX to a pthread mutex and every M3 Condition to a pthread condition. This will improve scalability. Thanks to Dragisa Duric for his comments and suggestions for how to improve pthread-based threading. This update also fixes a major problem with IOWait and IOAlertWait that was causing major problems for GUI applications like mentor. I am happy to report that mentor now runs properly (subject to associated bugfixes in the GUI packages). From hosking at elego.de Fri Aug 3 01:32:25 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:32:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802233232.EF29C10D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:32:25 Modified files: cm3/m3-ui/ui/src/vbt/: VBTClass.m3 Log message: SyncDefault had a nasty race in it. The handshake requires that the child be released and reacquired while the parent is still held. From hosking at elego.de Fri Aug 3 01:33:34 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 1:33:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070802233334.E750B10D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 01:33:34 Modified files: cm3/m3-ui/ui/src/xvbt/: XClient.m3 Log message: Sync had a nasty race in it. The handshake requires that the children be released and reacquired while the parent is still held. From hosking at elego.de Fri Aug 3 18:09:26 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 3 Aug 2007 18:09:26 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070803160926.7B83310D42E3@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/03 18:09:26 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Fix race between Fork and Join. Make sure thread is truly up and running before returning from fork. From hosking at elego.de Sat Aug 4 18:30:42 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 4 Aug 2007 18:30:42 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070804163042.6EF6010D43A8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/04 18:30:42 Modified files: cm3/m3-ui/mgkit/src/: GraphVBT.m3 Log message: Fix deadlock! Need to release and acquire locks in reverse order to respect protocol that graph is locked before graph.mgv. From hosking at elego.de Sat Aug 4 19:28:16 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 4 Aug 2007 19:28:16 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070804172823.428DA10D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/04 19:28:16 Modified files: cm3/m3-ui/ui/src/vbt/: VBTClass.m3 Log message: Revert previous change. Bad assumptions made. From hosking at elego.de Sat Aug 4 19:28:36 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 4 Aug 2007 19:28:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070804172837.CF1B510D42EE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/04 19:28:36 Modified files: cm3/m3-ui/ui/src/xvbt/: XClient.m3 Log message: Revert previous change. Bad assumptions made. From hosking at elego.de Sat Aug 4 19:44:10 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 4 Aug 2007 19:44:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070804174423.95ACE10D4302@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/04 19:44:10 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Add debug support for dumping all threads. Still issues on Darwin. May need to revert to original approach with explicit queues. From hosking at elego.de Sun Aug 5 21:40:59 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 5 Aug 2007 21:40:59 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070805194059.556B610D437A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/05 21:40:59 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Make sure to test alert before returning from XWait. From hosking at elego.de Mon Aug 6 18:35:44 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 6 Aug 2007 18:35:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070806163544.1C97C10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/06 18:35:44 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: The problem with the pure pthread condition = M3 condition strategy is that it doesn't play well with alerts on Mac OS X. It turns out signalling the alerted thread won't wake it up from pthread_cond_wait or pthread_cond_timedwait, as it will under Linux. This is a problem, since it means alerted threads can hang around until the main thread exits, leaving no thread active. Moreover, the timeout does not seem to get delivered even to a thread waiting on pthread_cond_timedwait, so we can't even use a polling approach. Thus, I am reverting to the older style of condition using explicit queues and a per-thread wait condition, which we can signal on alert to wake up threads in pthread_cond_wait/pthread_cond_timedwait. Sigh! In any case, this thread implementation is tested on both Mac OSX Darwin and Linux. i.e., GUI apps like mentor work correctly. I will look at coming up with a hybrid implementation that retains 1-1 mapping of M3 mutexes to pthread mutexes, but implements M3 conditions as they are in this update, with explicit queues. That way, we will have scalability of avoiding global locks for mutexes, while retaining desirable M3 alert behavior. From jdp at polstra.com Mon Aug 6 18:55:40 2007 From: jdp at polstra.com (John Polstra) Date: Mon, 06 Aug 2007 09:55:40 -0700 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20070806163544.1C97C10D4407@birch.elegosoft.com> References: <20070806163544.1C97C10D4407@birch.elegosoft.com> Message-ID: <46B7528C.4040901@polstra.com> Antony Hosking wrote: > Log message: > The problem with the pure pthread condition = M3 condition strategy is that it > doesn't play well with alerts on Mac OS X. It turns out signalling the > alerted thread won't wake it up from pthread_cond_wait or > pthread_cond_timedwait, as it will under Linux. The MacOSX behavior is OK according to POSIX, so it's good that you're making this change. John From hosking at elego.de Mon Aug 6 21:22:02 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 6 Aug 2007 21:22:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070806192202.3171F10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/06 21:22:02 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Added explicit variable state field for later use. Minor edits. From hosking at elego.de Wed Aug 8 05:50:13 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 8 Aug 2007 5:50:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070808035016.A852410D440E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/08 05:50:13 Modified files: cm3/doc/reference/: arithmetic.html arrays.html conventions.html for.html index.html m3.html m3index.html numbers.html ordinal.html subtypes.html typeops.html word-intf.html cm3/m3-db/smalldb/src/: OSSupport.m3 cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 FilePosix.m3 SocketPosix.m3 cm3/m3-libs/libm3/src/pickle/ver2/: ConvertPacking.m3 cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3 cm3/m3-libs/m3core/src/C/64BITS/: BasicCtypes.i3 cm3/m3-libs/m3core/src/Csupport/Common/: hand.c cm3/m3-libs/m3core/src/runtime/POSIX/: RTOS.m3 cm3/m3-libs/m3core/src/runtime/common/: RTTipe.i3 RTTipe.m3 cm3/m3-libs/m3core/src/thread/: m3makefile cm3/m3-libs/m3core/src/unix/darwin-generic/: Umman.i3 Unix.i3 Utypes.i3 m3makefile cm3/m3-libs/m3core/src/unix/freebsd-2/: Umman.i3 Unix.i3 Utypes.i3 m3makefile cm3/m3-libs/m3core/src/unix/freebsd-3/: Umman.i3 Unix.i3 Utypes.i3 m3makefile cm3/m3-libs/m3core/src/unix/freebsd-4/: Umman.i3 Unix.i3 Utypes.i3 m3makefile cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Umman.i3 Unix.i3 Utypes.i3 m3makefile cm3/m3-libs/m3core/src/word/: m3makefile cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c cm3/m3-sys/m3front/src/: m3makefile cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3 cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 Ceiling.m3 Dec.m3 First.m3 Floatt.m3 Floor.m3 Inc.m3 Last.m3 Max.m3 New.m3 Number.m3 Ord.m3 Round.m3 Subarray.m3 Trunc.m3 Val.m3 cm3/m3-sys/m3front/src/builtinTypes/: BuiltinTypes.m3 Int.m3 m3makefile cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3 WordInsert.m3 WordModule.m3 WordNot.m3 WordOr.m3 WordRotate.m3 WordShift.m3 WordXor.m3 cm3/m3-sys/m3front/src/exprs/: AddExpr.m3 ArrayExpr.m3 CastExpr.m3 CheckExpr.m3 CompareExpr.m3 DivExpr.m3 EqualExpr.m3 Expr.m3 ExprParse.m3 InExpr.m3 IntegerExpr.i3 IntegerExpr.m3 ModExpr.m3 MultiplyExpr.m3 NegateExpr.m3 ReelExpr.i3 ReelExpr.m3 SetExpr.m3 SubscriptExpr.m3 SubtractExpr.m3 cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 M3Front.m3 Marker.m3 Scanner.m3 TipeDesc.i3 TipeDesc.m3 Token.i3 Token.m3 cm3/m3-sys/m3front/src/stmts/: AssignStmt.m3 DebugStmt.m3 ForStmt.m3 TryFinStmt.m3 cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3 OpenArrayType.m3 SubrangeType.m3 Type.i3 Type.m3 cm3/m3-sys/m3front/src/values/: Exceptionz.m3 Formal.m3 Module.m3 Variable.m3 cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.m3 M3CG_Check.m3 M3CG_Rd.m3 M3CG_Wr.m3 TFloat.i3 TFloat.m3 TInt.i3 TInt.m3 TWord.i3 TWord.m3 Target.i3 Target.m3 cm3/m3-sys/m3scanner/src/: M3Scanner.i3 M3Scanner.m3 cm3/m3-sys/m3tools/src/: M3AST.i3 M3Builtin.m3 M3Const.m3 M3Lexer.m3 M3Type.i3 M3Type.m3 cm3/m3-tools/m3browser/src/: Main.m3 Added files: cm3/doc/reference/: m3logo.gif cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3 cm3/m3-sys/m3front/src/builtinLong/: LongAnd.i3 LongAnd.m3 LongDivide.i3 LongDivide.m3 LongExtract.i3 LongExtract.m3 LongGE.i3 LongGE.m3 LongGT.i3 LongGT.m3 LongInsert.i3 LongInsert.m3 LongLE.i3 LongLE.m3 LongLT.i3 LongLT.m3 LongMinus.i3 LongMinus.m3 LongMod.i3 LongMod.m3 LongModule.i3 LongModule.m3 LongNot.i3 LongNot.m3 LongOr.i3 LongOr.m3 LongPlus.i3 LongPlus.m3 LongRotate.i3 LongRotate.m3 LongShift.i3 LongShift.m3 LongTimes.i3 LongTimes.m3 LongXor.i3 LongXor.m3 cm3/m3-sys/m3front/src/builtinTypes/: LInt.i3 LInt.m3 Log message: Compiler and runtime extensions to support LONGINT type. Bootstrapping instructions: build and ship packages in the following order m3middle m3linker m3front m3quake cm3 This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. Use this new compiler to build and ship the new system: export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 cd cm3/scripts ./do-cm3-std.sh buildship If this is successful then move the new compiler to BINDIR: mv $CM3 INSTALL_DIR/bin/cm3 From hosking at elego.de Wed Aug 8 14:24:10 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 8 Aug 2007 14:24:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070808122410.B6D4D10D434B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/08 14:24:10 Added files: cm3/m3-sys/m3front/src/builtinLong/: m3makefile Log message: Ommitted this. From hosking at cs.purdue.edu Wed Aug 8 14:39:34 2007 From: hosking at cs.purdue.edu (Tony Hosking) Date: Wed, 8 Aug 2007 08:39:34 -0400 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <9E7B2BE1-36D2-4D32-926D-CF70D7BBBC85@cs.purdue.edu> References: <20070808035016.A852410D440E@birch.elegosoft.com> <9E7B2BE1-36D2-4D32-926D-CF70D7BBBC85@cs.purdue.edu> Message-ID: <0B1FC476-C32B-4E57-8DC7-2856E85C1EF8@cs.purdue.edu> Make sure to start with clean build directories and clean before building with the bootstrapped compiler... On Aug 8, 2007, at 8:31 AM, Tony Hosking wrote: > Amended bootstrap instructions: > > Compiler and runtime extensions to support LONGINT type. > > Bootstrapping instructions: build and ship packages in the > following order > > m3cc > m3middle > m3linker > m3front > m3quake > cm3 > > This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. > > Use this new compiler to build and ship the new system: > > export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 > cd cm3/scripts ./do-cm3-std.sh realclean > ./do-cm3-std.sh buildship > > If this is successful then move the new compiler to BINDIR: > > mv $CM3 INSTALL_DIR/bin/cm3 > > On Aug 8, 2007, at 5:50 AM, Antony Hosking wrote: > >> CVSROOT: /usr/cvs >> Changes by: hosking at birch. 07/08/08 05:50:13 >> >> Modified files: >> cm3/doc/reference/: arithmetic.html arrays.html conventions.html >> for.html index.html m3.html m3index.html >> numbers.html ordinal.html subtypes.html >> typeops.html word-intf.html >> cm3/m3-db/smalldb/src/: OSSupport.m3 >> cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 FilePosix.m3 >> SocketPosix.m3 >> cm3/m3-libs/libm3/src/pickle/ver2/: ConvertPacking.m3 >> cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3 >> cm3/m3-libs/m3core/src/C/64BITS/: BasicCtypes.i3 >> cm3/m3-libs/m3core/src/Csupport/Common/: hand.c >> cm3/m3-libs/m3core/src/runtime/POSIX/: RTOS.m3 >> cm3/m3-libs/m3core/src/runtime/common/: RTTipe.i3 RTTipe.m3 >> cm3/m3-libs/m3core/src/thread/: m3makefile >> cm3/m3-libs/m3core/src/unix/darwin-generic/: Umman.i3 Unix.i3 >> Utypes.i3 >> m3makefile >> cm3/m3-libs/m3core/src/unix/freebsd-2/: Umman.i3 Unix.i3 >> Utypes.i3 m3makefile >> cm3/m3-libs/m3core/src/unix/freebsd-3/: Umman.i3 Unix.i3 >> Utypes.i3 m3makefile >> cm3/m3-libs/m3core/src/unix/freebsd-4/: Umman.i3 Unix.i3 >> Utypes.i3 m3makefile >> cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Umman.i3 Unix.i3 >> Utypes.i3 m3makefile >> cm3/m3-libs/m3core/src/word/: m3makefile >> cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c >> cm3/m3-sys/m3front/src/: m3makefile >> cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3 >> cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 Ceiling.m3 >> Dec.m3 First.m3 Floatt.m3 >> Floor.m3 Inc.m3 Last.m3 >> Max.m3 New.m3 Number.m3 >> Ord.m3 Round.m3 Subarray.m3 >> Trunc.m3 Val.m3 >> cm3/m3-sys/m3front/src/builtinTypes/: BuiltinTypes.m3 Int.m3 >> m3makefile >> cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3 >> WordInsert.m3 WordModule.m3 >> WordNot.m3 WordOr.m3 >> WordRotate.m3 WordShift.m3 >> WordXor.m3 >> cm3/m3-sys/m3front/src/exprs/: AddExpr.m3 ArrayExpr.m3 >> CastExpr.m3 CheckExpr.m3 >> CompareExpr.m3 DivExpr.m3 >> EqualExpr.m3 Expr.m3 ExprParse.m3 >> InExpr.m3 IntegerExpr.i3 >> IntegerExpr.m3 ModExpr.m3 >> MultiplyExpr.m3 NegateExpr.m3 >> ReelExpr.i3 ReelExpr.m3 >> SetExpr.m3 SubscriptExpr.m3 >> SubtractExpr.m3 >> cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 M3Front.m3 >> Marker.m3 Scanner.m3 TipeDesc.i3 >> TipeDesc.m3 Token.i3 Token.m3 >> cm3/m3-sys/m3front/src/stmts/: AssignStmt.m3 DebugStmt.m3 >> ForStmt.m3 TryFinStmt.m3 >> cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3 >> OpenArrayType.m3 SubrangeType.m3 >> Type.i3 Type.m3 >> cm3/m3-sys/m3front/src/values/: Exceptionz.m3 Formal.m3 >> Module.m3 Variable.m3 >> cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.m3 >> M3CG_Check.m3 M3CG_Rd.m3 M3CG_Wr.m3 >> TFloat.i3 TFloat.m3 TInt.i3 TInt.m3 >> TWord.i3 TWord.m3 Target.i3 Target.m3 >> cm3/m3-sys/m3scanner/src/: M3Scanner.i3 M3Scanner.m3 >> cm3/m3-sys/m3tools/src/: M3AST.i3 M3Builtin.m3 M3Const.m3 >> M3Lexer.m3 M3Type.i3 M3Type.m3 >> cm3/m3-tools/m3browser/src/: Main.m3 >> Added files: >> cm3/doc/reference/: m3logo.gif >> cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3 >> cm3/m3-sys/m3front/src/builtinLong/: LongAnd.i3 LongAnd.m3 >> LongDivide.i3 LongDivide.m3 >> LongExtract.i3 >> LongExtract.m3 LongGE.i3 >> LongGE.m3 LongGT.i3 >> LongGT.m3 LongInsert.i3 >> LongInsert.m3 LongLE.i3 >> LongLE.m3 LongLT.i3 >> LongLT.m3 LongMinus.i3 >> LongMinus.m3 LongMod.i3 >> LongMod.m3 LongModule.i3 >> LongModule.m3 LongNot.i3 >> LongNot.m3 LongOr.i3 >> LongOr.m3 LongPlus.i3 >> LongPlus.m3 LongRotate.i3 >> LongRotate.m3 LongShift.i3 >> LongShift.m3 LongTimes.i3 >> LongTimes.m3 LongXor.i3 >> LongXor.m3 >> cm3/m3-sys/m3front/src/builtinTypes/: LInt.i3 LInt.m3 >> >> Log message: >> Compiler and runtime extensions to support LONGINT type. >> >> Bootstrapping instructions: build and ship packages in the >> following order >> >> m3middle >> m3linker >> m3front >> m3quake >> cm3 >> >> This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. >> >> Use this new compiler to build and ship the new system: >> >> export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 >> cd cm3/scripts >> ./do-cm3-std.sh buildship >> >> If this is successful then move the new compiler to BINDIR: >> >> mv $CM3 INSTALL_DIR/bin/cm3 > From hosking at cs.purdue.edu Wed Aug 8 14:31:36 2007 From: hosking at cs.purdue.edu (Tony Hosking) Date: Wed, 8 Aug 2007 08:31:36 -0400 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20070808035016.A852410D440E@birch.elegosoft.com> References: <20070808035016.A852410D440E@birch.elegosoft.com> Message-ID: <9E7B2BE1-36D2-4D32-926D-CF70D7BBBC85@cs.purdue.edu> Amended bootstrap instructions: Compiler and runtime extensions to support LONGINT type. Bootstrapping instructions: build and ship packages in the following order m3cc m3middle m3linker m3front m3quake cm3 This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. Use this new compiler to build and ship the new system: export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 cd cm3/scripts ./do-cm3-std.sh buildship If this is successful then move the new compiler to BINDIR: mv $CM3 INSTALL_DIR/bin/cm3 On Aug 8, 2007, at 5:50 AM, Antony Hosking wrote: > CVSROOT: /usr/cvs > Changes by: hosking at birch. 07/08/08 05:50:13 > > Modified files: > cm3/doc/reference/: arithmetic.html arrays.html conventions.html > for.html index.html m3.html m3index.html > numbers.html ordinal.html subtypes.html > typeops.html word-intf.html > cm3/m3-db/smalldb/src/: OSSupport.m3 > cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 FilePosix.m3 > SocketPosix.m3 > cm3/m3-libs/libm3/src/pickle/ver2/: ConvertPacking.m3 > cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3 > cm3/m3-libs/m3core/src/C/64BITS/: BasicCtypes.i3 > cm3/m3-libs/m3core/src/Csupport/Common/: hand.c > cm3/m3-libs/m3core/src/runtime/POSIX/: RTOS.m3 > cm3/m3-libs/m3core/src/runtime/common/: RTTipe.i3 RTTipe.m3 > cm3/m3-libs/m3core/src/thread/: m3makefile > cm3/m3-libs/m3core/src/unix/darwin-generic/: Umman.i3 Unix.i3 > Utypes.i3 > m3makefile > cm3/m3-libs/m3core/src/unix/freebsd-2/: Umman.i3 Unix.i3 > Utypes.i3 m3makefile > cm3/m3-libs/m3core/src/unix/freebsd-3/: Umman.i3 Unix.i3 > Utypes.i3 m3makefile > cm3/m3-libs/m3core/src/unix/freebsd-4/: Umman.i3 Unix.i3 > Utypes.i3 m3makefile > cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Umman.i3 Unix.i3 > Utypes.i3 m3makefile > cm3/m3-libs/m3core/src/word/: m3makefile > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > cm3/m3-sys/m3front/src/: m3makefile > cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3 > cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 Ceiling.m3 > Dec.m3 First.m3 Floatt.m3 > Floor.m3 Inc.m3 Last.m3 > Max.m3 New.m3 Number.m3 > Ord.m3 Round.m3 Subarray.m3 > Trunc.m3 Val.m3 > cm3/m3-sys/m3front/src/builtinTypes/: BuiltinTypes.m3 Int.m3 > m3makefile > cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3 > WordInsert.m3 WordModule.m3 > WordNot.m3 WordOr.m3 > WordRotate.m3 WordShift.m3 > WordXor.m3 > cm3/m3-sys/m3front/src/exprs/: AddExpr.m3 ArrayExpr.m3 > CastExpr.m3 CheckExpr.m3 > CompareExpr.m3 DivExpr.m3 > EqualExpr.m3 Expr.m3 ExprParse.m3 > InExpr.m3 IntegerExpr.i3 > IntegerExpr.m3 ModExpr.m3 > MultiplyExpr.m3 NegateExpr.m3 > ReelExpr.i3 ReelExpr.m3 > SetExpr.m3 SubscriptExpr.m3 > SubtractExpr.m3 > cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 M3Front.m3 > Marker.m3 Scanner.m3 TipeDesc.i3 > TipeDesc.m3 Token.i3 Token.m3 > cm3/m3-sys/m3front/src/stmts/: AssignStmt.m3 DebugStmt.m3 > ForStmt.m3 TryFinStmt.m3 > cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3 > OpenArrayType.m3 SubrangeType.m3 > Type.i3 Type.m3 > cm3/m3-sys/m3front/src/values/: Exceptionz.m3 Formal.m3 > Module.m3 Variable.m3 > cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.m3 > M3CG_Check.m3 M3CG_Rd.m3 M3CG_Wr.m3 > TFloat.i3 TFloat.m3 TInt.i3 TInt.m3 > TWord.i3 TWord.m3 Target.i3 Target.m3 > cm3/m3-sys/m3scanner/src/: M3Scanner.i3 M3Scanner.m3 > cm3/m3-sys/m3tools/src/: M3AST.i3 M3Builtin.m3 M3Const.m3 > M3Lexer.m3 M3Type.i3 M3Type.m3 > cm3/m3-tools/m3browser/src/: Main.m3 > Added files: > cm3/doc/reference/: m3logo.gif > cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3 > cm3/m3-sys/m3front/src/builtinLong/: LongAnd.i3 LongAnd.m3 > LongDivide.i3 LongDivide.m3 > LongExtract.i3 > LongExtract.m3 LongGE.i3 > LongGE.m3 LongGT.i3 > LongGT.m3 LongInsert.i3 > LongInsert.m3 LongLE.i3 > LongLE.m3 LongLT.i3 > LongLT.m3 LongMinus.i3 > LongMinus.m3 LongMod.i3 > LongMod.m3 LongModule.i3 > LongModule.m3 LongNot.i3 > LongNot.m3 LongOr.i3 > LongOr.m3 LongPlus.i3 > LongPlus.m3 LongRotate.i3 > LongRotate.m3 LongShift.i3 > LongShift.m3 LongTimes.i3 > LongTimes.m3 LongXor.i3 > LongXor.m3 > cm3/m3-sys/m3front/src/builtinTypes/: LInt.i3 LInt.m3 > > Log message: > Compiler and runtime extensions to support LONGINT type. > > Bootstrapping instructions: build and ship packages in the > following order > > m3middle > m3linker > m3front > m3quake > cm3 > > This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. > > Use this new compiler to build and ship the new system: > > export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 > cd cm3/scripts > ./do-cm3-std.sh buildship > > If this is successful then move the new compiler to BINDIR: > > mv $CM3 INSTALL_DIR/bin/cm3 From rodney at elego.de Wed Aug 8 22:56:34 2007 From: rodney at elego.de (Rodney M. Bates) Date: Wed, 8 Aug 2007 22:56:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070808205644.DBE1410D43CF@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/08/08 22:56:34 Added files: cm3/doc/reference/complete/: m3-defn-complete.html m3-defn-complete.ps m3-defn-complete.tex Log message: Initial checkin, prior to updates. The three files are not yet known to be consistent. From rodney at elego.de Thu Aug 9 04:15:59 2007 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 9 Aug 2007 4:15:59 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070809021559.3573D10D4407@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/08/09 04:15:59 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: m3-util.c Log message: Fix to display numeric escapes in CHAR and TEXT values in Modula-3 octal, instead of hex. From hosking at cs.purdue.edu Sat Aug 11 19:14:21 2007 From: hosking at cs.purdue.edu (Tony Hosking) Date: Sat, 11 Aug 2007 13:14:21 -0400 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: Message-ID: <078AEEB2-F545-43ED-B01D-2783D318C4F9@cs.purdue.edu> Did you rebuild the backend? I have built this on Darwin x86 and Linux x86 without problems. On Aug 11, 2007, at 1:06 PM, j k wrote: > I can build the compiler, but, youch, can't build m3core\long.m3: > > "..\src\word\Long.m3", line 11: Unknown type of size other than > dword in movOp > > The x86 back end needs work..I'll see if I can't just provide this > stuff in C and avoid understanding the backend much.. > > - Jay > > > From: hosking at cs.purdue.edu > > Date: Wed, 8 Aug 2007 08:39:34 -0400 > > To: hosking at cs.purdue.edu > > CC: m3devel at elegosoft.com; m3commit at elegosoft.com > > Subject: Re: [M3commit] CVS Update: cm3 > > > > Make sure to start with clean build directories and clean before > > building with the bootstrapped compiler... > > > > On Aug 8, 2007, at 8:31 AM, Tony Hosking wrote: > > > > > Amended bootstrap instructions: > > > > > > Compiler and runtime extensions to support LONGINT type. > > > > > > Bootstrapping instructions: build and ship packages in the > > > following order > > > > > > m3cc > > > m3middle > > > m3linker > > > m3front > > > m3quake > > > cm3 > > > > > > This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. > > > > > > Use this new compiler to build and ship the new system: > > > > > > export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 > > > cd cm3/scripts > > > > ./do-cm3-std.sh realclean > > > > > ./do-cm3-std.sh buildship > > > > > > If this is successful then move the new compiler to BINDIR: > > > > > > mv $CM3 INSTALL_DIR/bin/cm3 > > > > > > On Aug 8, 2007, at 5:50 AM, Antony Hosking wrote: > > > > > >> CVSROOT: /usr/cvs > > >> Changes by: hosking at birch. 07/08/08 05:50:13 > > >> > > >> Modified files: > > >> cm3/doc/reference/: arithmetic.html arrays.html conventions.html > > >> for.html index.html m3.html m3index.html > > >> numbers.html ordinal.html subtypes.html > > >> typeops.html word-intf.html > > >> cm3/m3-db/smalldb/src/: OSSupport.m3 > > >> cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 FilePosix.m3 > > >> SocketPosix.m3 > > >> cm3/m3-libs/libm3/src/pickle/ver2/: ConvertPacking.m3 > > >> cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3 > > >> cm3/m3-libs/m3core/src/C/64BITS/: BasicCtypes.i3 > > >> cm3/m3-libs/m3core/src/Csupport/Common/: hand.c > > >> cm3/m3-libs/m3core/src/runtime/POSIX/: RTOS.m3 > > >> cm3/m3-libs/m3core/src/runtime/common/: RTTipe.i3 RTTipe.m3 > > >> cm3/m3-libs/m3core/src/thread/: m3makefile > > >> cm3/m3-libs/m3core/src/unix/darwin-generic/: Umman.i3 Unix.i3 > > >> Utypes.i3 > > >> m3makefile > > >> cm3/m3-libs/m3core/src/unix/freebsd-2/: Umman.i3 Unix.i3 > > >> Utypes.i3 m3makefile > > >> cm3/m3-libs/m3core/src/unix/freebsd-3/: Umman.i3 Unix.i3 > > >> Utypes.i3 m3makefile > > >> cm3/m3-libs/m3core/src/unix/freebsd-4/: Umman.i3 Unix.i3 > > >> Utypes.i3 m3makefile > > >> cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Umman.i3 Unix.i3 > > >> Utypes.i3 m3makefile > > >> cm3/m3-libs/m3core/src/word/: m3makefile > > >> cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > >> cm3/m3-sys/m3front/src/: m3makefile > > >> cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3 > > >> cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 Ceiling.m3 > > >> Dec.m3 First.m3 Floatt.m3 > > >> Floor.m3 Inc.m3 Last.m3 > > >> Max.m3 New.m3 Number.m3 > > >> Ord.m3 Round.m3 Subarray.m3 > > >> Trunc.m3 Val.m3 > > >> cm3/m3-sys/m3front/src/builtinTypes/: BuiltinTypes.m3 Int.m3 > > >> m3makefile > > >> cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3 > > >> WordInsert.m3 WordModule.m3 > > >> WordNot.m3 WordOr.m3 > > >> WordRotate.m3 WordShift.m3 > > >> WordXor.m3 > > >> cm3/m3-sys/m3front/src/exprs/: AddExpr.m3 ArrayExpr.m3 > > >> CastExpr.m3 CheckExpr.m3 > > >> CompareExpr.m3 DivExpr.m3 > > >> EqualExpr.m3 Expr.m3 ExprParse.m3 > > >> InExpr.m3 IntegerExpr.i3 > > >> IntegerExpr.m3 ModExpr.m3 > > >> MultiplyExpr.m3 NegateExpr.m3 > > >> ReelExpr.i3 ReelExpr.m3 > > >> SetExpr.m3 SubscriptExpr.m3 > > >> SubtractExpr.m3 > > >> cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 M3Front.m3 > > >> Marker.m3 Scanner.m3 TipeDesc.i3 > > >> TipeDesc.m3 Token.i3 Token.m3 > > >> cm3/m3-sys/m3front/src/stmts/: AssignStmt.m3 DebugStmt.m3 > > >> ForStmt.m3 TryFinStmt.m3 > > >> cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3 > > >> OpenArrayType.m3 SubrangeType.m3 > > >> Type.i3 Type.m3 > > >> cm3/m3-sys/m3front/src/values/: Exceptionz.m3 Formal.m3 > > >> Module.m3 Variable.m3 > > >> cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.m3 > > >> M3CG_Check.m3 M3CG_Rd.m3 M3CG_Wr.m3 > > >> TFloat.i3 TFloat.m3 TInt.i3 TInt.m3 > > >> TWord.i3 TWord.m3 Target.i3 Target.m3 > > >> cm3/m3-sys/m3scanner/src/: M3Scanner.i3 M3Scanner.m3 > > >> cm3/m3-sys/m3tools/src/: M3AST.i3 M3Builtin.m3 M3Const.m3 > > >> M3Lexer.m3 M3Type.i3 M3Type.m3 > > >> cm3/m3-tools/m3browser/src/: Main.m3 > > >> Added files: > > >> cm3/doc/reference/: m3logo.gif > > >> cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3 > > >> cm3/m3-sys/m3front/src/builtinLong/: LongAnd.i3 LongAnd.m3 > > >> LongDivide.i3 LongDivide.m3 > > >> LongExtract.i3 > > >> LongExtract.m3 LongGE.i3 > > >> LongGE.m3 LongGT.i3 > > >> LongGT.m3 LongInsert.i3 > > >> LongInsert.m3 LongLE.i3 > > >> LongLE.m3 LongLT.i3 > > >> LongLT.m3 LongMinus.i3 > > >> LongMinus.m3 LongMod.i3 > > >> LongMod.m3 LongModule.i3 > > >> LongModule.m3 LongNot.i3 > > >> LongNot.m3 LongOr.i3 > > >> LongOr.m3 LongPlus.i3 > > >> LongPlus.m3 LongRotate.i3 > > >> LongRotate.m3 LongShift.i3 > > >> LongShift.m3 LongTimes.i3 > > >> LongTimes.m3 LongXor.i3 > > >> LongXor.m3 > > >> cm3/m3-sys/m3front/src/builtinTypes/: LInt.i3 LInt.m3 > > >> > > >> Log message: > > >> Compiler and runtime extensions to support LONGINT type. > > >> > > >> Bootstrapping instructions: build and ship packages in the > > >> following order > > >> > > >> m3middle > > >> m3linker > > >> m3front > > >> m3quake > > >> cm3 > > >> > > >> This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3. > > >> > > >> Use this new compiler to build and ship the new system: > > >> > > >> export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3 > > >> cd cm3/scripts > > >> ./do-cm3-std.sh buildship > > >> > > >> If this is successful then move the new compiler to BINDIR: > > >> > > >> mv $CM3 INSTALL_DIR/bin/cm3 > > > > > > > > Recharge--play some free games. Win cool prizes too! Play It! From hosking at elego.de Sat Aug 11 19:19:09 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 11 Aug 2007 19:19:09 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070811171909.737AD10D4342@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/11 19:19:09 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Fix quotes. From jayk123 at hotmail.com Sat Aug 11 19:06:57 2007 From: jayk123 at hotmail.com (j k) Date: Sat, 11 Aug 2007 17:06:57 +0000 Subject: [M3commit] CVS Update: cm3 Message-ID: I can build the compiler, but, youch, can't build m3core\long.m3: "..\src\word\Long.m3", line 11: Unknown type of size other than dword in movOp The x86 back end needs work..I'll see if I can't just provide this stuff in C and avoid understanding the backend much.. - Jay> From: hosking at cs.purdue.edu> Date: Wed, 8 Aug 2007 08:39:34 -0400> To: hosking at cs.purdue.edu> CC: m3devel at elegosoft.com; m3commit at elegosoft.com> Subject: Re: [M3commit] CVS Update: cm3> > Make sure to start with clean build directories and clean before > building with the bootstrapped compiler...> > On Aug 8, 2007, at 8:31 AM, Tony Hosking wrote:> > > Amended bootstrap instructions:> >> > Compiler and runtime extensions to support LONGINT type.> > > > Bootstrapping instructions: build and ship packages in the > > following order> > > > m3cc> > m3middle> > m3linker> > m3front> > m3quake> > cm3> > > > This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3.> > > > Use this new compiler to build and ship the new system:> > > > export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3> > cd cm3/scripts> > ./do-cm3-std.sh realclean> > > ./do-cm3-std.sh buildship> > > > If this is successful then move the new compiler to BINDIR:> > > > mv $CM3 INSTALL_DIR/bin/cm3> >> > On Aug 8, 2007, at 5:50 AM, Antony Hosking wrote:> >> >> CVSROOT: /usr/cvs> >> Changes by: hosking at birch. 07/08/08 05:50:13> >>> >> Modified files:> >> cm3/doc/reference/: arithmetic.html arrays.html conventions.html> >> for.html index.html m3.html m3index.html> >> numbers.html ordinal.html subtypes.html> >> typeops.html word-intf.html> >> cm3/m3-db/smalldb/src/: OSSupport.m3> >> cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 FilePosix.m3> >> SocketPosix.m3> >> cm3/m3-libs/libm3/src/pickle/ver2/: ConvertPacking.m3> >> cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3> >> cm3/m3-libs/m3core/src/C/64BITS/: BasicCtypes.i3> >> cm3/m3-libs/m3core/src/Csupport/Common/: hand.c> >> cm3/m3-libs/m3core/src/runtime/POSIX/: RTOS.m3> >> cm3/m3-libs/m3core/src/runtime/common/: RTTipe.i3 RTTipe.m3> >> cm3/m3-libs/m3core/src/thread/: m3makefile> >> cm3/m3-libs/m3core/src/unix/darwin-generic/: Umman.i3 Unix.i3> >> Utypes.i3> >> m3makefile> >> cm3/m3-libs/m3core/src/unix/freebsd-2/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/unix/freebsd-3/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/unix/freebsd-4/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/word/: m3makefile> >> cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c> >> cm3/m3-sys/m3front/src/: m3makefile> >> cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3> >> cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 Ceiling.m3> >> Dec.m3 First.m3 Floatt.m3> >> Floor.m3 Inc.m3 Last.m3> >> Max.m3 New.m3 Number.m3> >> Ord.m3 Round.m3 Subarray.m3> >> Trunc.m3 Val.m3> >> cm3/m3-sys/m3front/src/builtinTypes/: BuiltinTypes.m3 Int.m3> >> m3makefile> >> cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3> >> WordInsert.m3 WordModule.m3> >> WordNot.m3 WordOr.m3> >> WordRotate.m3 WordShift.m3> >> WordXor.m3> >> cm3/m3-sys/m3front/src/exprs/: AddExpr.m3 ArrayExpr.m3> >> CastExpr.m3 CheckExpr.m3> >> CompareExpr.m3 DivExpr.m3> >> EqualExpr.m3 Expr.m3 ExprParse.m3> >> InExpr.m3 IntegerExpr.i3> >> IntegerExpr.m3 ModExpr.m3> >> MultiplyExpr.m3 NegateExpr.m3> >> ReelExpr.i3 ReelExpr.m3> >> SetExpr.m3 SubscriptExpr.m3> >> SubtractExpr.m3> >> cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 M3Front.m3> >> Marker.m3 Scanner.m3 TipeDesc.i3> >> TipeDesc.m3 Token.i3 Token.m3> >> cm3/m3-sys/m3front/src/stmts/: AssignStmt.m3 DebugStmt.m3> >> ForStmt.m3 TryFinStmt.m3> >> cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3> >> OpenArrayType.m3 SubrangeType.m3> >> Type.i3 Type.m3> >> cm3/m3-sys/m3front/src/values/: Exceptionz.m3 Formal.m3> >> Module.m3 Variable.m3> >> cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.m3> >> M3CG_Check.m3 M3CG_Rd.m3 M3CG_Wr.m3> >> TFloat.i3 TFloat.m3 TInt.i3 TInt.m3> >> TWord.i3 TWord.m3 Target.i3 Target.m3> >> cm3/m3-sys/m3scanner/src/: M3Scanner.i3 M3Scanner.m3> >> cm3/m3-sys/m3tools/src/: M3AST.i3 M3Builtin.m3 M3Const.m3> >> M3Lexer.m3 M3Type.i3 M3Type.m3> >> cm3/m3-tools/m3browser/src/: Main.m3> >> Added files:> >> cm3/doc/reference/: m3logo.gif> >> cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3> >> cm3/m3-sys/m3front/src/builtinLong/: LongAnd.i3 LongAnd.m3> >> LongDivide.i3 LongDivide.m3> >> LongExtract.i3> >> LongExtract.m3 LongGE.i3> >> LongGE.m3 LongGT.i3> >> LongGT.m3 LongInsert.i3> >> LongInsert.m3 LongLE.i3> >> LongLE.m3 LongLT.i3> >> LongLT.m3 LongMinus.i3> >> LongMinus.m3 LongMod.i3> >> LongMod.m3 LongModule.i3> >> LongModule.m3 LongNot.i3> >> LongNot.m3 LongOr.i3> >> LongOr.m3 LongPlus.i3> >> LongPlus.m3 LongRotate.i3> >> LongRotate.m3 LongShift.i3> >> LongShift.m3 LongTimes.i3> >> LongTimes.m3 LongXor.i3> >> LongXor.m3> >> cm3/m3-sys/m3front/src/builtinTypes/: LInt.i3 LInt.m3> >>> >> Log message:> >> Compiler and runtime extensions to support LONGINT type.> >> > >> Bootstrapping instructions: build and ship packages in the > >> following order> >> > >> m3middle> >> m3linker> >> m3front> >> m3quake> >> cm3> >> > >> This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3.> >> > >> Use this new compiler to build and ship the new system:> >> > >> export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3> >> cd cm3/scripts> >> ./do-cm3-std.sh buildship> >> > >> If this is successful then move the new compiler to BINDIR:> >> > >> mv $CM3 INSTALL_DIR/bin/cm3> >> _________________________________________________________________ Recharge--play some free games. Win cool prizes too! http://club.live.com/home.aspx?icid=CLUB_wlmailtextlink -------------- next part -------------- An HTML attachment was scrubbed... URL: From hosking at elego.de Sat Aug 11 20:51:17 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 11 Aug 2007 20:51:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070811185117.81DAC10D4342@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/11 20:51:17 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: White-space changes. Indent and wrap lines. From hosking at elego.de Sat Aug 11 20:53:52 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 11 Aug 2007 20:53:52 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070811185352.4489E10D4342@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/11 20:53:52 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Space sentence endings, fix abbreviation periods. From hosking at elego.de Sat Aug 11 20:59:11 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 11 Aug 2007 20:59:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070811185914.87B8D10D4342@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/11 20:59:11 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Re-format paragraphs. From hosking at elego.de Sun Aug 12 05:03:50 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 5:03:50 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812030352.6086710D43A8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 05:03:50 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Format verbatims and align tables. From hosking at elego.de Sun Aug 12 05:34:24 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 5:34:24 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812033428.5E89C10D43A8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 05:34:24 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Let's use Times-Roman. Fix broken hboxes. From hosking at elego.de Sun Aug 12 05:39:11 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 5:39:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812033913.3C4CE10D43A8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 05:39:11 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Fix indent. From hosking at elego.de Sun Aug 12 06:29:00 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 6:29:00 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812042902.C602610D43A8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 06:29:00 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Tidier. From hosking at elego.de Sun Aug 12 06:42:50 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 6:42:50 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812044250.4DD4310D43A8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 06:42:50 Modified files: cm3/doc/reference/: numbers.html Log message: Tweaks. From hosking at elego.de Sun Aug 12 06:47:19 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 6:47:19 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812044719.1DBE110D4342@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 06:47:19 Modified files: cm3/doc/reference/: for.html Log message: Tweak. From hosking at elego.de Sun Aug 12 06:49:27 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 6:49:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812044927.2944F10D43B1@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 06:49:27 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Changes for LONGINT. From jkrell at elego.de Sun Aug 12 18:46:32 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 18:46:32 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812164632.1C3C310D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 18:46:32 Modified files: cm3/m3-lectern/buildlectern/src/: Cscale.c Log message: Make it valid C++ and fix warnings. From jkrell at elego.de Sun Aug 12 18:53:49 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 18:53:49 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812165349.BE9FF10D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 18:53:49 Modified files: cm3/m3-lectern/buildlectern/src/: Cscale.c Log message: gcc -Wall suggests braces on ambiguous else; assembly is the same either way. gcc -Wall points out undefined-nes due to use of *foo and *foo++ with no intervening "sequence pointe". Use two statements instead. From jkrell at elego.de Sun Aug 12 18:57:51 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 18:57:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812165751.1C4F110D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 18:57:51 Modified files: cm3/m3-libs/m3core/src/C/FreeBSD2/: CstdioC.c Log message: Remove gratuitious semicolons at global scope. From jkrell at elego.de Sun Aug 12 19:03:47 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 19:03:47 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812170347.6EB3610D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 19:03:47 Modified files: cm3/m3-libs/m3core/src/C/FreeBSD/: CstdioC.c cm3/m3-libs/m3core/src/C/FreeBSD3/: CstdioC.c cm3/m3-libs/m3core/src/C/FreeBSD4/: CstdioC.c cm3/m3-libs/m3core/src/C/I386_DARWIN/: CstdioC.c cm3/m3-libs/m3core/src/C/NetBSD2_i386/: CstdioC.c cm3/m3-libs/m3core/src/C/PPC_DARWIN/: CstdioC.c Log message: remove gratuious semicolons, mostly at global scope From jkrell at elego.de Sun Aug 12 19:16:10 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 19:16:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812171610.5483A10D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 19:16:10 Modified files: cm3/m3-win/: vcredist.txt Log message: add link to service pack 1 (which you can easily find searchig the web anyway) From jkrell at elego.de Sun Aug 12 19:41:21 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 19:41:21 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812174121.94FAE10D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 19:41:21 Modified files: cm3/m3-ui/ui/src/winvbt/: WinTrestle.m3 Log message: fix it to build -- RTHeapDep.VM is always FALSE, and no longer avialable From jkrell at elego.de Sun Aug 12 20:17:53 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 20:17:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812181753.57DC410D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 20:17:53 Modified files: cm3/scripts/win/: make-dist.cmd upgrade.cmd Log message: Start with the installed cm3. From jkrell at elego.de Sun Aug 12 20:21:55 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 20:21:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812182155.ED0D810D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 20:21:55 Modified files: cm3/scripts/win/: make-dist.cmd upgrade.cmd Log message: oops - clearing non set variable is an error and makes us do nothing, fast From hosking at elego.de Sun Aug 12 20:43:53 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 20:43:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812184353.53B0A10D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 20:43:53 Modified files: cm3/m3-ui/ui/src/winvbt/: WinTrestle.m3 Log message: Reverse sense of StarTrek parameter, as for X. From hosking at elego.de Sun Aug 12 20:45:44 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 20:45:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812184544.5BC9210D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 20:45:44 Modified files: cm3/m3-ui/ui/src/winvbt/: WinTrestle.m3 Log message: Change comment to match StarTrek parameter meaning. From hosking at elego.de Sun Aug 12 20:46:38 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 12 Aug 2007 20:46:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812184638.60A7910D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/12 20:46:38 Modified files: cm3/m3-ui/ui/src/xvbt/: NTClientF.m3 Log message: Reverse sense of StarTrek parameter, as for X. From jkrell at elego.de Sun Aug 12 20:57:44 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 20:57:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812185744.726D910D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 20:57:44 Modified files: cm3/scripts/win/: make-dist.cmd Log message: don't make the runtime in the first pass; that doesn't work instead copy it from old package store use the current import .libs -- necessary when bootstrapping from 5.2.6 remove redundant comment From jkrell at elego.de Sun Aug 12 20:59:56 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 20:59:56 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812185956.7869A10D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 20:59:56 Modified files: cm3/scripts/win/: backup-pkgs.cmd def-std-pkgs.cmd do-cm3-base.cmd do-cm3-core.cmd Log message: remove dll2lib, Tony asked about it -- it is tied to the old GC From jkrell at elego.de Sun Aug 12 21:02:06 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Aug 2007 21:02:06 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070812190206.D5D5C10D43FE@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/12 21:02:06 Modified files: cm3/scripts/win/: sysinfo.cmd Log message: update version to d5.5.0, tracking scripts/sysinfo.sh From rodney at elego.de Mon Aug 13 16:37:56 2007 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 13 Aug 2007 16:37:56 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813143756.A48D610D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/08/13 16:37:56 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: ada-lex.l Log message: No change to the contents of these files. This is an attempt to get the time stampof ada-lex.c to be later than that of ada-lex.l. This will mean m3gdb will build without requiring flex to be installed. From rodney at elego.de Mon Aug 13 16:39:15 2007 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 13 Aug 2007 16:39:15 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813143915.71BE510D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/08/13 16:39:15 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: ada-lex.c Log message: No change to the contents of these files. This is an attempt to get the time stampof ada-lex.c to be later than that of ada-lex.l. This will mean m3gdb will build without requiring flex to be installed. From hosking at elego.de Mon Aug 13 21:49:07 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 13 Aug 2007 21:49:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813194908.98E4710D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/13 21:49:07 Modified files: cm3/m3-libs/libm3/src/types/: m3makefile cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3 cm3/m3-libs/m3core/src/runtime/common/: RTBuiltin.mx cm3/m3-sys/m3front/src/builtinLong/: LongAnd.m3 LongExtract.m3 LongInsert.m3 LongMod.m3 LongRotate.m3 LongShift.m3 cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 Dec.m3 First.m3 Inc.m3 IsType.m3 Last.m3 Number.m3 Ord.m3 Subarray.m3 Val.m3 cm3/m3-sys/m3front/src/builtinTypes/: Bool.m3 Card.m3 Null.m3 cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3 WordInsert.m3 WordMod.m3 WordRotate.m3 WordShift.m3 cm3/m3-sys/m3front/src/exprs/: AddressExpr.m3 AndExpr.m3 ArrayExpr.m3 CheckExpr.m3 CompareExpr.m3 DivExpr.m3 EnumExpr.m3 EqualExpr.m3 Expr.m3 ExprParse.m3 InExpr.m3 IntegerExpr.m3 ModExpr.m3 NamedExpr.m3 NilChkExpr.m3 NotExpr.m3 OrExpr.m3 SetExpr.m3 SubscriptExpr.m3 cm3/m3-sys/m3front/src/misc/: CG.m3 Coverage.m3 Scanner.m3 TipeDesc.m3 cm3/m3-sys/m3front/src/stmts/: AssertStmt.m3 CaseStmt.m3 DebugStmt.m3 ForStmt.m3 cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3 ObjectType.m3 OpenArrayType.m3 SubrangeType.m3 Type.m3 cm3/m3-sys/m3linker/src/: MxGen.m3 cm3/m3-sys/m3middle/src/: M3CG_BinRd.m3 M3CG_BinWr.m3 M3CG_Rd.m3 TInt.i3 TInt.m3 TWord.i3 TWord.m3 Target.i3 Target.m3 cm3/m3-sys/m3tools/src/: M3Builtin.m3 M3Const.m3 M3Type.m3 cm3/m3-tools/m3browser/src/: Main.m3 Added files: cm3/m3-libs/libm3/src/types/: Int64.i3 Int64.m3 Longint.i3 Longint.m3 Log message: Fix problems with LONGINT subranges. Tidy up TInt usage. Add LONGINT and its UID to RTBuiltin.mx and m3browser/src/Main.m3. From hosking at elego.de Mon Aug 13 22:30:04 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 13 Aug 2007 22:30:04 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813203006.D7C9510D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/13 22:30:04 Modified files: cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3 cm3/m3-sys/m3front/src/misc/: M3Front.m3 Log message: LongModule needs treatment for builtins the same as WordModule. m3browser now works properly for LONGINT. From hosking at elego.de Tue Aug 14 01:01:38 2007 From: hosking at elego.de (Antony Hosking) Date: Tue, 14 Aug 2007 1:01:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813230139.0653910D43FC@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/14 01:01:38 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTBuiltin.mx Log message: Adjust count to match addition of LONGINT. From hosking at elego.de Tue Aug 14 01:02:30 2007 From: hosking at elego.de (Antony Hosking) Date: Tue, 14 Aug 2007 1:02:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813230231.151F810D43FC@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/14 01:02:30 Modified files: cm3/m3-sys/m3front/src/types/: Type.m3 Log message: Put LInt in TypeTbl along with other builtin types. From hosking at elego.de Tue Aug 14 01:47:10 2007 From: hosking at elego.de (Antony Hosking) Date: Tue, 14 Aug 2007 1:47:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070813234710.F411B10D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/14 01:47:10 Modified files: cm3/m3-tools/m3markup/src/: M3MarkUp.m3 cm3/m3-tools/m3scan/src/: M3Scanner.m3 M3Token.i3 M3Token.m3 Log message: Fix m3scan and m3markup to handle LONGINT. m3browser *really* works now... :-) From hosking at elego.de Wed Aug 15 17:20:56 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 15 Aug 2007 17:20:56 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070815152101.4F31710D4408@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/15 17:20:56 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Fix scan_target_int to properly scan 64-bit integers on 32-bit hosts when HOST_WIDE_INT == long long. This fixes the problem with LONGINT on PPC_DARWIN. "do-cm3-std.sh buildship" now succeeds with LONGINT for all of I386_DARWIN, PPC_DARWIN, LINUXLIBC6. Testing on SOLgnu next. From hosking at elego.de Wed Aug 15 19:39:55 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 15 Aug 2007 19:39:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070815173955.2649B10D440A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/15 19:39:55 Modified files: cm3/m3-libs/m3core/src/word/: m3makefile Added files: cm3/m3-libs/m3core/src/word/: Long.i3 Removed files: cm3/m3-libs/m3core/src/word/POSIX/: Long.i3 Long.m3 m3makefile cm3/m3-libs/m3core/src/word/WIN32/: Long.i3 LongC.c m3makefile Log message: Resurrect Long.i3. Backend compilers support this. m3back needs fixing to handle 64-bit LONGINT. From hosking at elego.de Wed Aug 15 19:41:20 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 15 Aug 2007 19:41:20 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070815174125.982E310D440A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/15 19:41:20 Added files: cm3/m3-libs/m3core/src/word/: Long.m3 Log message: Resurrect Long.i3. Backend compilers support this. m3back needs fixing to handle 64-bit LONGINT. From hosking at elego.de Wed Aug 15 21:52:48 2007 From: hosking at elego.de (Antony Hosking) Date: Wed, 15 Aug 2007 21:52:48 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070815195248.AC8FD10D441A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/15 21:52:48 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Problems with pthread_cond_timedwait on SMP. Use nanowait instead. From hosking at elego.de Thu Aug 16 18:53:50 2007 From: hosking at elego.de (Antony Hosking) Date: Thu, 16 Aug 2007 18:53:50 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070816165350.D234110D43FC@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/16 18:53:50 Modified files: cm3/m3-sys/m3middle/src/: Target.m3 Log message: Make Longint/Longword to be 32 bits on NT386 so Jay can build. From hosking at elego.de Sat Aug 18 23:57:59 2007 From: hosking at elego.de (Antony Hosking) Date: Sat, 18 Aug 2007 23:57:59 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070818215759.8BC4410D41BA@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/18 23:57:59 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Add debugging support. Drain semaphore on receipt of signals. From hosking at elego.de Sun Aug 19 21:33:18 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 19 Aug 2007 21:33:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070819193318.5FCDE10D433D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/19 21:33:18 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Cosmetic changes. From hosking at elego.de Sun Aug 19 22:02:18 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 19 Aug 2007 22:02:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070819200218.3F8B910D433D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/19 22:02:18 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Cosmetic changes. From hosking at elego.de Mon Aug 20 00:23:57 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 0:23:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070819222358.27D0E10D4338@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 00:23:57 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: pthread_t is not always an ADDRESS. From hosking at elego.de Mon Aug 20 16:17:13 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:17:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820141713.C156510D4364@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:17:13 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Solaris thr_getstate is unreliable (when did this happen??) for threads blocking in pthread_cond_wait and nanosleep. Threads entering blocking calls must deposit a reliable stack pointer into their activation record before blocking, and clear it afterwards, to signal to the stopping thread that it should not rely on GetState. mentor now runs again on Solaris. From hosking at elego.de Mon Aug 20 16:18:12 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:18:12 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820141812.5592C10D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:18:12 Modified files: cm3/m3-libs/m3core/src/runtime/SOLgnu/: RTMachine.m3 Log message: Solaris thr_getstate is unreliable (when did this happen??) for threads blocking in pthread_cond_wait and nanosleep. Threads entering blocking calls must deposit a reliable stack pointer into their activation record before blocking, and clear it afterwards, to signal to the stopping thread that it should not rely on GetState. mentor now runs again on Solaris. From hosking at elego.de Mon Aug 20 16:18:49 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:18:49 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820141849.6906910D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:18:49 Modified files: cm3/m3-libs/m3core/src/runtime/SOLgnu/: RTMachine.i3 Log message: Solaris thr_getstate is unreliable (when did this happen??) for threads blocking in pthread_cond_wait and nanosleep. Threads entering blocking calls must deposit a reliable stack pointer into their activation record before blocking, and clear it afterwards, to signal to the stopping thread that it should not rely on GetState. mentor now runs again on Solaris. From hosking at elego.de Mon Aug 20 16:21:15 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:21:15 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820142115.D376210D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:21:15 Modified files: cm3/m3-libs/m3core/src/runtime/SOLgnu/: m3makefile Log message: Use RTMachine__SaveRegsInStack instead of RTStack__Flush. From hosking at elego.de Mon Aug 20 16:21:28 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:21:28 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820142128.7304F10D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:21:28 Modified files: cm3/m3-libs/m3core/src/runtime/SOLgnu/: RTStackC.c Log message: Use RTMachine__SaveRegsInStack instead of RTStack__Flush. From hosking at elego.de Mon Aug 20 16:23:30 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:23:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820142330.3120710D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:23:30 Modified files: cm3/m3-libs/m3core/src/runtime/SOLsun/: RTStackC.c Log message: Bring into sync with SOLgnu. From hosking at elego.de Mon Aug 20 16:24:38 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:24:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820142438.DC01810D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:24:38 Modified files: cm3/m3-libs/m3core/src/runtime/SOLsun/: RTMachine.i3 Log message: Bring into sync with SOLgnu. From hosking at elego.de Mon Aug 20 16:25:18 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:25:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820142518.E0B3D10D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:25:18 Modified files: cm3/m3-libs/m3core/src/runtime/SOLsun/: RTMachine.m3 Log message: Bring into sync with SOLgnu. From hosking at elego.de Mon Aug 20 16:25:44 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:25:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820142544.61E4110D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:25:44 Modified files: cm3/m3-libs/m3core/src/runtime/SOLsun/: m3makefile Log message: Bring into sync with SOLgnu. From hosking at elego.de Mon Aug 20 16:38:05 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:38:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820143805.B008710D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:38:05 Modified files: cm3/m3-sys/m3middle/src/: Target.i3 Log message: Change comment to avoid "'" so that M3 syntax highlighting in emacs does not get confused. From hosking at elego.de Mon Aug 20 16:42:34 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 16:42:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820144234.C19F010D4308@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 16:42:34 Modified files: cm3/m3-libs/m3core/src/runtime/I386_DARWIN/: RTMachine.i3 RTThreadC.c m3makefile cm3/m3-libs/m3core/src/runtime/LINUXLIBC6/: RTMachine.i3 cm3/m3-libs/m3core/src/runtime/PPC_DARWIN/: RTMachine.i3 RTThreadC.c m3makefile Added files: cm3/m3-libs/m3core/src/runtime/I386_DARWIN/: RTMachineC.c cm3/m3-libs/m3core/src/runtime/PPC_DARWIN/: RTMachineC.c Log message: Sync RTMachine.GetState declarations with changes made for Solaris. Move RTMachine functionality from RTThreadC.c into separate RTMachineC.c. From hosking at elego.de Mon Aug 20 21:40:21 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 20 Aug 2007 21:40:21 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820194021.0556110D433E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/20 21:40:20 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Get rid of alertable field. Alerted waiters can dequeue themselves. From hosking at elego.de Tue Aug 21 01:32:55 2007 From: hosking at elego.de (Antony Hosking) Date: Tue, 21 Aug 2007 1:32:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070820233255.8963810D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/21 01:32:55 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Slight tidy-up of scan_float, but doesn't fix problem with building float constants on AMD64 unless we compile with "-m32". From rodney at elego.de Sun Aug 26 02:05:09 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sun, 26 Aug 2007 2:05:09 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826000509.EDF2510D4435@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/08/26 02:05:09 Modified files: cm3/m3-sys/m3cc/gcc/gcc/: dbxout.c cm3/m3-sys/m3gdb/gdb/gdb/: m3-eval.c m3-lang.c Log message: m3gdb function calls had lost the ability to display the result of a function call. In particular, "print Thread.Self()" now works again. To get the benefit of this, you have to rebuild cm3, then use it to rebuild m3core (or whatever contains functions you would like to call.) 1) Forward patch a change to dbxout.c that never made it from the 3.4.5-to the 4.1.1-based code generator. This gives m3gdb necessary information about blocks, so it can find local variables (which, oddly, is how it finds if a procedure is a function and if so, its result type.) 2) Fix a regression in m3gdb, no longer looking in the outermost block of a function, for the function result pseudo-variable. This affected recent-cm3-compiled functions with "large" function results. From jkrell at elego.de Sun Aug 26 12:13:17 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:13:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826101317.1959810D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:13:17 Modified files: cm3/scripts/win/: make-dist.cmd Log message: better error reporting and fix an error in early stages mklib.pdb does not exist, ok From jkrell at elego.de Sun Aug 26 12:25:05 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:25:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826102505.486A410D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:25:05 Modified files: cm3/scripts/win/: make-dist.cmd pkgmap.cmd Log message: tweak error reporting to give more context note that the errors appear in a backwards stack sort of way From jkrell at elego.de Sun Aug 26 12:29:33 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:29:33 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826102933.1E23B10D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:29:33 Modified files: cm3/scripts/win/: make-dist.cmd Log message: butt coverage regarding abuse of %TEMP% From jkrell at elego.de Sun Aug 26 12:31:13 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:31:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826103114.64D0A10D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:31:13 Modified files: cm3/scripts/win/: make-dist.cmd Log message: slightly terser butt coverage From jkrell at elego.de Sun Aug 26 12:35:52 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:35:52 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826103553.CF81E10D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:35:52 Modified files: cm3/scripts/win/: make-dist.cmd Log message: beware cmd wackiness -- cmd does not like parens in the body of an if, thereby making the whole if-paren feature largely broken.. From jkrell at elego.de Sun Aug 26 12:43:41 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:43:41 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826104341.06A5010D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:43:41 Modified files: cm3/scripts/win/: pkgmap.cmd Log message: more context to peel the onion when reproducing errors From jkrell at elego.de Sun Aug 26 12:44:17 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 12:44:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826104417.23AAF10D4368@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 12:44:17 Modified files: cm3/scripts/win/: clearenv.cmd Log message: cleanup mess made by make-dist From jkrell at elego.de Sun Aug 26 13:08:11 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 13:08:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826110811.F256710D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 13:08:11 Modified files: cm3/m3-sys/m3back/src/: Codex86.m3 Log message: fix it to compile; unknown if this is correct From jkrell at elego.de Sun Aug 26 13:43:01 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 13:43:01 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826114301.54E3710D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 13:43:01 Modified files: cm3/m3-libs/libm3/src/types/: Int64.i3 Log message: Fix it to compile for Win32's temporary 32 bit Int64. Is this correct? I think so. From jkrell at elego.de Sun Aug 26 13:44:42 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 13:44:42 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826114442.86B8010D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 13:44:42 Modified files: cm3/m3-libs/libm3/src/types/: Int32.i3 Log message: commented out possibility that is consistent with Int64.i3; is it correct? Not sure -- is INTEGER always 32 bits or is it 64 bits on some platforms? Does the compiler compute these values correctly? These are not difficult to answer questions.. From jkrell at elego.de Sun Aug 26 13:59:50 2007 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Aug 2007 13:59:50 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826115952.2103F10D4363@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 07/08/26 13:59:50 Modified files: cm3/m3-libs/libm3/src/types/: Int32.i3 Log message: remove just added comment, ALPHA_OSF target has 64 bit integers.. I still think this is all of unclear goodness vs. other models.. From jayk123 at hotmail.com Sun Aug 26 14:08:59 2007 From: jayk123 at hotmail.com (j k) Date: Sun, 26 Aug 2007 12:08:59 +0000 Subject: [M3commit] CVS Update: cm3 (64 bit integers...) Message-ID: Here is the change:< TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. 16_7fffffffffffffffL ];> (*TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. 16_7fffffffffffffffL ];*)> TYPE T = BITS BITSIZE(LONGINT) FOR [ FIRST(LONGINT) .. LAST(LONGINT) ];Otherwise you get a compile error when the constants overflow at compile time.I still think all this stuff is a little wierd. Can we write off ALPHA_OSF, assert that INTEGER is 32 bits, and introduce a new type that is the same size as a pointer?Again I think the types you want are: INT8, INT16, INT32, INT64 -- signed types with exact sizes, the same on all platforms (INT64 yet missing on Win32) UINT8, UINT16, UINT32, UINT64 -- unsigned types with exact sizes, the same on all platforms (UINT64 yet missing on Win32) SIZE_T, ?SSIZE_T? or ?PTRDIFF_T?-- unsigned and signed types for storing addresses, or sizes of arrays, or array indices, or the differences thereof, PERHAPS guaranteed to be 32 bits or 64 bits INTEGER -- same as SSIZE_T ?or? INT32?? What's the pickle story? Are pickles interchangable beteen Alpha and non-Alpha? Should probably be equiv to SSIZE_T. That's what Alpha has. LONGINT -- same as INT64 - Jay> Date: Sun, 26 Aug 2007 13:43:01 +0000> To: m3commit at elegosoft.com> From: jkrell at elego.de> Subject: [M3commit] CVS Update: cm3> > CVSROOT: /usr/cvs> Changes by: jkrell at birch. 07/08/26 13:43:01> > Modified files:> cm3/m3-libs/libm3/src/types/: Int64.i3 > > Log message:> Fix it to compile for Win32's temporary 32 bit Int64.> Is this correct? I think so.> _________________________________________________________________ Messenger Caf? ? open for fun 24/7. Hot games, cool activities served daily. Visit now. http://cafemessenger.com?ocid=TXT_TAGLM_AugWLtagline -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Sun Aug 26 14:10:37 2007 From: jayk123 at hotmail.com (j k) Date: Sun, 26 Aug 2007 12:10:37 +0000 Subject: [M3commit] CVS Update: cm3 Message-ID: before, I think: t.parent.init_int(abscall.loc, TargetInt.Zero, Type.Int32);doesn't compile.after: t.parent.init_int(abscall.loc, TargetInt.Zero[Target.Pre.Integer], Type.Int32);right? - Jay> Date: Sun, 26 Aug 2007 13:08:11 +0000> To: m3commit at elegosoft.com> From: jkrell at elego.de> Subject: [M3commit] CVS Update: cm3> > CVSROOT: /usr/cvs> Changes by: jkrell at birch. 07/08/26 13:08:11> > Modified files:> cm3/m3-sys/m3back/src/: Codex86.m3 > > Log message:> fix it to compile; unknown if this is correct> _________________________________________________________________ See what you?re getting into?before you go there http://newlivehotmail.com/?ocid=TXT_TAGHM_migration_HM_viral_preview_0507 -------------- next part -------------- An HTML attachment was scrubbed... URL: From hosking at cs.purdue.edu Sun Aug 26 17:28:49 2007 From: hosking at cs.purdue.edu (Tony Hosking) Date: Sun, 26 Aug 2007 11:28:49 -0400 Subject: [M3commit] CVS Update: cm3 (64 bit integers...) In-Reply-To: References: Message-ID: On Aug 26, 2007, at 8:08 AM, j k wrote: > Here is the change: > > < TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. > 16_7fffffffffffffffL ]; > > > (*TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. > 16_7fffffffffffffffL ];*) > > TYPE T = BITS BITSIZE(LONGINT) FOR [ FIRST(LONGINT) .. LAST > (LONGINT) ]; This should be OK. > Otherwise you get a compile error when the constants overflow at > compile time. You only get the compiler error for NT386, for which LONGINT is 32- bits because the non-gcc backend can handle only 32-bit integers. What we really need is for NT386 to use a back-end that is capable of 64 bits. NT386GNU may be the easiest route to this. > I still think all this stuff is a little wierd. Can we write off > ALPHA_OSF, assert that INTEGER is 32 bits, and introduce a new type > that is the same size as a pointer? No way. INTEGER is intended to be abstract -- as defined in the language spec. > Again I think the types you want are: > INT8, INT16, INT32, INT64 -- signed types with exact sizes, the > same on all platforms (INT64 yet missing on Win32) > UINT8, UINT16, UINT32, UINT64 -- unsigned types with exact > sizes, the same on all platforms (UINT64 yet missing on Win32) > SIZE_T, ?SSIZE_T? or ?PTRDIFF_T?-- unsigned and signed types for > storing addresses, or sizes of arrays, or array indices, or the > differences thereof, PERHAPS guaranteed to be 32 bits or 64 bits > INTEGER -- same as SSIZE_T ?or? INT32?? > What's the pickle story? Are pickles interchangable beteen > Alpha and non-Alpha? > Should probably be equiv to SSIZE_T. That's what Alpha has. > LONGINT -- same as INT64 This leads us into the swamp, full of nightmares and dragons. > > - Jay > > > > Date: Sun, 26 Aug 2007 13:43:01 +0000 > > To: m3commit at elegosoft.com > > From: jkrell at elego.de > > Subject: [M3commit] CVS Update: cm3 > > > > CVSROOT: /usr/cvs > > Changes by: jkrell at birch. 07/08/26 13:43:01 > > > > Modified files: > > cm3/m3-libs/libm3/src/types/: Int64.i3 > > > > Log message: > > Fix it to compile for Win32's temporary 32 bit Int64. > > Is this correct? I think so. > > > > Messenger Caf? ? open for fun 24/7. Hot games, cool activities > served daily. Visit now. From hosking at cs.purdue.edu Sun Aug 26 17:29:21 2007 From: hosking at cs.purdue.edu (Tony Hosking) Date: Sun, 26 Aug 2007 11:29:21 -0400 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20070826110811.F256710D4363@birch.elegosoft.com> References: <20070826110811.F256710D4363@birch.elegosoft.com> Message-ID: <67072DC5-83FA-430D-A3B6-A14F96AC7DDD@cs.purdue.edu> Why did this not compile? On Aug 26, 2007, at 1:08 PM, Jay Krell wrote: > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 07/08/26 13:08:11 > > Modified files: > cm3/m3-sys/m3back/src/: Codex86.m3 > > Log message: > fix it to compile; unknown if this is correct From hosking at elego.de Sun Aug 26 17:36:02 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 26 Aug 2007 17:36:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826153602.7C57710D442D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/26 17:36:02 Modified files: cm3/m3-libs/libm3/src/types/: Int64.i3 Log message: Revert Int64 and change m3makefile so it does not get compiled on NT386 target which uses the non-gcc backend that can't handle 64 bits yet. From hosking at elego.de Sun Aug 26 17:36:14 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 26 Aug 2007 17:36:14 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826153615.3EE7210D442D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/26 17:36:14 Modified files: cm3/m3-libs/libm3/src/types/: m3makefile Log message: Revert Int64 and change m3makefile so it does not get compiled on NT386 target which uses the non-gcc backend that can't handle 64 bits yet. From hosking at elego.de Sun Aug 26 23:34:25 2007 From: hosking at elego.de (Antony Hosking) Date: Sun, 26 Aug 2007 23:34:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070826213428.93A1010D442D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/08/26 23:34:25 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTAllocator.m3 RTCollector.m3 RTHeapRep.i3 cm3/m3-libs/m3core/src/thread/POSIX/: ThreadPosix.m3 cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadF.i3 ThreadPThread.m3 cm3/m3-libs/m3core/src/thread/WIN32/: ThreadWin32.m3 Log message: Switch to using generic "heapState" field in thread in preparation for additional state. From jayk123 at hotmail.com Mon Aug 27 03:26:44 2007 From: jayk123 at hotmail.com (j k) Date: Mon, 27 Aug 2007 01:26:44 +0000 Subject: [M3commit] CVS Update: cm3 (64 bit integers...) Message-ID: I think fixing NT386 should be easy enough given just a /bit/more time.I've been poking through it a bit.. > No way. INTEGER is intended to be abstract -- as defined in the > language spec.I'll have to read it to see what characteristics are guaranteed. Assuming you can have "very large" arrays, approaching the address space, or at least half of it, you are generally stuck with either INTEGER being the size of a pointer, or some "complicated" representation, like with varying precision, or heck even floating point.> This leads us into the swamp, full of nightmares and dragons. I really tend to think "my way" is the clear simple way. (Not "my way", but the way of a LOT of code, some of it very high quality, some of it not). Yeah I am colored by "where I live", in the swamp perhaps. It all seems to work quite well. Granted there is a need sometimes for floating point and very high precision, but the types I list, plus bit fields of any size 1 to 64, satisfy nearly all needs very well and very clearly. You do have to declare that assigning a larger precision integer to a smaller precision integer is a checked operation that can fail. Or some way to turn on/off the checks, though, really.. if you look at the "runtime checks" that Visual C++ offers, if you really want silent truncation, you can & with the appropriate value, e.g. UINT32 b; UINT16 a = (b & 0xffff) will not fail. There is the matter of assuming two's complement or not. Do people still work under the notion that there might be one's complement or arbitrary other representations of fixed small precision integers? Again I'll have to read the spec to see what abstraction INTEGER provides. > You only get the compiler error for NT386, for which LONGINT is 32- Understood. - Jay > From: hosking at cs.purdue.edu> Date: Sun, 26 Aug 2007 11:28:49 -0400> To: jay.krell at cornell.edu> CC: m3commit at elegosoft.com> Subject: Re: [M3commit] CVS Update: cm3 (64 bit integers...)> > > On Aug 26, 2007, at 8:08 AM, j k wrote:> > > Here is the change:> >> > < TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. > > 16_7fffffffffffffffL ];> >> > > (*TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. > > 16_7fffffffffffffffL ];*)> > > TYPE T = BITS BITSIZE(LONGINT) FOR [ FIRST(LONGINT) .. LAST > > (LONGINT) ];> > This should be OK.> > > Otherwise you get a compile error when the constants overflow at > > compile time.> > You only get the compiler error for NT386, for which LONGINT is 32- > bits because the non-gcc backend can handle only 32-bit integers. > What we really need is for NT386 to use a back-end that is capable of > 64 bits. NT386GNU may be the easiest route to this.> > > I still think all this stuff is a little wierd. Can we write off > > ALPHA_OSF, assert that INTEGER is 32 bits, and introduce a new type > > that is the same size as a pointer?> > No way. INTEGER is intended to be abstract -- as defined in the > language spec.> > > Again I think the types you want are:> > INT8, INT16, INT32, INT64 -- signed types with exact sizes, the > > same on all platforms (INT64 yet missing on Win32)> > UINT8, UINT16, UINT32, UINT64 -- unsigned types with exact > > sizes, the same on all platforms (UINT64 yet missing on Win32)> > SIZE_T, ?SSIZE_T? or ?PTRDIFF_T?-- unsigned and signed types for > > storing addresses, or sizes of arrays, or array indices, or the > > differences thereof, PERHAPS guaranteed to be 32 bits or 64 bits> > INTEGER -- same as SSIZE_T ?or? INT32??> > What's the pickle story? Are pickles interchangable beteen > > Alpha and non-Alpha?> > Should probably be equiv to SSIZE_T. That's what Alpha has.> > LONGINT -- same as INT64> > This leads us into the swamp, full of nightmares and dragons.> > >> > - Jay> >> >> > > Date: Sun, 26 Aug 2007 13:43:01 +0000> > > To: m3commit at elegosoft.com> > > From: jkrell at elego.de> > > Subject: [M3commit] CVS Update: cm3> > >> > > CVSROOT: /usr/cvs> > > Changes by: jkrell at birch. 07/08/26 13:43:01> > >> > > Modified files:> > > cm3/m3-libs/libm3/src/types/: Int64.i3> > >> > > Log message:> > > Fix it to compile for Win32's temporary 32 bit Int64.> > > Is this correct? I think so.> > >> >> > Messenger Caf? ? open for fun 24/7. Hot games, cool activities > > served daily. Visit now.> _________________________________________________________________ Recharge--play some free games. Win cool prizes too! http://club.live.com/home.aspx?icid=CLUB_wlmailtextlink -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Mon Aug 27 03:27:27 2007 From: jayk123 at hotmail.com (j k) Date: Mon, 27 Aug 2007 01:27:27 +0000 Subject: [M3commit] CVS Update: cm3 Message-ID: Like..it was an array instead of a value, something like that. - Jay > From: hosking at cs.purdue.edu> Date: Sun, 26 Aug 2007 11:29:21 -0400> To: jkrell at elego.de> CC: m3commit at elegosoft.com> Subject: Re: [M3commit] CVS Update: cm3> > Why did this not compile?> > On Aug 26, 2007, at 1:08 PM, Jay Krell wrote:> > > CVSROOT: /usr/cvs> > Changes by: jkrell at birch. 07/08/26 13:08:11> >> > Modified files:> > cm3/m3-sys/m3back/src/: Codex86.m3> >> > Log message:> > fix it to compile; unknown if this is correct> _________________________________________________________________ See what you?re getting into?before you go there http://newlivehotmail.com/?ocid=TXT_TAGHM_migration_HM_viral_preview_0507 -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Sat Aug 11 19:19:24 2007 From: jayk123 at hotmail.com (j k) Date: Sat, 11 Aug 2007 17:19:24 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: I can build the compiler, but, youch, can't build m3core\long.m3: "..\src\word\Long.m3", line 11: Unknown type of size other than dword in movOp The x86 back end needs work..I'll see if I can't just provide this stuff in C and avoid understanding the backend much.. - Jay> From: hosking at cs.purdue.edu> Date: Wed, 8 Aug 2007 08:39:34 -0400> To: hosking at cs.purdue.edu> CC: m3devel at elegosoft.com; m3commit at elegosoft.com> Subject: Re: [M3commit] CVS Update: cm3> > Make sure to start with clean build directories and clean before > building with the bootstrapped compiler...> > On Aug 8, 2007, at 8:31 AM, Tony Hosking wrote:> > > Amended bootstrap instructions:> >> > Compiler and runtime extensions to support LONGINT type.> > > > Bootstrapping instructions: build and ship packages in the > > following order> > > > m3cc> > m3middle> > m3linker> > m3front> > m3quake> > cm3> > > > This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3.> > > > Use this new compiler to build and ship the new system:> > > > export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3> > cd cm3/scripts> > ./do-cm3-std.sh realclean> > > ./do-cm3-std.sh buildship> > > > If this is successful then move the new compiler to BINDIR:> > > > mv $CM3 INSTALL_DIR/bin/cm3> >> > On Aug 8, 2007, at 5:50 AM, Antony Hosking wrote:> >> >> CVSROOT: /usr/cvs> >> Changes by: hosking at birch. 07/08/08 05:50:13> >>> >> Modified files:> >> cm3/doc/reference/: arithmetic.html arrays.html conventions.html> >> for.html index.html m3.html m3index.html> >> numbers.html ordinal.html subtypes.html> >> typeops.html word-intf.html> >> cm3/m3-db/smalldb/src/: OSSupport.m3> >> cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 FilePosix.m3> >> SocketPosix.m3> >> cm3/m3-libs/libm3/src/pickle/ver2/: ConvertPacking.m3> >> cm3/m3-libs/m3core/src/C/32BITS/: BasicCtypes.i3> >> cm3/m3-libs/m3core/src/C/64BITS/: BasicCtypes.i3> >> cm3/m3-libs/m3core/src/Csupport/Common/: hand.c> >> cm3/m3-libs/m3core/src/runtime/POSIX/: RTOS.m3> >> cm3/m3-libs/m3core/src/runtime/common/: RTTipe.i3 RTTipe.m3> >> cm3/m3-libs/m3core/src/thread/: m3makefile> >> cm3/m3-libs/m3core/src/unix/darwin-generic/: Umman.i3 Unix.i3> >> Utypes.i3> >> m3makefile> >> cm3/m3-libs/m3core/src/unix/freebsd-2/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/unix/freebsd-3/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/unix/freebsd-4/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/unix/netbsd2-i386/: Umman.i3 Unix.i3> >> Utypes.i3 m3makefile> >> cm3/m3-libs/m3core/src/word/: m3makefile> >> cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c> >> cm3/m3-sys/m3front/src/: m3makefile> >> cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3> >> cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 Ceiling.m3> >> Dec.m3 First.m3 Floatt.m3> >> Floor.m3 Inc.m3 Last.m3> >> Max.m3 New.m3 Number.m3> >> Ord.m3 Round.m3 Subarray.m3> >> Trunc.m3 Val.m3> >> cm3/m3-sys/m3front/src/builtinTypes/: BuiltinTypes.m3 Int.m3> >> m3makefile> >> cm3/m3-sys/m3front/src/builtinWord/: WordAnd.m3 WordExtract.m3> >> WordInsert.m3 WordModule.m3> >> WordNot.m3 WordOr.m3> >> WordRotate.m3 WordShift.m3> >> WordXor.m3> >> cm3/m3-sys/m3front/src/exprs/: AddExpr.m3 ArrayExpr.m3> >> CastExpr.m3 CheckExpr.m3> >> CompareExpr.m3 DivExpr.m3> >> EqualExpr.m3 Expr.m3 ExprParse.m3> >> InExpr.m3 IntegerExpr.i3> >> IntegerExpr.m3 ModExpr.m3> >> MultiplyExpr.m3 NegateExpr.m3> >> ReelExpr.i3 ReelExpr.m3> >> SetExpr.m3 SubscriptExpr.m3> >> SubtractExpr.m3> >> cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 M3Front.m3> >> Marker.m3 Scanner.m3 TipeDesc.i3> >> TipeDesc.m3 Token.i3 Token.m3> >> cm3/m3-sys/m3front/src/stmts/: AssignStmt.m3 DebugStmt.m3> >> ForStmt.m3 TryFinStmt.m3> >> cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3> >> OpenArrayType.m3 SubrangeType.m3> >> Type.i3 Type.m3> >> cm3/m3-sys/m3front/src/values/: Exceptionz.m3 Formal.m3> >> Module.m3 Variable.m3> >> cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.m3> >> M3CG_Check.m3 M3CG_Rd.m3 M3CG_Wr.m3> >> TFloat.i3 TFloat.m3 TInt.i3 TInt.m3> >> TWord.i3 TWord.m3 Target.i3 Target.m3> >> cm3/m3-sys/m3scanner/src/: M3Scanner.i3 M3Scanner.m3> >> cm3/m3-sys/m3tools/src/: M3AST.i3 M3Builtin.m3 M3Const.m3> >> M3Lexer.m3 M3Type.i3 M3Type.m3> >> cm3/m3-tools/m3browser/src/: Main.m3> >> Added files:> >> cm3/doc/reference/: m3logo.gif> >> cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3> >> cm3/m3-sys/m3front/src/builtinLong/: LongAnd.i3 LongAnd.m3> >> LongDivide.i3 LongDivide.m3> >> LongExtract.i3> >> LongExtract.m3 LongGE.i3> >> LongGE.m3 LongGT.i3> >> LongGT.m3 LongInsert.i3> >> LongInsert.m3 LongLE.i3> >> LongLE.m3 LongLT.i3> >> LongLT.m3 LongMinus.i3> >> LongMinus.m3 LongMod.i3> >> LongMod.m3 LongModule.i3> >> LongModule.m3 LongNot.i3> >> LongNot.m3 LongOr.i3> >> LongOr.m3 LongPlus.i3> >> LongPlus.m3 LongRotate.i3> >> LongRotate.m3 LongShift.i3> >> LongShift.m3 LongTimes.i3> >> LongTimes.m3 LongXor.i3> >> LongXor.m3> >> cm3/m3-sys/m3front/src/builtinTypes/: LInt.i3 LInt.m3> >>> >> Log message:> >> Compiler and runtime extensions to support LONGINT type.> >> > >> Bootstrapping instructions: build and ship packages in the > >> following order> >> > >> m3middle> >> m3linker> >> m3front> >> m3quake> >> cm3> >> > >> This places a new compiler in INSTALL_DIR/pkg/cm3/TARGET/cm3.> >> > >> Use this new compiler to build and ship the new system:> >> > >> export CM3=INSTALL_DIR/pkg/cm3/TARGET/cm3> >> cd cm3/scripts> >> ./do-cm3-std.sh buildship> >> > >> If this is successful then move the new compiler to BINDIR:> >> > >> mv $CM3 INSTALL_DIR/bin/cm3> >> _________________________________________________________________ Recharge--play some free games. Win cool prizes too! http://club.live.com/home.aspx?icid=CLUB_wlmailtextlink -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Sun Aug 26 14:08:59 2007 From: jayk123 at hotmail.com (j k) Date: Sun, 26 Aug 2007 12:08:59 +0000 Subject: [M3commit] CVS Update: cm3 (64 bit integers...) Message-ID: Here is the change:< TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. 16_7fffffffffffffffL ];> (*TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. 16_7fffffffffffffffL ];*)> TYPE T = BITS BITSIZE(LONGINT) FOR [ FIRST(LONGINT) .. LAST(LONGINT) ];Otherwise you get a compile error when the constants overflow at compile time.I still think all this stuff is a little wierd. Can we write off ALPHA_OSF, assert that INTEGER is 32 bits, and introduce a new type that is the same size as a pointer?Again I think the types you want are: INT8, INT16, INT32, INT64 -- signed types with exact sizes, the same on all platforms (INT64 yet missing on Win32) UINT8, UINT16, UINT32, UINT64 -- unsigned types with exact sizes, the same on all platforms (UINT64 yet missing on Win32) SIZE_T, ?SSIZE_T? or ?PTRDIFF_T?-- unsigned and signed types for storing addresses, or sizes of arrays, or array indices, or the differences thereof, PERHAPS guaranteed to be 32 bits or 64 bits INTEGER -- same as SSIZE_T ?or? INT32?? What's the pickle story? Are pickles interchangable beteen Alpha and non-Alpha? Should probably be equiv to SSIZE_T. That's what Alpha has. LONGINT -- same as INT64 - Jay> Date: Sun, 26 Aug 2007 13:43:01 +0000> To: m3commit at elegosoft.com> From: jkrell at elego.de> Subject: [M3commit] CVS Update: cm3> > CVSROOT: /usr/cvs> Changes by: jkrell at birch. 07/08/26 13:43:01> > Modified files:> cm3/m3-libs/libm3/src/types/: Int64.i3 > > Log message:> Fix it to compile for Win32's temporary 32 bit Int64.> Is this correct? I think so.> _________________________________________________________________ Messenger Caf? ? open for fun 24/7. Hot games, cool activities served daily. Visit now. http://cafemessenger.com?ocid=TXT_TAGLM_AugWLtagline -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Sun Aug 26 14:10:37 2007 From: jayk123 at hotmail.com (j k) Date: Sun, 26 Aug 2007 12:10:37 +0000 Subject: [M3commit] CVS Update: cm3 Message-ID: before, I think: t.parent.init_int(abscall.loc, TargetInt.Zero, Type.Int32);doesn't compile.after: t.parent.init_int(abscall.loc, TargetInt.Zero[Target.Pre.Integer], Type.Int32);right? - Jay> Date: Sun, 26 Aug 2007 13:08:11 +0000> To: m3commit at elegosoft.com> From: jkrell at elego.de> Subject: [M3commit] CVS Update: cm3> > CVSROOT: /usr/cvs> Changes by: jkrell at birch. 07/08/26 13:08:11> > Modified files:> cm3/m3-sys/m3back/src/: Codex86.m3 > > Log message:> fix it to compile; unknown if this is correct> _________________________________________________________________ See what you?re getting into?before you go there http://newlivehotmail.com/?ocid=TXT_TAGHM_migration_HM_viral_preview_0507 -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Mon Aug 27 03:26:44 2007 From: jayk123 at hotmail.com (j k) Date: Mon, 27 Aug 2007 01:26:44 +0000 Subject: [M3commit] CVS Update: cm3 (64 bit integers...) Message-ID: I think fixing NT386 should be easy enough given just a /bit/more time.I've been poking through it a bit.. > No way. INTEGER is intended to be abstract -- as defined in the > language spec.I'll have to read it to see what characteristics are guaranteed. Assuming you can have "very large" arrays, approaching the address space, or at least half of it, you are generally stuck with either INTEGER being the size of a pointer, or some "complicated" representation, like with varying precision, or heck even floating point.> This leads us into the swamp, full of nightmares and dragons. I really tend to think "my way" is the clear simple way. (Not "my way", but the way of a LOT of code, some of it very high quality, some of it not). Yeah I am colored by "where I live", in the swamp perhaps. It all seems to work quite well. Granted there is a need sometimes for floating point and very high precision, but the types I list, plus bit fields of any size 1 to 64, satisfy nearly all needs very well and very clearly. You do have to declare that assigning a larger precision integer to a smaller precision integer is a checked operation that can fail. Or some way to turn on/off the checks, though, really.. if you look at the "runtime checks" that Visual C++ offers, if you really want silent truncation, you can & with the appropriate value, e.g. UINT32 b; UINT16 a = (b & 0xffff) will not fail. There is the matter of assuming two's complement or not. Do people still work under the notion that there might be one's complement or arbitrary other representations of fixed small precision integers? Again I'll have to read the spec to see what abstraction INTEGER provides. > You only get the compiler error for NT386, for which LONGINT is 32- Understood. - Jay > From: hosking at cs.purdue.edu> Date: Sun, 26 Aug 2007 11:28:49 -0400> To: jay.krell at cornell.edu> CC: m3commit at elegosoft.com> Subject: Re: [M3commit] CVS Update: cm3 (64 bit integers...)> > > On Aug 26, 2007, at 8:08 AM, j k wrote:> > > Here is the change:> >> > < TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. > > 16_7fffffffffffffffL ];> >> > > (*TYPE T = BITS 64 FOR [ -16_7fffffffffffffffL-1L .. > > 16_7fffffffffffffffL ];*)> > > TYPE T = BITS BITSIZE(LONGINT) FOR [ FIRST(LONGINT) .. LAST > > (LONGINT) ];> > This should be OK.> > > Otherwise you get a compile error when the constants overflow at > > compile time.> > You only get the compiler error for NT386, for which LONGINT is 32- > bits because the non-gcc backend can handle only 32-bit integers. > What we really need is for NT386 to use a back-end that is capable of > 64 bits. NT386GNU may be the easiest route to this.> > > I still think all this stuff is a little wierd. Can we write off > > ALPHA_OSF, assert that INTEGER is 32 bits, and introduce a new type > > that is the same size as a pointer?> > No way. INTEGER is intended to be abstract -- as defined in the > language spec.> > > Again I think the types you want are:> > INT8, INT16, INT32, INT64 -- signed types with exact sizes, the > > same on all platforms (INT64 yet missing on Win32)> > UINT8, UINT16, UINT32, UINT64 -- unsigned types with exact > > sizes, the same on all platforms (UINT64 yet missing on Win32)> > SIZE_T, ?SSIZE_T? or ?PTRDIFF_T?-- unsigned and signed types for > > storing addresses, or sizes of arrays, or array indices, or the > > differences thereof, PERHAPS guaranteed to be 32 bits or 64 bits> > INTEGER -- same as SSIZE_T ?or? INT32??> > What's the pickle story? Are pickles interchangable beteen > > Alpha and non-Alpha?> > Should probably be equiv to SSIZE_T. That's what Alpha has.> > LONGINT -- same as INT64> > This leads us into the swamp, full of nightmares and dragons.> > >> > - Jay> >> >> > > Date: Sun, 26 Aug 2007 13:43:01 +0000> > > To: m3commit at elegosoft.com> > > From: jkrell at elego.de> > > Subject: [M3commit] CVS Update: cm3> > >> > > CVSROOT: /usr/cvs> > > Changes by: jkrell at birch. 07/08/26 13:43:01> > >> > > Modified files:> > > cm3/m3-libs/libm3/src/types/: Int64.i3> > >> > > Log message:> > > Fix it to compile for Win32's temporary 32 bit Int64.> > > Is this correct? I think so.> > >> >> > Messenger Caf? ? open for fun 24/7. Hot games, cool activities > > served daily. Visit now.> _________________________________________________________________ Recharge--play some free games. Win cool prizes too! http://club.live.com/home.aspx?icid=CLUB_wlmailtextlink -------------- next part -------------- An HTML attachment was scrubbed... URL: From jayk123 at hotmail.com Mon Aug 27 03:27:27 2007 From: jayk123 at hotmail.com (j k) Date: Mon, 27 Aug 2007 01:27:27 +0000 Subject: [M3commit] CVS Update: cm3 Message-ID: Like..it was an array instead of a value, something like that. - Jay > From: hosking at cs.purdue.edu> Date: Sun, 26 Aug 2007 11:29:21 -0400> To: jkrell at elego.de> CC: m3commit at elegosoft.com> Subject: Re: [M3commit] CVS Update: cm3> > Why did this not compile?> > On Aug 26, 2007, at 1:08 PM, Jay Krell wrote:> > > CVSROOT: /usr/cvs> > Changes by: jkrell at birch. 07/08/26 13:08:11> >> > Modified files:> > cm3/m3-sys/m3back/src/: Codex86.m3> >> > Log message:> > fix it to compile; unknown if this is correct> _________________________________________________________________ See what you?re getting into?before you go there http://newlivehotmail.com/?ocid=TXT_TAGHM_migration_HM_viral_preview_0507 -------------- next part -------------- An HTML attachment was scrubbed... URL: