作者jserv (松鼠)
看板CompilerDev
標題Re: [分享] shecc - 可自我編譯的簡化 C 編譯器實作
時間Sun Mar 28 14:22:33 2021
※ 引述《jserv (松鼠)》之銘言:
: 為了課程需求,我用兩千餘行 C 程式展示一套簡化的 C 編譯器是如何開發,專案名稱
: 是 shecc,寓意為 self-hosting and educational C compiler,以 BSD 2 clause
: license 釋出,請見: https://github.com/jserv/shecc
: 特徵:
: 1. 產生符合 Linux ELF 規範的 32 位元 Arm 執行檔 (針對 Armv7-A 架構);
除了 Armv7-A 架構,現在也支援 RISC-V 32 位元架構 (RV32IM),一樣 self-hosting,
shecc 應該是開放原始碼的實作中,能夠同時支援 Arm 和 RISC-V 最精簡的self-hosting
C compiler。
這種 Taiwan No. 1 有什麼意義呢?我不知道,但我開發編譯器就很開心。
今年我會在上述基礎,實作 linear scan register allocation, mem2reg, constant
folding, dead code elimination, copy propagation 等最佳化策略,希望原始程式碼
仍可壓到 5000 行以內。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.116.246.163 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/CompilerDev/M.1616912555.A.173.html
推 mshockwave: 推!尤其是新增優化演算法的部分 03/30 07:23
推 VF84: 推「但我開發編譯器就很開心」 04/05 22:12
推 hare1039: 大神 04/10 12:29
推 NCKUchemRx: 怕 04/11 11:10
推 johnhjwu: 推神人 06/26 05:26
推 kkk99923: 這裡也可看到大神出沒! 08/16 14:52
推 AirComm: 也是 J 大推一個!老師我是那個在 snps 的學生! 01/11 23:08