LLVM 项目博客

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

LLVM 每周 - 第 52 期,2014 年 12 月 29 日

欢迎来到 LLVM 每周的第 52 期,这是一份每周发布的新闻简报(每周一发布),涵盖 LLVM、Clang 和相关项目的最新进展。LLVM 每周由 Alex Bradbury 为您带来。订阅未来的期号,请访问 http://llvmweekly.org,并将其转发给您认为可能感兴趣的其他人。如有任何提示或反馈,请发送至 [email protected],或在 Twitter 上关注 @llvmweekly@asbradbury

本期标志着 LLVM 每周的一整年结束。本期比平时短一些,因为 LLVM/Clang 开发的快节奏在假期期间有所放缓。即使对我来说也令人惊讶的是,我们设法在承诺的每一周都发布一期,完整地完成了所有 52 周。这需要每周花费相当多的时间(2-3 小时以上),但我打算在 2015 年继续发布。我要衷心感谢所有在会议上向我打招呼、发送内容修正或提示,或者只是发送随机感谢的人。这对我来说非常有帮助。目前,我并不打算在明年改变每一期内容的结构或内容,但如果您有任何想法,请告诉我。

由于活动时间安排不当,我无法参加 31C3,但如果您有任何值得分享的与 LLVM/Clang 相关的演讲,请告诉我。有一个 关于代码指针完整性的演讲,之前在 LLVM 每周中有所报道,并且正在努力将其上游。视频 在这里。如果您有兴趣了解 lowRISC,并且将在 31C3 参加活动,那么 Bunnie 将在周一(今天)下午 2 点主持 关于它的讨论

本期的规范地址 可以在 llvmweekly.org 找到

来自网络的新闻和文章

过去一周似乎没有与 LLVM 或 Clang 相关的新闻。每个人似乎都忙于圣诞节期间与 LLVM 无关的活动。但是,如果您正在寻找工作,Codeplay 告诉我他们有两个空缺职位:一个 调试器工程师,另一个 编译器工程师

在邮件列表中

  • David Li 分享了一些 关于 Google 对 LTO 计划的早期信息。他描述了“峰值优化性能”的概念以及新设计的目标。其中包括处理比 Firefox 大 10 倍或 100 倍的程序的能力。我们预计 2015 年将获得更多信息,也许最早在 1 月份就会公布。

  • 关于减少 libLLVM 大小的可能方法的讨论仍在继续。Chris Bieneman 分享了一些关于大小统计的更多信息。这些收益来自移除未使用的内联函数。Chandler Carruth 接着提出了一个令人愉快的发人深省的论点,介绍了一种不同的方法:目标特定的内联函数不应该存在于 LLVM 前端或中间端。他描述了这种方法的明显问题,其中最棘手的问题可能是指令选择将适当的 IR 转换为正确的目标特定功能。

LLVM 提交

  • SROA(聚合的标量替换)传递已经过了一些重构,以便将来能够进行更智能的重写。 r224742r224798

  • 已对掩码加载和存储内联函数进行文档化。 r224832

  • CodeGenPrepare 学会了在 isCheapToSpeculateCtlz/isCheapToSpeculatCttz 在 TargetLowering 中返回 true 时,推测对 llvm.cttz/ctlz(计算尾部/前导零)的调用。 r224899

Clang 提交

  • Clang 内部手册已经扩展,包括关于解析、语义分析和代码生成的存根部分。 r224894

其他项目提交

  • libcxx LIT 测试套件已经添加了许多新的配置选项。更好的是,这些选项现在已 进行文档化r224728