gcc - GCC 会被 LLVM 取代吗?

标签 gcc llvm llvm-gcc

关闭。这个问题是opinion-based .它目前不接受答案。












想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题.

4年前关闭。




Improve this question




我想知道LLVM是否凭借其更新的设计在开源世界中取代了GCC?

LLVM 应该具有多种检查代码的技术,以便 IDE 更易于编程等。但是,GCC 在性能方面应该仍然不错。

最佳答案

简答:不。根据上下文,它们都被广泛使用。

长答案:

视情况而定,这是采用以及其他因素的问题。

例如,Apple 将 LLVM(和 Clang)用于几乎所有事情,包括构建内核(之前使用 GCC 构建)、引导加载程序和用户空间。除此之外,LLVM 还用于图形驱动程序,用于将着色器编译为 SGX USSE 字节流,尽管这里主要是 eating your own dogfood 的情况。 .

除此之外,LLVM 也用于开源项目,例如 in Mesa并在用于 JIT 编译的 Dolphin Emulator 中。

除此之外,GCC 仍然占主导地位,例如,Linux 是使用 GCC 构建的,虽然有人尝试 build Linux using Clang+LLVM ,它们更像是一种实验。除此之外,在嵌入式世界中,许多嵌入式应用程序(例如,UBoot 和 Little Kernel)依赖 GCC 扩展提供的功能,并且在编译到对象或链接阶段完全不会使用 Clang+LLVM 构建失败.

然而,对于用户空间应用程序,这在很大程度上取决于个人(或您公司的偏好),因为它们都提供大致相同的功能集,包括 SIMD 支持和对 C++14 和 C11 的完全支持(尽管 GCC 有一些令人讨厌的 Unresolved 错误)当涉及到 C++ 支持时,例如, Bug 61636 )。

代码检查技术主要由 Clang 提供,根据我的个人经验,它提供了大量的开销(例如在 Qt Creator 中,而在 XCode 中则较少)。

关于gcc - GCC 会被 LLVM 取代吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41022597/

相关文章:

gcc - 如何使用cmake构建包?

c++ - 返回指向不可修改成员数组的指针 C++ gcc 警告

c - Eclipse C/C++ (CDT) 将文件导入项目 - 找不到头文件 - 包含路径

c - 在 OSX 上将 Mosquitto 与 gcc 链接

c - 如何从多个源生成单个 LLVM IR

使用 C 更改文本颜色

compiler-construction - LLVM如何将三个地址LLVM IR `add`转换为X86两个地址 `add`?

llvm - 如何在 LLVM 中找到值的 "the"定义点?

c++ - LLVM:在程序中实现安全的多实例环境

LLVM 相当于命令行上的 gcc -D 宏定义