[M3devel] cm3: what are *.mc files

Jay K jay.krell at cornell.edu
Sun Jun 14 03:45:19 CEST 2015


You should never mix versions.
There is no need for a compatibilty mode.
 You get compatibility mode by building/using an older cm3 and cm3cg together.
The system is meant to be tightly coupled.
The file format exists I believe primarily as a licensing artifact.
 
 
When you use the C backend, or the NT386 backend, or presumably LLVM backend, you don't get the files.
An approximation of them is used in-memory for the C backend and the NT386 backend never
materializes the data, they are just temporary call frames, one at a time.
 
 
Unless you are in a development mode. Then m3cgcat is a useful
dumper of them, and it can translate to C calling into the C backend..
 
 
The files are not meant to live long.
And even if they did -- hypothetical cm3cginterp, cm3cjit, cm3cgrun --
it'd still be tightly coupled.
 
 
We are free to change enum values and add/remove fields to each enum.
The system has changed through time and there is no need to lock these aspects down.
 
 
What we need to be compatible with it .m3 and .i3 files.
They are currency.
 
 
There is perhaps some need to be compatible with .o/.mo/.io and even .m3.c/.i3.c.
 
 
The fact that the C backend has a different ABI than the gcc backend, in particular because
of nested functions taking the frame pointer as the last C parameter and not in a special register,
worries me, and makes me err toward appending "c" to BUILD_DIR and such, and maybe even TARGET.
or "csj" for setjmp -- so that later we have "cppeh" C++ with C++ exception handling..
 
 
But anyway, imho .mc files are internal, assuming Tony agrees..
 

  - Jay

 
> Date: Sat, 13 Jun 2015 07:40:59 -0400
> From: hendrik at topoi.pooq.com
> To: m3devel at elegosoft.com
> Subject: Re: [M3devel] cm3: what are *.mc files
> 
> On Sat, Jun 13, 2015 at 10:40:40AM +0200, Elmar Stellnberger wrote:
> > (and possibly one trying to force
> > application of cm3cg on a newer intermediate code
> > stream. ).
> 
> Not to mention the possibility of having a compatibility mode for an 
> old file format, in case it's not too much work.
> 
> -- hendrik
 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20150614/65c23eb2/attachment-0002.html>


More information about the M3devel mailing list