<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>Dirk wants it to be easy to get the "m3cg text" out.<BR>I agree.<BR> <BR>We should add switches that enable outputting the m3cg binary files, the m3cg text files, either alone, or along with whatever is the "final" backend.<BR> <BR>I know, when cm3cg is the backend, the binary files are already output. And -keep keeps them.<BR> <BR>Here is a lame proposal:<BR> <BR>cm3 -m3cgbin outputs the m3cg bin files and exits<BR>cm3 -m3cgtext outputs the m3cg text files and exits<BR>cm3 -and-m3cgtext outputs the m3cg text files, and runs whatever other backend it would anyway<BR>cm3 -and-m3cgbin outputs the m3cg binary files, and runs whatever other backend it would anyway.<BR> <BR>-and-m3cgtext and -m3cgbin can be combined<BR>-m3cgbin and -m3cgtext cannot be<BR>-and-m3cgbin is redundant when using cm3cg and would almost silently be ignored; it would imply -keep<BR> <BR>My choice of switch names is poor, but I think the functionality is slightly useful, very easy to add, and shouldn't interfere with anything.<BR> <BR> <BR>What will be nice about these switches is -and-m3cgtext will make most of the tracing in M3x86.m3, M3C.m3 and parse.c redundant.<BR> <BR>Actually, the spec should be more like, user lists a set of output file types.<BR>cm3 -output:m3cgtext,m3cgbin,c,o<BR> <BR>kind of like a list of backends, or constructing a pipeline or multiple pipelines.<BR> <BR>It might be general enough to express generating "o" via "c" or "o" via cm3cg?<BR>Or "c", and then "o" via cm3cg?<BR> <BR> <BR> - Jay<BR>                                    </div></body>
</html>