LLVM 项目博客

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

  • Clang 警告

    Clang 有两种类型的诊断:错误和警告。 当代码不符合语言规范时,会产生错误。 诸如缺少分号和不匹配的大括号之类的错误会阻止编译,并导致 Clang 发出错误消息。

    阅读更多…
  • 使用 Kaleidoscope 示例程序进行对象缓存

    在我之前的文章中,我描述了将 LLVM Kaleidoscope 教程程序移植到使用 MCJIT 作为其执行引擎的过程,并介绍了使用 MCJIT 引擎的延迟编译实现。

    阅读更多…
  • 使用 MCJIT 的 Kaleidoscope 性能

    在我之前的一篇文章中,我描述了将 LLVM Kaleidoscope 教程程序移植到使用 MCJIT 作为其执行引擎的过程。 在克服了一系列障碍之后,我们最终得到了一个按预期工作的实现。

    阅读更多…
  • 使用 MCJIT 与 Kaleidoscope 教程

    您可能已经注意到 LLVM 项目中有两个不同的 JIT 执行引擎。 较旧的实现 (llvm::JIT) 是一种临时实现,它将 LLVM 代码生成的各个部分整合在一起,并添加自己的粘合剂,以便将动态生成的代码一次一个函数地加载到内存中。

    阅读更多…
  • LLDB 3.3 及更高版本

    LLVM 项目调试器 (LLDB) 在 LLVM 3.3 版本发布之后,其活动量出现了明显上升。 虽然调试器长期以来一直是 Xcode 的默认工具,但其在 Darwin 之外的潜力还有待挖掘。

    阅读更多…
  • LLVM 3.3 发布!

    LLVM 3.3 现已发布!有关详细信息,您可以阅读发行说明。LLVM 3.3 是一个重大版本:它为 AArch64 和 AMD R600 GPU 架构添加了新的目标,为 IBM 的 z/Architecture S390 系统添加了支持,以及对 PowerPC 后端进行了重大改进(包括对 PowerPC 2 的支持)。

    阅读更多…
  • LLVM 3.3 向量化改进

    我想简要介绍一下 LLVM 中的向量化。当 LLVM 3.2 发布时,它提供了一个新的实验性循环向量化器,默认情况下是禁用的。从 LLVM 3 开始。

    阅读更多…
  • EuroLLVM 2013,法国巴黎

    在 EuroLLVM 2013 结束两天后,我终于有精力写一篇关于它的文章。这是一个由 Tobias Grosser、Duncan Sands、Sylvestre Ledru 和 Arnaud de Grandmaison 带领的志愿者组织团队所做的很多艰苦工作,加上之前活动中的老面孔,最终几乎没有出现任何问题,即使是最小的错误。

    阅读更多…
  • Clang 对 C++11 及更高版本的支持

    从 r179861 开始,Clang 实现了 C++11 语言标准的全部内容。自 Clang 3.2 发布以来,以下功能已得到实现,以及我们对“的计划

    阅读更多…
  • 巴黎 Euro LLVM 2013

    两周后,Euro LLVM 2013 大会将在法国巴黎的历史中心举行。 日程安排刚刚公布。 LLVM 基础设施的各个方面将在活动中进行展示。

    阅读更多…