LLVM 项目博客

LLVM 项目新闻和来自战壕的细节

LLVM 每周 - 第 48 期,2014 年 12 月 1 日

欢迎来到 LLVM 每周的第 48 期,这是一个每周发布的新闻通讯(每周一发布),涵盖 LLVM、Clang 和相关项目的进展。LLVM 每周由 Alex Bradbury 呈现。订阅未来的问题,请访问 http://llvmweekly.org,并将其传递给您认为可能感兴趣的任何人。如果您有任何建议或反馈,请发送邮件至 [email protected],或在 Twitter 上关注 @llvmweekly@asbradbury

本期文章的规范地址 可以在这里找到:llvmweekly.org

来自网络的新闻和文章

John Regehr 发布了关于 Souper 超级优化器的更新,他和他的合作者一直在研究这个项目。他们为 Souper 优化器实现了一个缩减器,该缩减器试图将优化缩减为更简洁的形式。他们当前的结果给出了大约 4000 种不同的优化,其中大约 1500 种 LLVM 不知道如何做。当然,其中许多实际上可能被单个规则或通道所覆盖。Souper 的下一步计划之一是扩展 Souper 以支持指令序列的合成。另请参阅 llvm 邮件列表上的讨论

LLVM 博客包含 LLVM 循环向量化最新进展的总结。这包括诊断备注,以获得有关未向量化的循环被跳过的原因的反馈,Clang 中的循环 pragma 指令,以及当该指令无法被遵循时的性能警告。

LLVM Haskell 编译器 (LHC) 已经 重生,以及 它的博客。开发的下一步是提供对 Haskell2010 的更好支持,为名称解析和类型检查提供可重用库,并生成人类可读的编译器输出。

下一场在巴黎举办的 LLVM 社交活动 将在 12 月 9 日举行

英特尔发布了一篇博客文章,详细介绍了 GCC 5.0 中新的针对 X86 的优化。您可能还会对 Hacker News 上对这篇文章的讨论 感兴趣。

邮件列表

LLVM 提交

  • -debug-ir(在调试数据中发出 LLVM IR)的支持已被删除。提交信息中没有真正的理由或解释,但它很可能是未完成的/未使用的/不可用的。 r222945

  • InstCombine 现在将规范化为要存储的值类型,而不是指针类型。其理由(在提交信息中更详细地解释)是,内存没有类型,但操作及其产生的值有类型。 r222748

  • !invariant.load 元数据的文档已得到澄清。 r222700

  • 在 tablegen 中,neverHasSideEffects=1 现在为 hasSideEffects=0。 r222801

Clang 提交

  • 新增了四个 ASTMatcher:typedefDecl、isInMainFile、isInSystemFile 和 isInFileMatchinName。 r222646

  • 关于 MSVC 兼容性的文档已更新,以反映当前状态。Clang 还获得了对重新抛出 MS C++ 异常的支持。 r222731r222733

其他项目提交

  • 为 lldb-mi(LLDB 机器接口)添加了初始测试。 r222750

  • libcxxabi 现在可以使用 CMake 在没有线程的情况下进行构建和测试。 r222702

  • compact-unwind-dumper 工具现在完全支持 x86-64 和 i386 二进制文件。 r222951