Message board for the users of flat assembler.
> Projects and Ideas > My pet project: booting SiliconNoVM with flatassembler
and thanks very much Tomasz Grysztar for making flatassembler publicly available. Also the board contains fantastic loads of Q's and A's which have been very valuable for me to get started and assess design and implementation options.
I want to report about my pet project in which I compare JIT platforms to AOT platforms. To set the bar at bit high, I'm implementing from the Smalltalk specs for booting AOT compiled methods and AOT evaluated DSL for the classes and objects.
The following has been achieved presently:
- one macro per higher level instruction, with args
- higher level IDE outputs macro name and parms
- fasm does the rest, output is linked into .exe stub
- the .exe can be debugged
At the moment I tinker with stack frames and closures (blocks) and the respective linkage. It was clear very early that x86 enter and leave can not be used after local variables have already been allocated on the stack, so I'm using macroinstruction for multiple groups of arguments and have control over the assembled effects.
After this more-or-less bread-and-butter business I plan to write a Decompiler which knows how to reconstruct the above mentioned higher level instructions. This is a must on Smalltalk platforms, and I welcome this challenge.
FWIW I'm using two IDE's, the Squeak+VM source+IDE and Pharo+VM source+IDE, just for keeping track with how things work at the present.
For anybody interested in nitty-gritty details, I'll try my best and respond here.
An overabundance of Smalltalk platforms doesn't exist, just start writing the next core in flatassembler.
|04 Dec 2013, 10:37||
< Last Thread | Next Thread >
Copyright © 1999-2020, Tomasz Grysztar. Also on GitHub, YouTube, Twitter.
Website powered by rwasa.