[comp.os.minix] 'c68' 386 port framework ready

HBO043%DJUKFA11.BITNET@cunyvm.cuny.edu (Christoph van Wuellen) (12/11/90)

I am proud to announce the 386 port of c68.
After two days, i managed to write the new code generator and the modified
register allocator.
The compiler is not complete yet (e.g. floating point stuff omitted), but
it is able to compile itself and to reproduce itself identically.

things to do
- register variables: free are ebx, edi, esi, (edi and esi only if the
  function in question does not assign structures)
- peephole optimizations (e.q. a lot of addl $1,... wait to be converted
  to incl ....

Performance:
On a 25 MHz 386 with cache (Sun386i):
ca. 6500 Dhrystones 1.1, ca. 7150 Dhrystones 2.1

time to compile itself, compiler compiled by Sun-C: 32.0 sec user
time to compile itself, self-compiled:            : 36.9 sec user

Since there are no register variables and no peephole optimizations,
I regard these are fair figures.

80386 gurus, please contact me, I want to beat Sun-C.
C.v.W.

P.S.
After some strategic changes in c68 (e.g enums must become int, not short,
double is not the same as float), there will a a converged c68/c386 version
with very few #ifdefs and the modules
gen386.c     gen68k.c    (replacing gencode.c)
peep386.c    peep68k.c   (replacing peepgen.c)
reg386.c     reg68k.c    (replacing register.c)
outsun.c  --- output module for Sun386i assembler, should be OK for GAS.