[M3devel] NT386 with cm3-5.5 bootstrap compiler

Tony Hosking hosking at cs.purdue.edu
Wed Sep 19 16:55:24 CEST 2007


It strikes me that you may need to sequence as follows to avoid  
running into having a compiler that does not handle  LONGINT.

Using the "devel_LONGINT_start" tagged versions of m3core and libm3  
from CVS,
using your original compiler, build and ship in the following order:

m3core (devel_LONGINT_start)
libm3 (devel_LONGINT_start)
m3middle
m3linker
m3front
m3quake
cm3

Now you have a new compiler linked against the old m3core.

Using the new compiler (in cm3/NT386), and the CVS head versions of  
m3core and libm3,
build and ship in the following order:

m3core (CVS head)
libm3 (CVS head)
m3middle
m3linker
m3front
m3quake
cm3

Now you have a new compiler linked against the new m3core.

Copy this new compiler to your CM3 installation bin directory.

Use this new compiler to rebuild the world.


On Sep 18, 2007, at 8:41 PM, Jay wrote:

> Daniel, can you try just going back to 5.2.6 and running scripts\win 
> \update?
> You should be able to build the current source the last "official"  
> Win32 binaries, as long as you build in the correct order and all,  
> which the update.cmd does. You know, there's a certain mentality  
> around bootstrapping and keeping the connection back to the  
> previous version, that I upheld. As long as you are careful, you  
> can go from old binaries to new binaries, you don't have to get the  
> new binaries magically somewhere, though you do need the old  
> binaries magically from somewhere. :)
>
> Perhaps there's a regression. I can check "later".
>
>  - Jay
> Date: Wed, 19 Sep 2007 00:49:57 +0200
> From: dabenavidesd at yahoo.es
> To: hosking at cs.purdue.edu; m3devel at elegosoft.com
> Subject: Re: [M3devel] NT386 with cm3-5.5 bootstrap compiler
>
> Hi:
>
> I have compiled with the Jay produced 5.5 bootstrap compiler, and  
> also with 5.1.3a,
>  5.2.6 and get the same error.
>
> Thanks
>
> >You need to compile the new m3core with the old compiler so that the
> >symbol is available to you when you compile using the new compiler.
> >This is a classical bootstrapping problem.
>
> >On Sep 18, 2007, at 6:30 PM, Daniel Alejandro Benavides D. wrote:
>
> > Hi:
> > Thanks for your answer, I have done that and also I get the same
> > runtime error
> > in the same source file:
> >
> >
> > C:\cm3-cvs\cm3\m3-libs\m3core>CM3
> > --- building in NT386 ---
> >
> > ignoring ..\src\m3overrides
> >
> > new source -> compiling RTHooks.i3
> > new source -> compiling RT0.i3
> > new source -> compiling RuntimeError.i3
> > new source -> compiling Word.i3
> > new source -> compiling RTException.i3
> > new  source -> compiling RTHooks.m3
> > new source -> compiling RT0.m3
> > new source -> compiling Compiler.i3
> > new source -> compiling RuntimeError.m3
> > new source -> compiling Compiler.m3
> > new source -> compiling RTAllocator.i3
> > new source -> compiling RTType.i3
> > new source -> compiling Csetjmp.i3
> > new source -> compiling BasicCtypes.i3
> > new source -> compiling Ctypes.i3
> > new source -> compiling RTMachine.i3
> > new source -> compiling RTHeapDep.i3
> > new source -> compiling RTHeapRep.i3
> > new source -> compiling ThreadF.i3
> > new source -> compiling RTOS.i3
> > new source -> compiling RTMisc.i3
> > new source -> compiling RTHeap.i3
> > new source -> compiling Cstdlib.i3
> > new source -> compiling Cstddef.i3
> > new source -> compiling RTAllocCnts.i3
> > new source -> compiling RTAllocator.m3
> > new  source -> compiling RTAllocStats.i3
> > new source -> compiling Convert.i3
> > new source -> compiling TextClass.i3
> > new source -> compiling Text.i3
> > new source -> compiling RTProcedureSRC.i3
> > new source -> compiling Fingerprint.i3
> > new source -> compiling RTProcedure.i3
> > new source -> compiling RTStack.i3
> > new source -> compiling RTAllocStats.m3
> > "..\src\runtime\common\RTAllocStats.m3", line 46: undefined runtime
> > symbol !! (R
> > THooks.AllocateTracedRef)
> >
> >
> > ***
> > *** runtime error:
> > *** Attempt to reference an illegal memory location.
> > *** pc = 0x4c4a0d = StartCall + 0xf in ..\src\values\Procedure.m3
> > ***
> >
> > Stack trace:
> > FP PC Procedure
> > --------- --------- -------------------------------
> > 0x12f494 0x60b3ce SystemError + 0x66 in ..\src\runtime\NT386
> > \RTSignal.m3
> > 0x12f4c4  0x4c4a0d StartCall + 0xf in ..\src\values\Procedure.m3
> > 0x12f524 0x51beb8 GenRecord + 0x73 in ..\src\builtinOps\New.m3
> > 0x12f58c 0x51b8a3 GenRef + 0x111 in ..\src\builtinOps\New.m3
> > 0x12f5c8 0x51b70f Gen + 0x12d in ..\src\builtinOps\New.m3
> > 0x12f5e0 0x51b4a3 Prep + 0x15 in ..\src\builtinOps\New.m3
> > 0x12f600 0x550f08 Prep + 0x75 in ..\src\exprs\CallExpr.m3
> > 0x12f61c 0x54312d Prep + 0x54 in ..\src\exprs\Expr.m3
> > 0x12f63c 0x544d7f PrepForEmit + 0x81 in ..\src\stmts\AssignStmt.m3
> > 0x12f66c 0x54453b Compile + 0xd6 in ..\src\stmts\AssignStmt.m3
> > ......... ......... ... more frames ...
> >
> > C:\cm3-cvs\cm3\m3-libs\m3core>
> > >You need to recompile m3core before compiling with the new  
> compiler.
> >
> > >On Sep 18, 2007, at 5:29 PM, Daniel Alejandro Benavides D. wrote:
> >
> > > Hi all:
> > > Im getting this runtiem error because the symbol
> > >
> > >  missing version stamps -> compiling RTAllocStats.m3
> > > "..\src\runtime\common\RTAllocStats.m3", line 46: undefined  
> runtime
> > > symbol !! (R
> > > THooks.AllocateTracedRef)
> > >
> > > AllocateTracedRef is not defined in the m3core version of this Dll
> > > (I guess the change is more new than the bootstrap compiler). How
> > > can avoid this issue?
> > >
> > > Thanks in advance
> > >
> > > C:\cm3-cvs\cm3\scripts\win>do-cm3-base.cmd
> > > INSTALLROOT=C:\cm3
> > > LIB=%INSTALLROOT%\LIB;%LIB%
> > > CM3ROOT=C:\\cm3-cvs\\cm3
> > > call C:\cm3-cvs\cm3\scripts\win\pkgmap -c "cm3 -build -override -
> > > DROOT=C:\\cm3-c
> > > vs\\cm3" import-libs m3core libm3 m3middle m3quake m3scanner
> > > m3tools m3cgcat m3c
> > > ggen m3bundle mklib dll2lib fix_nl libdump bitvector digraph
> > > parseparams realgeo
> > > metry set slisp  sortedtableextras table-list tempfiles tcp tapi
> > > === package C:\cm3-cvs\cm3\m3-win\import-libs ===
> > > +++ "cm3 -build -override -DROOT=C:\\cm3-cvs\\cm3" +++
> > > --- building in NT386 ---
> > >
> > > unable to read ..\src\m3overrides, options "-override" and "-x"
> > > ignored.
> > > === package C:\cm3-cvs\cm3\m3-libs\m3core ===
> > > +++ "cm3 -build -override -DROOT=C:\\cm3-cvs\\cm3" +++
> > > --- building in NT386 ---
> > >
> > > missing version stamps -> compiling RTAllocStats.m3
> > > "..\src\runtime\common\RTAllocStats.m3", line 46: undefined  
> runtime
> > > symbol !! (R
> > > THooks.AllocateTracedRef)
> > >
> > >
> > > ***
> > > *** runtime error:
> > > *** Attempt to reference an illegal memory location.
> > > *** pc = 0x4c4a0d = StartCall + 0xf in ..\src\values\Procedure.m3
> > > ***
> > >
> > >  Stack trace:
> > > FP PC Procedure
> > > --------- --------- -------------------------------
> > > 0x12f494 0x60b3ce SystemError + 0x66 in ..\src\runtime\NT386
> > > \RTSignal.m3
> > > 0x12f4c4 0x4c4a0d StartCall + 0xf in ..\src\values\Procedure.m3
> > > 0x12f524 0x51beb8 GenRecord + 0x73 in ..\src\builtinOps\New.m3
> > > 0x12f58c 0x51b8a3 GenRef + 0x111 in ..\src\builtinOps\New.m3
> > > 0x12f5c8 0x51b70f Gen + 0x12d in ..\src\builtinOps\New.m3
> > > 0x12f5e0 0x51b4a3 Prep + 0x15 in ..\src\builtinOps\New.m3
> > > 0x12f600 0x550f08 Prep + 0x75 in ..\src\exprs\CallExpr.m3
> > > 0x12f61c 0x54312d Prep + 0x54 in ..\src\exprs\Expr.m3
> > > 0x12f63c 0x544d7f PrepForEmit + 0x81 in
> > ..\src\stmts\AssignStmt.m3
> > > 0x12f66c 0x54453b Compile + 0xd6 in ..\src\stmts\AssignStmt.m3
> > > ......... ......... ... more frames ...
> > > *** execution of cm3 -build -override  -DROOT=C:\\cm3-cvs\\cm3
> > > failed with 0 ***
> > > error : call C:\cm3-cvs\cm3\scripts\win\pkgmap -c "cm3 -build -
> > > override -DROOT=C
> > > :\\cm3-cvs\\cm3" import-libs m3core libm3 m3middle m3quake
> > > m3scanner m3tools m3c
> > > gcat m3cggen m3bundle mklib dll2lib fix_nl libdump bitvector
> > > digraph parseparams
> > > realgeometry set slisp sortedtableextras table-list tempfiles tcp
> > > tapi failed
> > >
> > > C:\cm3-cvs\cm3\scripts\win>
> Sé un Mejor Amante del Cine
> ¿Quieres saber cómo? ¡Deja que otras personas te ayuden! .
>
> Make your little one a shining star! Shine on!




More information about the M3devel mailing list