こんぱいらぁー
だいぶ前からブックマークに居座っている低レイヤを知りたい人のためのCコンパイラ作成入門をやろうと思い立った。せっかくなので春休みに。
WSLの環境を整備するのがめんどくさいもので、Mingw64で作ることにしてしまった。つまるところ、Windowsの呼び出し規則で書き始めてしまった。そのため、上のリンクに書いてあることとちょっと話が違う。 筆頭は関数の呼び出しのルールで、32byte分(8byte*4)rspを確保しないと行けなかったりするのが地味~にめんどくさい。 さらに、テスト環境がWindowsに固定されてしまった。もしかしたらWine使ったら何とかなったりしないかな。
記録
2024/3/28
このページを作る。ファイルのプロパティによるとこれをやり始めたのは12月の末、真面目に取り掛かり始めたのは2月のはじめらしい。
今は文字列リテラルとかをごにょごにょ。最適化の仕組みを考えるのが楽しい側面はね、ある。
せっかくだから、そろそろgithubに置いておくことにした。
2024/04/03
文字列リテラルができた。HelloWorldに感動したのは久しぶりかもしれない。
2024/06/24
NAILという自作言語とCコンパイラを並行で制作している。Cコンパイラは今構造体を作っている。
NAILに関しては、もしかしなくても中間表現を別で作った方がよさそうだ。LLVM IRとか頼るのは癪だし。