【问题标题】:Porting GCC to Multiclet将 GCC 移植到 Multiclet
【发布时间】: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被他们视为高级语言。

标签: c gcc


【解决方案1】:

Multiclet 的 C99 编译器不是封闭源代码。资源可在他们的社区套件中找到。可以通过名称“multiclet mcc Lime”在 Google 上搜索它。

【讨论】:

  • 谢谢,我已经有一段时间没有检查它们了,现在我看到它们正在放弃旧的 LCC,现在正在转移到俄罗斯科学院的 CC-BY 许可 LiME 项目。但我无法用 git 克隆存储库。互联网上几乎没有关于 LiME 的数据。我的俄语很流利,所以这不是问题,但即使是俄语网站也没有任何信息。
  • 发现了一些东西,非常有用。俄语multiclet.com/community/documents/8
  • @user333677 对本文档的工作正在进行中,并且已经过时且不完整。如果您有兴趣,可以在这里k.imm.uran.ru/lime/spec.pdf 找到更新版本的文档。如果您有兴趣跟踪开发,欢迎在这里订阅k.imm.uran.ru/mm/listinfo/l-devel。你可以在这里找到 CA 证书k.imm.uran.ru/tls/k.ca.crt
  • @bakhterev Спасибо большое, я буду следить за развитием ЛиМЕ компилятора。 Очень интересная технология, так держат.
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-08
  • 2013-10-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多