LPMuds.net

LPMuds.net Forums => Drivers => Topic started by: silenus on May 21, 2019, 06:24:26 AM

Title: New fluffos repo containing the 2.28 version.
Post by: silenus on May 21, 2019, 06:24:26 AM
Wodan was kind enough to release a new version of the FluffOS 2 series, 2.28. I have placed this code including some modifications in the repo-

https://github.com/cartercheng/fluffos-2.x

The modifications are mainly some simple fixes to get it to compile under Ubuntu due to some changes in the header files and migration to the gcc C++ compiler mode in the Makefile. I will be gradually doing some cleaning up to get some unit testing into the driver. I made some changes last week which indicate the direction in which this is going.

Title: Re: New fluffos repo containing the 2.28 version.
Post by: Dworkin on August 17, 2019, 08:33:08 AM
I noticed that you started an issue for JIT compilation, where you consider the option to compile to LLVM IR directly.

Another option would be to do both, preserving lightning-fast LPC compilation. For JIT compilation for DGD, I chose to compile from VM bytecode to LLVM IR in multiple passes; detecting basic blocks, determining the types of expressions, doing dataflow analysis, and finally generating LLVM IR which can be compiled with clang. I have this mostly working (mud boots and I can walk around), but there are a few bugs to iron out.

You can find the code at https://github.com/dworkin/lpc-ext/tree/master/jit (https://github.com/dworkin/lpc-ext/tree/master/jit).  It could probably be adopted for FluffOS without too much difficulty.