[M3devel] Release engineering

Jay jay.krell at cornell.edu
Sat May 9 21:23:53 CEST 2009


> NOTE: I think the cm3 frontend is currently target independent,
 
 
Correct. It knows about all the targets.
word size, endian, alignment, jmpbuf size, whether or not
there is a stack walker
 
 
It does layout all the types/variables.
Maybe not as high level as you'd expect.
 
 
The NT386 backend is integrated into the front/middle end.
 
 
So we have:
  NT386:
   run cm3
   get a bunch of .obj files 
   just one process goes all the way from out of date sources to .obj files 
   It is quite fast. And the codegen is somewhat optimized even. 
 
 
  everything else
    run cm3
    and then for every out of date source file
       output an intermediate file
       run cm3cg
         read intermediate file
         write assembly
       run assembler
         read assembly
         write .o file
 
 
Someday maybe we can port the integrated backend to more targets.
 
 
 - Jay


More information about the M3devel mailing list