首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >C--与LLVM相比如何?

C--与LLVM相比如何?
EN

Stack Overflow用户
提问于 2010-10-08 22:23:32
回答 1查看 9.9K关注 0票数 58

在学习了一些LLVM的工作原理之后,我真的对如何生成可移植的低级代码以及如何模块化这个“东西”感到兴奋。

但我今天发现了C语言的存在--它似乎与LLVM有一些共同的概念。

所以我正在寻找一些信息来帮助我理解这两个项目之间的主要区别……以及为什么两者都存在。

对我来说,LLVM看起来有点像编译器基础设施的终极瑞士军刀,而C--看起来就没那么高级了。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-10-08 22:50:18

它们的不同之处在于低级机器类型系统的表达能力。

LLVM机器的表现力很强。另一方面,C--机器将大量的责任放在了语言前端。引用C-- FAQ的话:“简单地说,没有高级类型-它甚至没有区分浮点变量和整数变量。这个模型给了前端对表示和类型系统的完全控制。”

此外,它们在视觉上看起来也有很大的不同。C--看起来很像C,LLVM看起来很像汇编语言。

从实际意义上讲,LLVM现在有更大的发展势头。它有一个即时编译器,苹果公司在3D pipeline things上使用它,人们也在用它来connect to GCC以及各种weirdwonderful的东西。有人叫它"almost absurdly easy to work with“。

另一方面,C--要小得多,而且可能更容易完全理解。(我想一个有一定贡献的普通人可以完全理解它的所有方面。)

票数 54
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3891513

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档