【发布时间】:2014-12-15 16:20:46
【问题描述】:
我听说 GCC 实际上假设了寄存器,并且需要 CPU 才能让它们工作。
应该做些什么来消除这种依赖关系,并将 GCC 移植到一些无寄存器的非冯诺依曼拱门,比如 Multiclet?
有人试过吗?如果想从事这项工作,是否有一些项目和经验可以使用?
如果没有,是否有其他 FOSS 编译器可以移植到 Multiclet 之类的东西上。 LLVM 与 GCC 有几乎相同的要求,而且它不适合我,因为我不懂 C++。所以它需要是纯 C。我听说 GCC 现在也在添加 C++ 代码。但我可以使用一些旧版本作为起点。
【问题讨论】:
-
这对于专门的 GCC 开发列表来说可能是一个更好的问题,例如 gcc 邮件列表。
-
现在他们说 GCC 是用 C++ 编写的。这一点,而且学习 GCC 内部结构并不一定比学习 C++ 更容易。
-
也许只是我不懂技术和英语不是作者的第一语言的结合,但 Multiclet 网站让我想起了很多 Time Cube。也就是说,根据该网站,不需要编译器,因为处理器直接运行高级语言。听起来 C++ 可能不太适合它。
-
我对TimeCube一无所知,但MultiClet有可用的C99编译器,但它是闭源的。 “没有低级语言”的意思是“没有汇编语言”。 C被他们视为高级语言。