2008-09-13から1日間の記事一覧

Scheme Compiler の勉強 (5) - immediate constants

とりあえず、 llvm のコンパイラが(とりあえず即値を扱う上では)若干簡単のようだ。とりあえずこれで少し進めて、 llvm の複雑さが重荷になってきたら拘泥せず戻ってこよう。 "1.2 immediate constants" にカタをつけよう。つまり runtime.c と compiler.s…

Scheme Compiler の勉強 (4) - LLVM IR の出力

llvm-gcc があれば gcc と同じようにできる、と思ったらそうでもなかった。※以下、ろくにドキュメントを読んでいないので注意。 やりたいことは llvm の instruction set を吐き出す scheme コンパイラを作る勉強。 困ったときは C で書いて確認(少なくとも…

Scheme Compiler の勉強 (3) - LLVM へ

ここまでで、少しずつネイティブコンパイラを作る勉強のイメージと、そのためには自動テストスイートが大事ということが少し分かった。どっちの方針でいくか決める前に、ターゲットを LLVM にする場合も試してみよう。 LLVM については、文字通り、全然分か…

Scheme Compiler の勉強 (2) - fxupper

compiler.scm で tests-1.1-req.scm の二つのテストが通らない理由を追いかける。このテストは、前回決めた tagged pointer で表現できる最大と最小の整数(fxupper = 即値 536870911 (=2^29-1))を確認している。そもそも手元の環境は PowerPC なので、命令が…

Shibuya.lisp

google group のメーリングリストに参加/自己紹介。よろしくおねがいします。