- LLVM概述
- LLVM开始于伊利诺伊大学的一个研究项目,最终成为一个模块化、可重用的编译器和工具链技术的集合,其中,LLVM不是缩写而是全称。
- LLVM最重要的子项目
- LLVM核心库(编译优化框架):提供了一个独立于源和目标的现代优化器,并对支持许多流行cpu的代码生成。这些库是利用LLVM IR进行构建的,并且支持创建自己的语言(或移植现有的编译器)来使用LLVM作为优化器和代码生成器。
- Clang:是一个LLVM本地的C/ C++ /Objective-C编译器,它的目标是提供惊人的快速编译,极其有用的错误和警告消息,并为构建优秀的源代码级工具提供一个平台。Clang静态分析器和clang-tidy是可以自动发现代码中的bug的工具,它们是可以使用Clang前端作为解析C/ c++代码的库来构建的工具的很好的例子。
- LLDB:是一个优秀的本机调试器,非常快,而且在加载符号时比GDB的内存效率高得多。
- libc++和libc++ ABI:提供了符合标准的c++标准库的高性能实现,包括对c++ 11和c++ 14的完全支持。
- Compiler-RT(RT指运行时):用于为硬件不支持的低级功能提供特定于目标的支持。例如,32位目标通常缺少支持64位除法的指令。Compiler-RT通过提供特定于目标并经过优化的功能来解决这个问题,该功能在使用32位指令的同时实现了64位除法。它提供相同的功能,因此是LLVM项目中libgcc的替代品。
The LLVM Compiler Infrastructure
最新推荐文章于 2025-03-13 14:11:23 发布
LLVM 是一个模块化、可重用的编译器和工具链技术集合,包含Clang、LLDB、Compiler-RT等子项目。LLVM核心库提供优化器和代码生成器,Clang是快速的C/C++/Objective-C编译器,LLDB是高效的调试器。除此之外,LLVM还支持如Polly这样的高级别优化器和OpenMP并行编译框架。LLVM的广泛应用包括多种语言的编译,并以其通用性、灵活性和可重用性受到青睐。

最低0.47元/天 解锁文章
762

被折叠的 条评论
为什么被折叠?



