2017-08-01から1ヶ月間の記事一覧
とりあえず、出力するアセンブラの型が厳密になりました。 コンパイルに関してはb.clcのテストも通ってます。 後基礎ライブラリも正しいアセンブラを出力している様子です。 この後はコンパイルされたアセンブラのコードを読み込む部分になります。LLVMに付…
始めています。githubではブランチを切ったので、前の高速化を行ったときのコードは普通にgit clone https://github.com/ab25cq/clover2.gitでダウンロードできます。 第3弾ではコンパイル時にビットコードにコンパイルしています。この間のバグではバージ…
現在更なるJITの高速化を目指してコーディング中です。 コンパイル時にLLVMのbitcodeにClover2のバイトコードをコンパイルしてしまおうという考え方です。 作業中のコードはgithubでブランチを作っています。bit-compilerがそのコードです。ただバグが出てい…
ついにJITが動きました。 --with-jit指定を付けるとJITが有効になります。まだ処理速度がどれくらい速くなったか試してませんが、とりあえず完成です。 あと--with-optimizeでセグメンテーション違反が出てましたが修正しています。 JIT付きの準現代風、コン…
現在./configure --with-jitは動きません。 とりあえず、b.clのテストは全部通ってます。後はmake testを全てJITで通せば、終わりです。 クロージャーのJIT化には苦労しました。バグにバグを重ねなんとか動くところまで辿り着きました。 一応b.clはmake test…
現在./configure --with-jitは動きません。 だいぶ大物バグを修正できました。一つのバグに2,3日はかかった気がします。かなりの数のバグが有りました。バグの修正にまたバグが有ったりして、かなり苦労しました。やっぱり調子が悪いときにはコーディング…