Clover2開発日誌

Clover2というJavaのように静的な型を持つRubyのようなコンパイラ+仮想マシンの開発日誌です。LLVMでJITもします。https://github.com/ab25cqにて開発しています。

JIT高速化第3弾。

とりあえず、出力するアセンブラの型が厳密になりました。

コンパイルに関してはb.clcのテストも通ってます。

後基礎ライブラリも正しいアセンブラを出力している様子です。

この後はコンパイルされたアセンブラのコードを読み込む部分になります。LLVMに付属するlli.cppを参考に読み込めるようにしたいと思います。読み込み実行することが出来たら、make testを実行してみます。

 

しかし、動かなくて愕然することになりそうですが。

まあ、ぼちぼち一歩ずつですね。

 

完成すればJust In Compileとは呼べなくなります。実行時にはコンパイルしていないので。どちらかとちうとネイティブコードを出力するコンパイラに近くなります。Clover2もネイティブコードを出力するコンパイラの仲間入りです。完成が楽しみです。