LLVM 项目博客

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

LLVM 每周 - #55, 2015 年 1 月 19 日

欢迎来到 LLVM 每周的第五十五期,这是一份每周新闻通讯(每周一发布),涵盖 LLVM、Clang 和相关项目的发展情况。LLVM 每周由 Alex Bradbury 带来。在 http://llvmweekly.org 订阅未来期,并将其传递给您认为可能感兴趣的任何人。请将任何提示或反馈发送到 [email protected],或在 Twitter 上发送到 @llvmweekly@asbradbury

在 LLVM 的世界里,这一周似乎非常繁忙,特别是在邮件列表上的讨论方面。由于旅行等原因以及大量的流量,我无法对邮件列表讨论进行太多总结,我担心。

此期的规范主页 可以在 llvmweekly.org 上找到

来自网络的新闻和文章

LLM/Clang 3.6 已分支,随后,3.6 RC1 已标记

LLVM/Clang 3.5.1 似乎已 悄然发布

将于 4 月 13-14 日在英国伦敦的 Goldsmiths College 举行的 EuroLLVM 2015 的注册已 开放

上次 LLVM 开发者会议的所有幻灯片和视频都已 上线,包括来自苹果员工的幻灯片和视频。

在邮件列表上

LLVM 提交

  • 现在可以使用新的代码多样性功能。NoopInsertion 传递将向 x86 二进制文件添加随机无操作,以尝试通过增加多样性来使 ROP 攻击更加困难。 r225908。我强烈建议您阅读去年发布的关于 盲目 ROP 攻击的文章。看看 G-Free 的实现,以生成没有简单工具的二进制文件也很有趣。该提交后来由于某种原因被还原。

  • 现在以 3.6 版本说明的形式,提供了最近 MIPS 和 PowerPC 目标开发以及 OCaml 绑定的良好总结。 r225607r225695r225779

  • LLVM 了解了 llvm.frameallocate 和 llvm.framerecover 内在函数,它们允许多个函数从一个函数的调用帧共享单个堆栈分配。 r225746r225752

  • 一个实验性的(默认情况下禁用)“归纳范围检查消除”传递已落地。这试图消除形式为 0 <= A*I + B < Length 的范围检查。 r226201

  • 现在可用于 PowerPC 目标的 StackMap/PatchPoint 支持。 r225808

  • 对 Win64 SEH 捕获处理程序的初始支持已落地。有关当前缺失的功能,请参见提交消息。 r225904

  • 一个新的实用程序脚本已启动,以帮助更新简单的回归测试。它需要一些工作才能使其超越 x86 通用化。 r225618

  • TargetLibraryInfo 已移入 Analysis 库。 r226078

Clang 提交

  • 添加了新的 -fno-inline-asm 标志以禁止所有内联汇编。如果它存在于输入代码中,它将被报告为错误。
    r226340.

  • 再次支持 -fsanitize-recover 命令行标志。 r225719

  • 集成汇编程序现在默认情况下在 32 位 PowerPC 和 SPARC 上使用。 r225958

其他项目提交

  • libcxx 构建系统学会了如何交叉编译。 r226237

  • LLD 通过推测性地实例化归档文件成员获得了不错的加速。这为使用 lld 连接 lld 节省了一两秒。 r226336

  • LLD 了解了 --as-needed 标志(以前这是默认行为)。 r226274

  • OpenMP 获得了 AARch64 移植。 r225792