タグ

MinCamlに関するpochi-mkのブックマーク (2)

  • 自作CPU向けCコンパイラをつくってOS動かした話 (CPU実験まとめ) - kw-udonの日記

    僕の学科では伝統的に3年の後期に半年かけてCPU実験というものをおこなう。 班で自作のアーキテクチャを設計・実装し、FPGA基板上でMinCaml(OCamlのサブセット)でかかれた課題用レイトレーシングプログラムが動けば単位がもらえるというものである。 レイトレ完動後には、その高速化にはげむもよし、余興としてゲームをつくるもよしで、自作CPU上で色々あそんだりする。 今年は有志で班を結成し、自作CPU上でxv6というOSを動かした。 僕はその班にCコンパイラ係として参加したので、そのことについてかく。 あと、OS移植班全体の成果についても触れる。 わりと長くなってしまったので、結局なにができたんだっていう人は、とりあえず先にこっちに飛んでほしい。 動機 期間は4ヶ月程度、配布されたFPGA基板のうえで動かしたいという制約のもとで移植するOSはxv6を選択した。 このOSはシンプルであるが

    自作CPU向けCコンパイラをつくってOS動かした話 (CPU実験まとめ) - kw-udonの日記
  • MinCamlをLLVMに対応させました - みずぴー日記

    きつねさんでもわかるLLVM【電子書籍】柏木子, 風薬 達人出版会 発行日: 2013-02-08 対応フォーマット: EPUB, PDF 詳細を見る 先日、表紙がかわいかったので、「きつねさんでもわかるLLVM」を買いました。 なので、MinCamlを改造して、バックエンドにLLVM対応コードを追加してみました。 とりあえずテステケースは全部通ったので、まとめておきます。 MinCamlとは 別名「美しい日のMLコンパイラ」。住井先生によるMLサブセットであり、以下のようなコードを書けます。 let rec fib n = if n <= 1 then n else fib (n - 1) + fib (n - 2) in print_int (fib 30) 詳しくは解説スライドあたりを読んでください。 やったこと バックエンド部分をLLVMにきりかえた。 LLVMの作法に合せるた

    MinCamlをLLVMに対応させました - みずぴー日記
  • 1