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にない。
ということでレイトレが動くにはまだ無理っぽいです。