用于教育目的的小型c编译器

时间:2013-11-28 13:08:45

标签: c compiler-construction xv6

是否有任何小型c编译器遵循ansi c扩展,但仍然少于10,000个LOC。基本上,我试图将这种小型编译器移植到一个名为xv6的教育操作系统内核中。谢谢。

3 个答案:

答案 0 :(得分:2)

我认为这不可行。您可以尝试使用https://github.com/alexfru/SmallerC之类的东西,这是C的一个子集的非常小的编译器。(请参阅该语言的wiki)

或者看看pcc,但这个数字要大得多。

答案 1 :(得分:1)

事实证明,为了托管一个体面的C编译器或只是一个汇编器和一个链接器,xv6急需几个改进:

  • 较大的最大文件大小(目前上限为64KB左右)
  • lseek的
  • FPU状态保存/恢复上下文切换

可能需要进行一些其他小改进。

链接:

答案 2 :(得分:0)

我认识的最小的是TCC http://bellard.org/tcc/,其中有大约30 000个LOC。