mincaml for x86てのがあるらすい
2006-09-24
眠いのでまったく試してないのですが、これならレイトレが一瞬で終わったりするんでしょうかね。そもそもx86の仕様も命令も知らないので詳しい人に丸投げしたいところ。
ところでym氏のx86版コンパイラはどうなったんでしたっけ?
追記(9月27日)
cygwin + gcc 3.4.4 + ocaml 3.08.1で試してみたテスト。
うちの環境ではemit_x86.mlをちょっといじらないと駄目でした。
- min_caml_start を _min_caml_startに変更
- .sectionのあとをダブルクオーテーションで囲むとgccに怒られるので外した
なお、まだ浮動小数点をサポートしていないため、
- non-tail-if.ml
- float.ml
- inprod.ml
- inprod-rec.ml
- inprod-loop.ml
のテストは通らない(x86にない命令が出力されるようです)。
また、レジスタ割り当てに失敗するため、matmul.mlも通らない。
また、"index out of bounds"でmatmul-flat.mlも通らない。
また、read_intがlibmincaml_x86.sにない。
ということでレイトレが動くにはまだ無理っぽいです。