24 Apr 16:41
Re: static compilation [was: port of jolt-burg]
From: John Leuner <jewel@...>
Subject: Re: static compilation [was: port of jolt-burg]
Newsgroups: gmane.comp.lang.smalltalk.fonc
Date: 2008-04-24 14:41:11 GMT
Subject: Re: static compilation [was: port of jolt-burg]
Newsgroups: gmane.comp.lang.smalltalk.fonc
Date: 2008-04-24 14:41:11 GMT
On Wed, 2008-04-23 at 23:43 -0600, Michael FIG wrote: > John Leuner <jewel@...> writes: > > > I've been working on an experimental port of jolt-burg. The main difference is > > that my implementation language is Common Lisp and that my compiler targets > > relocatable ELF object files. > > Interesting! > > I was inspired by you, and tried my hand at getting similar changes > into jolt2. The attached patch should apply cleanly on top of SVN > -r407, followed by my jolt2-fixes.patch that I posted earlier. ... > It would be really nice to implement a few more CodeGenerator backends > to bypass assembly language entirely and generate binaries. It shouldn't be too different from what is there already. Although we have a "static" and "dynamic" generator, the dynamic generator is perfect for generating relocatable code which can then be linked into a static executable. > Slink has a naive three-region model for assembler output. First > comes a bss section with all the variables, then a data section with > all the strings, then finally a text section with all the compiled > functions. To my knowledge, this is adequate for the platforms on > which COLA already runs, but of course it would be good to be able to > provide something akin to linker scripts in the future to allow much > more flexible layout. For my simple tests I have managed with a .text and .data segment (plus a list of relocations and a symbol table). I haven't implemented any initializers for static variables like you have though. John
RSS Feed