LLVM 每周 - 第 53 期,2015 年 1 月 5 日
欢迎来到 LLVM 每周的第 53 期,这是一份每周发布(每周一发布)的新闻通讯,涵盖了 LLVM、Clang 和相关项目的发展。LLVM 每周由 Alex Bradbury 为您带来。订阅未来的期刊,请访问 http://llvmweekly.org,并将其传递给您认为可能感兴趣的任何人。请将任何提示或反馈发送至 [email protected],或在 Twitter 上通过 @llvmweekly 或 @asbradbury 联系我们。
下周我将在加州参加 RISC-V 研讨会。我将于 12 日星期一抵达 SFO,并于 18 日星期日离开。如果您想见面并讨论 lowRISC/RISC-V 或 LLVM,请告诉我,我们将看看能做些什么。
本期的规范地址 可以在 llvmweekly.org 找到。
来自网络的新闻和文章
我正准备为 LLVM 仓库的分析提供 gitstats,但令我高兴的是,Phoronix 已经帮我们省去了这些麻烦,并 分享了一些关于 LLVM 仓库过去一年活动的数据。
Tom Stellard 在他的 LLVM 开发分支上发布了一篇博客文章,宣布了 RadeonSI 最近的一些性能改进。其中包括一个 OpenCL 基准测试提高了 60%,以及其他一系列 OpenCL 测试提高了 10-25%。
Gaëtan Lehmann 撰写了一篇博客文章,介绍了 使用 Python 绑定开始使用 libclang。
基于 Boost.Filesystem 库的 C++ 文件系统技术规范 已获得批准。
在邮件列表中
Virgile Bello 提出了一些关于 如何在 LLVM 中控制调用约定 的问题。在这种情况下,他有一个 CLR 前端,并试图将 CLR 堆栈上的对象传递给本机 Win32 函数。Reid Kleckner 建议 最好的方法可能是直接与 Clang 链接并使用它的实现。在另一个后续帖子中,他链接到上次 LLVM 开发人员会议上的 关于此主题的演讲。
有没有人在使用 Clang 中的 ModuleBuilder 类?。如果有,现在是时候大声说出来,因为它即将被删除。
Sami Liedes 设置了一个新的机器人来使用模糊输入测试 Clang。机器人的报告 在此处 提供,代码 在此处 提供。
LLVM/Clang 3.5.1 的发布可能会略微延迟,因为在流程的后期添加了新的补丁。Chandler Carruth 指出,当前 3.5.1 版本的候选版本中,InstCombine 中存在一些令人不快的错误。如果有版本候选版本 3,那么相关补丁肯定会加入。
LLVM 提交
PowerPC 上的位置置换操作的指令选择已得到改进。 r225056。
聚合的标量替换 (SROA) 传递已开始学习如何更智能地处理拆分加载和存储。如提交消息中详细解释的那样,旧方法会导致复杂的 IR,而优化器难以处理。SROA 现在也更加积极地拆分加载。 r225061,r225074。
InstCombine 现在将尝试将
A-B < 0
转换为A < B
。 r225034。Hexagon(高通 DSP)后端最近进行了大量工作。感兴趣的人最好浏览 lib/Target/Hexagon 的提交日志。 r225005,r225006 等。