LLVM 项目博客

LLVM 项目新闻和来自一线的细节

  • 每个 C 语言程序员都应该知道的未定义行为 #1/3

    人们偶尔会问,为什么 LLVM 编译的代码在开启优化器后有时会产生 SIGTRAP 信号。深入研究后,他们发现 Clang 生成了一个“ud2”指令(假设 X86 代码)——与 __builtin_trap() 生成的指令相同。

    阅读更多…
  • 正则表达式命令

    LLDB 用户们,大家好。我想开始定期发布关于 LLDB 中新功能和酷炫功能的博客文章。今天我将从一个刚添加的功能开始:正则表达式命令。

    阅读更多…
  • LLVM 开发者会议 2010

    2010 年的 LLVM 开发者会议已经结束,这是一个很棒的活动。它有 17 个精彩的演讲,多个非正式讨论环节,以及所有对 LLVM 及其子项目感兴趣的人之间的许多非正式讨论。

    阅读更多…
  • ClamAV 中的 LLVM

    在 0.96 版本中,ClamAV 防病毒系统扩展了其内部字节码解释器以支持 LLVM JIT 编译器。此 JIT 编译器允许提高执行速度,但也提供了直接在 C 代码中编写病毒检查的功能。

    阅读更多…
  • TCE 项目:基于 LLVM 编译支持的应用专用处理器协同设计

    基于 TTA 的协同设计环境 (TCE) 是一个应用专用指令集处理器 (ASIP) 设计工具集,自 2003 年以来在坦佩雷理工大学的多个研究项目中开发。这篇博文介绍了该项目以及如何使用 LLVM 为设计的 ASIP 提供高级语言编译器支持。

    阅读更多…
  • 新的“lldb”调试器

    我很高兴地宣布 LLVM 的一个伟大的新子项目:LLDB。LLDB 是一个现代调试器基础设施,它(像 LLVM 的其他部分一样)构建为一系列模块化和可重用库。

    阅读更多…
  • LLVM 获得首个 SIGPLAN 软件系统奖

    今天,ACM 宣布 Chris Lattner 和 LLVM 项目获得了编程语言软件奖。该奖项表彰了 LLVM 对编译器研究界的影响,这可以从大量使用 LLVM 的研究出版物以及使用 LLVM 教授编译器构建和优化技术的编译器课程数量中看出来。

    阅读更多…
  • Clang++ 构建 Boost!

    Boost 是一个开源的、经过同行评审的 C++ 库集合,它以拥有许多对 C++ 程序员有用的实用组件而闻名。它也以使用最前沿的 C++ 技术而闻名,例如广泛的模板和预处理器元编程,这些技术已经将许多 C++ 编译器推到了崩溃的边缘。

    阅读更多…
  • Glasgow Haskell 编译器和 LLVM

    如果你仔细阅读 LLVM 2.7 的发行说明,你会注意到,新的外部用户之一是 Glasgow Haskell 编译器 (GHC)。作为 GHC LLVM 后端的作者,我被邀请撰写一篇博文,详细介绍后端的设计以及我使用 LLVM 的经验。

    阅读更多…
  • 新的“libc++” C++ 标准库

    我很高兴地宣布 LLVM 的一个新子项目:“libc++”。libc++ 是 C++ 标准库的实现,它专注于标准合规性、高效的生成代码,并旨在支持 C++'0x(当标准被批准时)。

    阅读更多…