From hosking at elego.de Tue Sep 18 20:34:51 2007 From: hosking at elego.de (Antony Hosking) Date: Tue, 18 Sep 2007 20:34:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070918183451.609DF10D4433@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/18 20:34:51 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTTypeFP.m3 Log message: Reformat for readability and adjust shifts to primes. From hosking at elego.de Tue Sep 18 22:26:32 2007 From: hosking at elego.de (Antony Hosking) Date: Tue, 18 Sep 2007 22:26:32 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070918202633.743AF10D4433@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/18 22:26:32 Modified files: cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3 Word.i3 Word.m3 m3makefile cm3/m3-sys/m3back/src/: Codex86.m3 cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3 cm3/m3-sys/m3front/src/builtinLong/: LongAnd.m3 LongDivide.m3 LongExtract.m3 LongGE.m3 LongGT.m3 LongInsert.m3 LongLE.m3 LongLT.m3 LongMinus.m3 LongMod.m3 LongModule.m3 LongNot.m3 LongOr.m3 LongPlus.m3 LongRotate.m3 LongShift.m3 LongTimes.m3 LongXor.m3 cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 ByteSize.m3 Ceiling.m3 Dec.m3 First.m3 Inc.m3 Last.m3 Max.m3 Min.m3 New.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 WordDivide.m3 WordExtract.m3 WordGE.m3 WordGT.m3 WordInsert.m3 WordLE.m3 WordLT.m3 WordMinus.m3 WordMod.m3 WordModule.m3 WordNot.m3 WordOr.m3 WordPlus.m3 WordRotate.m3 WordShift.m3 WordTimes.m3 WordXor.m3 cm3/m3-sys/m3front/src/exprs/: AddressExpr.m3 ArrayExpr.m3 CastExpr.m3 CheckExpr.m3 CompareExpr.m3 DivExpr.m3 EnumExpr.m3 EqualExpr.m3 Expr.m3 ExprParse.m3 InExpr.m3 IntegerExpr.i3 IntegerExpr.m3 ModExpr.m3 NamedExpr.m3 NilChkExpr.m3 RangeExpr.m3 ReelExpr.i3 ReelExpr.m3 SetExpr.m3 SubscriptExpr.m3 SubtractExpr.m3 cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 Marker.m3 Scanner.m3 TipeDesc.m3 Token.i3 Token.m3 cm3/m3-sys/m3front/src/stmts/: AssertStmt.m3 AssignStmt.m3 CaseStmt.m3 DebugStmt.m3 ForStmt.m3 TryFinStmt.m3 cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3 ObjectType.m3 OpenArrayType.m3 PackedType.m3 SubrangeType.m3 Type.m3 cm3/m3-sys/m3front/src/values/: EnumElt.m3 Exceptionz.m3 Formal.m3 Module.m3 Variable.m3 cm3/m3-sys/m3linker/src/: MxGen.m3 cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.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/m3tools/src/: M3Builtin.m3 M3Const.m3 M3Lexer.m3 M3Type.m3 Added files: cm3/m3-libs/m3core/src/word/: GenWord.ig GenWord.mg LongRep.i3 WordRep.i3 Log message: Tidied up implementation of target integer representation so that multi-precision comparisons can be performed, and other operations check overflow against the smallest precision value (this permits adding constants that have representations valid at all precisions and simplifies the compiler front-end significantly for the new LONGINT support. Tidied up a few other remaining issues with LONGINT support. From hosking at elego.de Fri Sep 21 19:29:58 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 21 Sep 2007 19:29:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070921173004.623C710D4440@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/21 19:29:58 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Avoid NIL pointer dereference if Alert is invoked on a thread that is already dead. From hosking at elego.de Fri Sep 21 22:44:08 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 21 Sep 2007 22:44:08 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070921204416.F00C310D4440@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/21 22:44:08 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Inadvertently included some incomplete code. From rodney at elego.de Sat Sep 22 23:01:09 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 22 Sep 2007 23:01:09 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070922210109.EAA7D10D447F@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/22 23:01:09 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: m3-eval.c Log message: Systematically add the mysterious '_' macro(?) call to all message strings in this source file. Also, a few cleanups of comments and formatting. From rodney at elego.de Sat Sep 22 23:19:02 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 22 Sep 2007 23:19:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070922211902.4BAA110D447F@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/22 23:19:02 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: m3-util.c Log message: Improve a few comments and clean up a bit of formatting. From rodney at elego.de Sat Sep 22 23:22:27 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 22 Sep 2007 23:22:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070922212227.8B9C710D447F@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/22 23:22:27 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: m3-lang.c Log message: Recent cm3 compilers have changed stabs output for bounds of subranges from signed-magnitude-decimal to twos-complement, variable length hexadecimal. Adapt m3gdb to recognize both formats. From rodney at elego.de Thu Sep 27 22:43:30 2007 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 27 Sep 2007 22:43:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070927204331.0648F10D4486@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/27 22:43:30 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: gdbtypes.h language.c m3-eval.c m3-exp.c m3-lang.c m3-lang.h m3-token.c m3-util.c m3-util.h m3-valprint.c value.c Log message: Add support of text and widetext literals in interactively-typed m3gdb commands. They can now be assigned to variables and passed as parameters. This entails m3gdb's calling Text.FromChars or Text.FromWideChars, to get a true TEXT allocated in the target's heap. Also, misc comment and formatting cleanups and more underscore macros. From rodney at elego.de Fri Sep 28 00:28:51 2007 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 28 Sep 2007 0:28:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070927222851.3FE2210D4486@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/28 00:28:51 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: m3-eval.c Log message: Add support of the concatenation operator "&". Use calls on Text.Cat to do it. NOTE: if you type 'print "ABC & " DEF"', m3gdb will execute three calls in the target program. Two on Text.FromChars to get the TEXT values allocated and one on Text.Cat to do the concatenation. All three TEXT strings will be allocated, but will immediately become garbage, available for collection. From rodney at elego.de Wed Sep 12 21:31:58 2007 From: rodney at elego.de (Rodney M. Bates) Date: Wed, 12 Sep 2007 19:31:58 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070912193140.7992910D4449@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/12 21:31:34 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: expression.h m3-eval.c m3-exp.c m3-lang.c m3-typeprint.c m3-util.c m3-util.h m3-valprint.c Log message: Several bug fixes and improvements to m3gdb: 1. Rework subtype relation and fix a backwards relation bug. 2. Factor out some redundant code. 3. Implement TYPECODE, on non-NIL values only. 4. Fix bug when trying to get the typecode of UNTRACED REF types. 5. Fix bug in computing addresses of fields of objects and records, when the entire object is printed. 6. Add command "info Modula-3" to show the compiler and backend used to compile the program being debugged. Aliases: modula-3, Modula3, modula3, M3, m3. From rodney at elego.de Sun Sep 16 21:23:05 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sun, 16 Sep 2007 19:23:05 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070916192258.2C2B710D4473@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/16 21:22:58 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Pickle2.i3 Log message: Add comments in Pickle2.i3 to warn about unportability traps, when moving from PM3 pickles to CM3 pickles. From rodney at elego.de Sun Sep 16 21:20:33 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sun, 16 Sep 2007 19:20:33 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070916192025.DF8F910D4473@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/16 21:20:25 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTTypeFP.m3 Log message: The hash code in this procedure appears to be left over from the SRC/PM3/EZM3 version, where a fingerprint was an array of 2 words. That compiles and works, but gives hash values only in the range [0..255], which can be far too small for some programs, resulting in poor use of the hash table . This is a better hash function for the CM3 case, where a fingerprint is an array of 8 bytes. From rodney at elego.de Sun Sep 16 21:23:47 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sun, 16 Sep 2007 19:23:47 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070916192340.1E96310D4473@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/16 21:23:40 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Pickle2.m3 Log message: Display the failing fingerprint when unpickling fails to find a pickled type in the reading main program. This helps in the first step of tracking down this difficult-to-diagnose problem. From hosking at elego.de Mon Sep 17 22:17:56 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 17 Sep 2007 20:17:56 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070917201748.A91C010D4472@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/17 22:17:48 Modified files: cm3/doc/reference/: syntax.html Log message: Add LONGINT to list of reserved identifiers. From hosking at elego.de Mon Sep 17 22:31:59 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 17 Sep 2007 20:31:59 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070917203151.2746E10D4472@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/17 22:31:50 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Add LONGINT to list of reserved identifiers. From hosking at elego.de Tue Sep 18 01:01:53 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 17 Sep 2007 23:01:53 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070917230144.4324110D4472@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/18 01:01:43 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Fix formatting error. From hosking at elego.de Tue Sep 18 20:34:51 2007 From: hosking at elego.de (Antony Hosking) Date: Tue, 18 Sep 2007 20:34:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070918183451.609DF10D4433@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/18 20:34:51 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTTypeFP.m3 Log message: Reformat for readability and adjust shifts to primes. From hosking at elego.de Tue Sep 18 22:26:32 2007 From: hosking at elego.de (Antony Hosking) Date: Tue, 18 Sep 2007 22:26:32 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070918202633.743AF10D4433@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/18 22:26:32 Modified files: cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3 Word.i3 Word.m3 m3makefile cm3/m3-sys/m3back/src/: Codex86.m3 cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3 cm3/m3-sys/m3front/src/builtinLong/: LongAnd.m3 LongDivide.m3 LongExtract.m3 LongGE.m3 LongGT.m3 LongInsert.m3 LongLE.m3 LongLT.m3 LongMinus.m3 LongMod.m3 LongModule.m3 LongNot.m3 LongOr.m3 LongPlus.m3 LongRotate.m3 LongShift.m3 LongTimes.m3 LongXor.m3 cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 ByteSize.m3 Ceiling.m3 Dec.m3 First.m3 Inc.m3 Last.m3 Max.m3 Min.m3 New.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 WordDivide.m3 WordExtract.m3 WordGE.m3 WordGT.m3 WordInsert.m3 WordLE.m3 WordLT.m3 WordMinus.m3 WordMod.m3 WordModule.m3 WordNot.m3 WordOr.m3 WordPlus.m3 WordRotate.m3 WordShift.m3 WordTimes.m3 WordXor.m3 cm3/m3-sys/m3front/src/exprs/: AddressExpr.m3 ArrayExpr.m3 CastExpr.m3 CheckExpr.m3 CompareExpr.m3 DivExpr.m3 EnumExpr.m3 EqualExpr.m3 Expr.m3 ExprParse.m3 InExpr.m3 IntegerExpr.i3 IntegerExpr.m3 ModExpr.m3 NamedExpr.m3 NilChkExpr.m3 RangeExpr.m3 ReelExpr.i3 ReelExpr.m3 SetExpr.m3 SubscriptExpr.m3 SubtractExpr.m3 cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 Marker.m3 Scanner.m3 TipeDesc.m3 Token.i3 Token.m3 cm3/m3-sys/m3front/src/stmts/: AssertStmt.m3 AssignStmt.m3 CaseStmt.m3 DebugStmt.m3 ForStmt.m3 TryFinStmt.m3 cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3 ObjectType.m3 OpenArrayType.m3 PackedType.m3 SubrangeType.m3 Type.m3 cm3/m3-sys/m3front/src/values/: EnumElt.m3 Exceptionz.m3 Formal.m3 Module.m3 Variable.m3 cm3/m3-sys/m3linker/src/: MxGen.m3 cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.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/m3tools/src/: M3Builtin.m3 M3Const.m3 M3Lexer.m3 M3Type.m3 Added files: cm3/m3-libs/m3core/src/word/: GenWord.ig GenWord.mg LongRep.i3 WordRep.i3 Log message: Tidied up implementation of target integer representation so that multi-precision comparisons can be performed, and other operations check overflow against the smallest precision value (this permits adding constants that have representations valid at all precisions and simplifies the compiler front-end significantly for the new LONGINT support. Tidied up a few other remaining issues with LONGINT support. From hosking at elego.de Fri Sep 21 19:29:58 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 21 Sep 2007 19:29:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070921173004.623C710D4440@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/21 19:29:58 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Avoid NIL pointer dereference if Alert is invoked on a thread that is already dead. From hosking at elego.de Fri Sep 21 22:44:08 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 21 Sep 2007 22:44:08 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070921204416.F00C310D4440@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/21 22:44:08 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Inadvertently included some incomplete code. From rodney at elego.de Sat Sep 22 23:01:09 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 22 Sep 2007 23:01:09 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070922210109.EAA7D10D447F@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/22 23:01:09 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: m3-eval.c Log message: Systematically add the mysterious '_' macro(?) call to all message strings in this source file. Also, a few cleanups of comments and formatting. From rodney at elego.de Sat Sep 22 23:19:02 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 22 Sep 2007 23:19:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070922211902.4BAA110D447F@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/22 23:19:02 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: m3-util.c Log message: Improve a few comments and clean up a bit of formatting. From rodney at elego.de Sat Sep 22 23:22:27 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 22 Sep 2007 23:22:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070922212227.8B9C710D447F@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/22 23:22:27 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: m3-lang.c Log message: Recent cm3 compilers have changed stabs output for bounds of subranges from signed-magnitude-decimal to twos-complement, variable length hexadecimal. Adapt m3gdb to recognize both formats. From rodney at elego.de Thu Sep 27 22:43:30 2007 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 27 Sep 2007 22:43:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070927204331.0648F10D4486@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/27 22:43:30 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: gdbtypes.h language.c m3-eval.c m3-exp.c m3-lang.c m3-lang.h m3-token.c m3-util.c m3-util.h m3-valprint.c value.c Log message: Add support of text and widetext literals in interactively-typed m3gdb commands. They can now be assigned to variables and passed as parameters. This entails m3gdb's calling Text.FromChars or Text.FromWideChars, to get a true TEXT allocated in the target's heap. Also, misc comment and formatting cleanups and more underscore macros. From rodney at elego.de Fri Sep 28 00:28:51 2007 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 28 Sep 2007 0:28:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070927222851.3FE2210D4486@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/28 00:28:51 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: m3-eval.c Log message: Add support of the concatenation operator "&". Use calls on Text.Cat to do it. NOTE: if you type 'print "ABC & " DEF"', m3gdb will execute three calls in the target program. Two on Text.FromChars to get the TEXT values allocated and one on Text.Cat to do the concatenation. All three TEXT strings will be allocated, but will immediately become garbage, available for collection. From rodney at elego.de Wed Sep 12 21:31:58 2007 From: rodney at elego.de (Rodney M. Bates) Date: Wed, 12 Sep 2007 19:31:58 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070912193140.7992910D4449@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/12 21:31:34 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: expression.h m3-eval.c m3-exp.c m3-lang.c m3-typeprint.c m3-util.c m3-util.h m3-valprint.c Log message: Several bug fixes and improvements to m3gdb: 1. Rework subtype relation and fix a backwards relation bug. 2. Factor out some redundant code. 3. Implement TYPECODE, on non-NIL values only. 4. Fix bug when trying to get the typecode of UNTRACED REF types. 5. Fix bug in computing addresses of fields of objects and records, when the entire object is printed. 6. Add command "info Modula-3" to show the compiler and backend used to compile the program being debugged. Aliases: modula-3, Modula3, modula3, M3, m3. From rodney at elego.de Sun Sep 16 21:23:05 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sun, 16 Sep 2007 19:23:05 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070916192258.2C2B710D4473@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/16 21:22:58 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Pickle2.i3 Log message: Add comments in Pickle2.i3 to warn about unportability traps, when moving from PM3 pickles to CM3 pickles. From rodney at elego.de Sun Sep 16 21:20:33 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sun, 16 Sep 2007 19:20:33 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070916192025.DF8F910D4473@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/16 21:20:25 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTTypeFP.m3 Log message: The hash code in this procedure appears to be left over from the SRC/PM3/EZM3 version, where a fingerprint was an array of 2 words. That compiles and works, but gives hash values only in the range [0..255], which can be far too small for some programs, resulting in poor use of the hash table . This is a better hash function for the CM3 case, where a fingerprint is an array of 8 bytes. From rodney at elego.de Sun Sep 16 21:23:47 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sun, 16 Sep 2007 19:23:47 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070916192340.1E96310D4473@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/16 21:23:40 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Pickle2.m3 Log message: Display the failing fingerprint when unpickling fails to find a pickled type in the reading main program. This helps in the first step of tracking down this difficult-to-diagnose problem. From hosking at elego.de Mon Sep 17 22:17:56 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 17 Sep 2007 20:17:56 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070917201748.A91C010D4472@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/17 22:17:48 Modified files: cm3/doc/reference/: syntax.html Log message: Add LONGINT to list of reserved identifiers. From hosking at elego.de Mon Sep 17 22:31:59 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 17 Sep 2007 20:31:59 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070917203151.2746E10D4472@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/17 22:31:50 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Add LONGINT to list of reserved identifiers. From hosking at elego.de Tue Sep 18 01:01:53 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 17 Sep 2007 23:01:53 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070917230144.4324110D4472@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/18 01:01:43 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Fix formatting error. From hosking at elego.de Tue Sep 18 20:34:51 2007 From: hosking at elego.de (Antony Hosking) Date: Tue, 18 Sep 2007 20:34:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070918183451.609DF10D4433@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/18 20:34:51 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTTypeFP.m3 Log message: Reformat for readability and adjust shifts to primes. From hosking at elego.de Tue Sep 18 22:26:32 2007 From: hosking at elego.de (Antony Hosking) Date: Tue, 18 Sep 2007 22:26:32 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070918202633.743AF10D4433@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/18 22:26:32 Modified files: cm3/m3-libs/m3core/src/word/: Long.i3 Long.m3 Word.i3 Word.m3 m3makefile cm3/m3-sys/m3back/src/: Codex86.m3 cm3/m3-sys/m3front/src/builtinInfo/: InfoThisLine.m3 cm3/m3-sys/m3front/src/builtinLong/: LongAnd.m3 LongDivide.m3 LongExtract.m3 LongGE.m3 LongGT.m3 LongInsert.m3 LongLE.m3 LongLT.m3 LongMinus.m3 LongMod.m3 LongModule.m3 LongNot.m3 LongOr.m3 LongPlus.m3 LongRotate.m3 LongShift.m3 LongTimes.m3 LongXor.m3 cm3/m3-sys/m3front/src/builtinOps/: Abs.m3 BitSize.m3 ByteSize.m3 Ceiling.m3 Dec.m3 First.m3 Inc.m3 Last.m3 Max.m3 Min.m3 New.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 WordDivide.m3 WordExtract.m3 WordGE.m3 WordGT.m3 WordInsert.m3 WordLE.m3 WordLT.m3 WordMinus.m3 WordMod.m3 WordModule.m3 WordNot.m3 WordOr.m3 WordPlus.m3 WordRotate.m3 WordShift.m3 WordTimes.m3 WordXor.m3 cm3/m3-sys/m3front/src/exprs/: AddressExpr.m3 ArrayExpr.m3 CastExpr.m3 CheckExpr.m3 CompareExpr.m3 DivExpr.m3 EnumExpr.m3 EqualExpr.m3 Expr.m3 ExprParse.m3 InExpr.m3 IntegerExpr.i3 IntegerExpr.m3 ModExpr.m3 NamedExpr.m3 NilChkExpr.m3 RangeExpr.m3 ReelExpr.i3 ReelExpr.m3 SetExpr.m3 SubscriptExpr.m3 SubtractExpr.m3 cm3/m3-sys/m3front/src/misc/: CG.i3 CG.m3 Coverage.m3 Marker.m3 Scanner.m3 TipeDesc.m3 Token.i3 Token.m3 cm3/m3-sys/m3front/src/stmts/: AssertStmt.m3 AssignStmt.m3 CaseStmt.m3 DebugStmt.m3 ForStmt.m3 TryFinStmt.m3 cm3/m3-sys/m3front/src/types/: ArrayType.m3 EnumType.m3 ObjectType.m3 OpenArrayType.m3 PackedType.m3 SubrangeType.m3 Type.m3 cm3/m3-sys/m3front/src/values/: EnumElt.m3 Exceptionz.m3 Formal.m3 Module.m3 Variable.m3 cm3/m3-sys/m3linker/src/: MxGen.m3 cm3/m3-sys/m3middle/src/: M3Buf.m3 M3CG_BinRd.m3 M3CG_BinWr.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/m3tools/src/: M3Builtin.m3 M3Const.m3 M3Lexer.m3 M3Type.m3 Added files: cm3/m3-libs/m3core/src/word/: GenWord.ig GenWord.mg LongRep.i3 WordRep.i3 Log message: Tidied up implementation of target integer representation so that multi-precision comparisons can be performed, and other operations check overflow against the smallest precision value (this permits adding constants that have representations valid at all precisions and simplifies the compiler front-end significantly for the new LONGINT support. Tidied up a few other remaining issues with LONGINT support. From hosking at elego.de Fri Sep 21 19:29:58 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 21 Sep 2007 19:29:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070921173004.623C710D4440@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/21 19:29:58 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Avoid NIL pointer dereference if Alert is invoked on a thread that is already dead. From hosking at elego.de Fri Sep 21 22:44:08 2007 From: hosking at elego.de (Antony Hosking) Date: Fri, 21 Sep 2007 22:44:08 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070921204416.F00C310D4440@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/21 22:44:08 Modified files: cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 Log message: Inadvertently included some incomplete code. From rodney at elego.de Sat Sep 22 23:01:09 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 22 Sep 2007 23:01:09 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070922210109.EAA7D10D447F@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/22 23:01:09 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: m3-eval.c Log message: Systematically add the mysterious '_' macro(?) call to all message strings in this source file. Also, a few cleanups of comments and formatting. From rodney at elego.de Sat Sep 22 23:19:02 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 22 Sep 2007 23:19:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070922211902.4BAA110D447F@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/22 23:19:02 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: m3-util.c Log message: Improve a few comments and clean up a bit of formatting. From rodney at elego.de Sat Sep 22 23:22:27 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 22 Sep 2007 23:22:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070922212227.8B9C710D447F@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/22 23:22:27 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: m3-lang.c Log message: Recent cm3 compilers have changed stabs output for bounds of subranges from signed-magnitude-decimal to twos-complement, variable length hexadecimal. Adapt m3gdb to recognize both formats. From rodney at elego.de Thu Sep 27 22:43:30 2007 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 27 Sep 2007 22:43:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070927204331.0648F10D4486@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/27 22:43:30 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: gdbtypes.h language.c m3-eval.c m3-exp.c m3-lang.c m3-lang.h m3-token.c m3-util.c m3-util.h m3-valprint.c value.c Log message: Add support of text and widetext literals in interactively-typed m3gdb commands. They can now be assigned to variables and passed as parameters. This entails m3gdb's calling Text.FromChars or Text.FromWideChars, to get a true TEXT allocated in the target's heap. Also, misc comment and formatting cleanups and more underscore macros. From rodney at elego.de Fri Sep 28 00:28:51 2007 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 28 Sep 2007 0:28:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20070927222851.3FE2210D4486@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/28 00:28:51 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: m3-eval.c Log message: Add support of the concatenation operator "&". Use calls on Text.Cat to do it. NOTE: if you type 'print "ABC & " DEF"', m3gdb will execute three calls in the target program. Two on Text.FromChars to get the TEXT values allocated and one on Text.Cat to do the concatenation. All three TEXT strings will be allocated, but will immediately become garbage, available for collection. From rodney at elego.de Wed Sep 12 21:31:58 2007 From: rodney at elego.de (Rodney M. Bates) Date: Wed, 12 Sep 2007 19:31:58 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070912193140.7992910D4449@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/12 21:31:34 Modified files: cm3/m3-sys/m3gdb/gdb/gdb/: expression.h m3-eval.c m3-exp.c m3-lang.c m3-typeprint.c m3-util.c m3-util.h m3-valprint.c Log message: Several bug fixes and improvements to m3gdb: 1. Rework subtype relation and fix a backwards relation bug. 2. Factor out some redundant code. 3. Implement TYPECODE, on non-NIL values only. 4. Fix bug when trying to get the typecode of UNTRACED REF types. 5. Fix bug in computing addresses of fields of objects and records, when the entire object is printed. 6. Add command "info Modula-3" to show the compiler and backend used to compile the program being debugged. Aliases: modula-3, Modula3, modula3, M3, m3. From rodney at elego.de Sun Sep 16 21:23:05 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sun, 16 Sep 2007 19:23:05 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070916192258.2C2B710D4473@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/16 21:22:58 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Pickle2.i3 Log message: Add comments in Pickle2.i3 to warn about unportability traps, when moving from PM3 pickles to CM3 pickles. From rodney at elego.de Sun Sep 16 21:20:33 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sun, 16 Sep 2007 19:20:33 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070916192025.DF8F910D4473@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/16 21:20:25 Modified files: cm3/m3-libs/m3core/src/runtime/common/: RTTypeFP.m3 Log message: The hash code in this procedure appears to be left over from the SRC/PM3/EZM3 version, where a fingerprint was an array of 2 words. That compiles and works, but gives hash values only in the range [0..255], which can be far too small for some programs, resulting in poor use of the hash table . This is a better hash function for the CM3 case, where a fingerprint is an array of 8 bytes. From rodney at elego.de Sun Sep 16 21:23:47 2007 From: rodney at elego.de (Rodney M. Bates) Date: Sun, 16 Sep 2007 19:23:47 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070916192340.1E96310D4473@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 07/09/16 21:23:40 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Pickle2.m3 Log message: Display the failing fingerprint when unpickling fails to find a pickled type in the reading main program. This helps in the first step of tracking down this difficult-to-diagnose problem. From hosking at elego.de Mon Sep 17 22:17:56 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 17 Sep 2007 20:17:56 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070917201748.A91C010D4472@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/17 22:17:48 Modified files: cm3/doc/reference/: syntax.html Log message: Add LONGINT to list of reserved identifiers. From hosking at elego.de Mon Sep 17 22:31:59 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 17 Sep 2007 20:31:59 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070917203151.2746E10D4472@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/17 22:31:50 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Add LONGINT to list of reserved identifiers. From hosking at elego.de Tue Sep 18 01:01:53 2007 From: hosking at elego.de (Antony Hosking) Date: Mon, 17 Sep 2007 23:01:53 -0000 Subject: [M3commit] CVS Update: cm3 Message-ID: <20070917230144.4324110D4472@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 07/09/18 01:01:43 Modified files: cm3/doc/reference/complete/: m3-defn-complete.tex Log message: Fix formatting error.