看板 CompilerDev 關於我們 聯絡資訊
為了課程需求,我用兩千餘行 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 架構); 2. 提供最小化的 C 標準函式庫實作; 3. 交叉編譯器以 C 語言(子集合) 撰寫,可在絕大多數的平台 bootstrap; 4. 從 C 語言解析到 Arm 機械碼輸出都有涵蓋,不依賴其他工具; 5. 原始程式碼簡潔又好懂,適合當教具; 6. 實作二階段編譯:C -> IR -> Arm machine code 歡迎測試和提交程式碼改進。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.116.246.163 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/CompilerDev/M.1600610706.A.C88.html
enthos: 推 09/22 02:56
catcatcatcat: 推推推 09/22 12:02
Sirctal: 不是媽祖牌嗎? 09/22 12:36
jserv: @Sirctal, 有! https://github.com/jserv/MazuCC 09/22 19:20
mshockwave: 推! 09/23 04:30
mshockwave: 既然都有IR了有沒有想過加一些優化啊? 09/23 04:32
decheng: 推呀! 09/23 23:47
superddk: 推 推爆 09/25 10:11