<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
Given the current setup..I still think worthwhile to send diffs (just not in check comments..), attached.<BR>
Of course, I might have made further edits since producing that, but I try to send latest.<BR>
<BR>
- Jay<BR> <BR>> Date: Thu, 25 Feb 2010 14:06:40 +0000<BR>> To: m3commit@elegosoft.com<BR>> From: jkrell@elego.de<BR>> Subject: [M3commit] CVS Update: cm3<BR>> <BR>> CVSROOT: /usr/cvs<BR>> Changes by: jkrell@birch. 10/02/25 14:06:40<BR>> <BR>> Modified files:<BR>> cm3/m3-sys/m3back/src/: Codex86.i3 Codex86.m3 M3BackInt.i3 <BR>> M3BackInt.m3 M3x86.m3 M3x86Rep.i3 <BR>> Stackx86.i3 Stackx86.m3 Wrx86.i3 <BR>> Wrx86.m3 m3makefile <BR>> cm3/m3-sys/m3middle/src/: TInt.i3 TInt.m3 TWord.i3 TWord.m3 <BR>> Removed files:<BR>> cm3/m3-sys/m3back/src/: M3BackWord.i3 M3BackWord.m3 <BR>> <BR>> Log message:<BR>> eliminate M3BackWord<BR>> <BR>> drastically reduce M3BackInt to just:<BR>> FromInt<BR>> ToInt<BR>> FromTargetInt<BR>> ToDiagnosticText<BR>> which can probably all go into TInt as something like<BR>> FromIntAndChop<BR>> ChopAndToInt<BR>> CopyAndChop<BR>> ToTextVerbose<BR>> or somesuch, or caller synthesize<BR>> <BR>> add TInt.NE, GT, GE, Abs, Negate<BR>> TWord.GE, GT<BR>> <BR>> which make for a smoother transition for m3back, even if the caller<BR>> can inline them<BR>> <BR>> change TInt.EQ and NE to use structural (infix) comparison<BR>> <BR>> move the constants all to TInt to reduce abstraction boundary violations:<BR>> Three, Four, Eight<BR>> ThirtyOne, ThirtyTwo,<BR>> SixtyThree,<BR>> F3FF<BR>> x0400, x0800, x0F00,<BR>> MaxU8 -- changed to Target.Word8.max<BR>> MThirtyOne, MSixtyThree<BR>> <BR>> perhaps not the best choice.<BR>> At least 31, 32, 63, 64, -31, -63, maxu8 aren't super target-dependent.<BR>> Some of the others are encodings for x87 status flags for example.<BR>> Converting from strings is another not bad idea.<BR>> <BR>> The only abstraction boundary violation remaining now is the avoidance of ToBytes in init_int<BR>> where the bytes are passed directly to m3objfile.AppendBytes<BR>> This should perhaps be revisited.<BR>> Granted, inconsistency with regard to where I violate the boundary.<BR>> I have to look into ToBytes again.<BR> </body>
</html>