作者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://webptt.com/cn.aspx?n=bbs/CompilerDev/M.1616912555.A.173.html
1F:推 mshockwave: 推!尤其是新增优化演算法的部分 03/30 07:23
2F:推 VF84: 推「但我开发编译器就很开心」 04/05 22:12
3F:推 hare1039: 大神 04/10 12:29
4F:推 NCKUchemRx: 怕 04/11 11:10
5F:推 johnhjwu: 推神人 06/26 05:26
6F:推 kkk99923: 这里也可看到大神出没! 08/16 14:52
7F:推 AirComm: 也是 J 大推一个!老师我是那个在 snps 的学生! 01/11 23:08