LLVM 项目博客

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

LLVM 每周 - 第 87 期,2015 年 8 月 31 日

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

这是英国的银行假日周末,所以对于您比平时晚几个小时阅读本文,我们深感歉意。提醒一下,如果您能够在 10 月 9 日至 11 日期间前往日内瓦,那么您绝对应该参加 ORConf

本期内容的规范性主页可以在 llvmweekly.org 上找到

来自网络的新闻和文章

在撰写本文时,LLVM 3.7.0 尚未正式发布,但已标记。最终版本应在未来一两天内发布。祝贺所有参与的人。

LLVM 在 HPC 研讨会上的提交截止日期已延长至 9 月 4 日星期五

请提前做好准备!下一场剑桥 LLVM 社交活动将在9 月 30 日星期三举行

在邮件列表上

LLVM 提交

  • “kaleidoscope”教程已经进行了重大更新。现在,它不再介绍 MCJIT,而是描述如何使用 ORC,构建一个名为 KaleidoscopeJIT 的自定义 JIT。 r246002

  • WebAssembly 后端实现工作在过去几周内一直在继续。单个提交往往很小且专注(正如良好的提交应该的那样)。我主要想提一下,以强调工作正在进行。例如,最近的提交添加了对发出简单调用 S 表达式的支持。 r245986

  • 关于状态点的文档现在更多地介绍了基指针和相关的假设以及优化。 r246103

  • 常量传播已为更多单精度数学函数启用,例如 acosf、powf、logf。 r246194

  • 函数 llvm::splitCodeGen 已被引入,以支持并行 LTO 代码生成的实现。它使用 SplitModule 将模块分割成可链接的 partition,这些 partition 分布在各个线程之间,以便进行代码生成。 r246236

  • DebugInfo 方面也发生了一些变化。DISubprogram 定义现在必须标记为 distinct。提交消息包含一个建议的用于更新 IR 的脚本。 r246327

  • Chandler 一直在对 ARM 目标解析代码进行一些重构,希望使其更有效率。他减少了调用代码的情况,这对一些 LLVM 定时产生了显著的影响(例如,带有未优化构建的 check-llvm 快了 15 秒)。 r246370r246378

Clang 提交

  • 已引入一个 NullabilityChecker,旨在捕获许多与可空性相关的错误。 r246105

其他项目提交

  • ThreadSanitizer 现在已在具有 42 位虚拟寻址的 AArch64 上的 Linux 中启用。 r246330

  • libcxx 现在在其 TODO.txt 中包含了 3.8 的发布目标。这包括文件系统 TS 和异步 I/O TS。 r245864

  • LLD 的 ELF 链接器获得了基本 AMDGPU ReaderWriter,使其能够发出 HSA 运行时可以使用的二进制文件。 r246155

  • LLD 的 COFF 链接器获得了对并行 LTO 代码生成的支持。 r246342

  • LLDB 现在支持 ARM 上的硬件观察点。 r245961

  • LLDB 中引入了“语言插件”的概念。它们将提供特定于语言的数据格式化程序或表达式求值。 r246212