2013-04-01から1ヶ月間の記事一覧

コンパイラを新規作成するなら書き換え不能な変数をデフォルトにするべし

LLVMは型に厳しいアセンブラです。なので、型をきっちり合わせないと怒られます。 今までJavaのバイトコードに似た内部コードをLLVMに変換する形でコンパイラを作ってきました。 そして、そこそこのプログラムは動作するようにはなりました。 だけど関数ポイ…

ほぼ出来た

LLVM化が、ほぼ出来ました。 OpenGLのプログラムがやっと動いた。スタックにはレジスタ名と型をペアで突っ込むとよいみたいでした。 phi対応が面倒かった。 あと、基本ブロック対応のために、ラベルを関数が返すとかにした。 スタックマシンと似たようなコン…

LLVMを使い始めました。

LLVMいいですね。ドキュメントが結構書きたかった物に近くて大分落ち込みました。 最初からLLVMやっておけば良かったとか思ったりしつつ、 イヤイヤ、64bitCPU触っておくのもやっぱり大切だったと思うよと思います。 とりあえず、LLVMで四則演算するコンパイ…