LLVM 每周 - 第 50 期,2014 年 12 月 15 日
欢迎来到 LLVM 每周的第 50 期,这是一份每周发布(每周一发布)的新闻通讯,涵盖 LLVM、Clang 和相关项目的进展。LLVM 每周由 Alex Bradbury 为您提供。订阅未来的版本,请访问 http://llvmweekly.org 并将其传递给您认为可能感兴趣的任何人。请将任何提示或反馈发送到 [email protected],或在 Twitter 上 @llvmweekly 或 @asbradbury。
本周我将在 MICRO-47 参加会议。如果您在那里,请跟我打招呼,特别是如果您想聊聊 LLVM 或 lowRISC/RISC-V。
本期文章的官方发布地址为 llvmweekly.org 上。
来自网络的新闻和文章
2014 年 LLVM 开发者会议的视频和幻灯片在上周上线。我已经链接到它们了,但我觉得里面有很多有趣的内容,所以我认为我可以再次 链接。
LLVM/Clang 3.5.1-rc1 已标记。非常欢迎志愿者测试人员。
Clang UPC 3.4.1 已发布。这是一个统一并行 C 编译器,可以针对 SMP 系统或 Portals4。
邮件列表上的内容
关于 LLVM 中 GC 的未来计划 的讨论还在继续,微软的 Russel Hadley 和 Ben Karel 也参与了讨论,后者似乎是现有 GC 基础设施的最广泛用户,他在使用 Foster 语言。
Chris Bieneman 开始讨论关于 支持剥离未使用的内联函数 的内容,目标是减小 libLLVM 的大小。他提出的补丁将二进制文件大小减少了 ~500k,他后来指出,这在他们已经缩小了大小的构建中更为显著。
Marshall Clow 分享了一份关于 如何管理 libc++ 中 ABI 变化 的建议。该建议涉及引入宏来启用破坏 ABI 的更改。
LLVM 提交
LLVM Kaleidoscope 教程已扩展到第 8 章,描述了如何使用 DWARF 和 DIBuilder 添加调试信息。 r223671。渲染版本可在此处找到 here。
为 MergeFunctions 通道添加了大量文档。 r223931。
将元数据从 Value 类层次结构中拆分的重大提交已完成。 r223802。
InstrProf 诞生了。这涉及
llvm.instrprof_increment
内联函数和-instrprof
通道。这将逻辑从 Clang 的 CodeGenPGO 移到了 LLVM。 r223672。随着对 SELECT 节点的支持,MIPS 后端现在支持在 LLVM 测试套件上对 MIPS-II 目标的代码生成。代码生成也已为 MIPS-III 启用。 r224124, r224128。
基于 LLVM 的 dsymutil 工具的开发工作已经开始,其目标是取代 Darwin 的 dsymutil(一个 DWARF 链接器)。 r223793。
LiveInterval 已获得支持,可以跟踪子寄存器的存活情况。 r223877。
已开始将移动转换为 X86 上的推送(如果合适)。 r223757。
打印和验证通道现在默认情况下在每个 MachineFunctionPass 之后添加,而不是在一些任意选择的子集中添加。 r224042。
LLVM 现在需要 Python 2.7。以前需要 2.5。 r224129。
Clang 提交
__builtin_call_with_static_chain
GNU 扩展已实现。 r224167。Clang 的 CodeGenPGO 已改用新的 LLVM
-instrprof
通道。 r223683。Clang 现在接受 Intel 微体系结构名称作为
-march
参数。 r223776。