写点什么

llvm

收录了 llvm 频道下的 50 篇内容

英特尔最新版C/C++编译器采用LLVM架构,性能提升明显
英特尔最新版 C/C++ 编译器采用 LLVM 架构,性能提升明显

下一代英特尔C/C++编译器的表现会更加出色,因为它们将使用LLVM开源基础架构。

LLVM:Swift、Rust、Clang 等语言的强大后盾

在软件开发领域,我们看到一些新的开发语言和改进如雨后春笋般涌现。它们为开发人员在开发速度、安全性、便利性、可移植性和功能上提供了多种选择。这可部分归因于我们具备了构建语言尤其是编译器的新工具,其中首屈一指的就是LLVM。LLVM不仅简化了新语言的创建工作,而且提升了现有语言的发展。本文介绍了LLVM的功能和使用机制,并未来发展做了展望。

麻省理工学院优化 LLVM IR,大大提高并行化的效率

将代码移植到多核多处理器平台,实现并行化的过程中,LLVM这款广受欢迎的编译器有一些不够完善的地方。麻省理工学院开发Cilk的研究小组,对LLVM IR进行了大胆而极具洞察力的扩充,经过区区6千行修改,发布了LLVM/Tapir编译器,“能比其他商用或开源的编译器,更好地对并行代码优化,而且能编译有些编译器无法编译的内容”。

基于LLVM的源码级依赖分析方案的设计与实现
基于 LLVM 的源码级依赖分析方案的设计与实现

本文为《高德技术2019年刊合辑》系列之一。

LLVM 4 中将加入新的 LLVM 链接器 LLD

LLD将被实验性地添加到LLVM 4 rc1中,并默认启用。LLD的目标在于重写ELF和COFF链接器以提供更高的性能。它已取得比GNU ld和gold linker更好的性能,并用在构建再用的FreeBSD/amd64基系统中。

LLVM 和 Ruby 近况:llvmruby、yarv2llvm 以及 regexpllvm、Rubinius

llvmruby项目提供Ruby对 LLVM的绑定。Yarv2llvm项目通过llvmruby构建,用于将Ruby 1.9的操作码转换成LLVM的字节码,而后者可以通过LLVM的JIT功能向下编译成原生代码。另外:当前正在用C++重写的Rubinius虚拟机项目,也即将会用到LLVM。

LLVM 2.8 发布

LLVM团队昨日发布了LLVM 2.8,包括下一代C/C++编译器、优化器和运行时的低级虚拟机基础架构。VMKit使用LLVM来实现CLR和JVM的运行时,MacRuby和Python的Unladen Swallow也同样用到了LLVM。另外,最近发布的Mono 2.8包含了一个mono-llvm运行时。那么,LLVM 2.8都有哪些新特性?

ErLLVM——面向 HiPE 的 LLVM 后端

High Performance Erlang(HiPE)是面向Erlang的一个高性能原生代码编译器,而ErLLVM项目就是为了给HiPE提供多后端支持而设计的。ErLLVM使用了LLVM基础架构。

苹果用 LLVM JIT 提升 WebKit JS 引擎的速度

通过将JavaScript转换成LLVM IR代码并在随后对其进行重量级优化,苹果将Safari JavaScript引擎Nitro的速度提升了35%。

LLVM 3.3 完全兼容 C++11

多平台编译器项目LLVM最近发布了3.3版本,支持更多的硬件平台,编译器优化又有所改进,大多数用户都能因此受益。

LLVM3.8 停止了旧 Windows 版本,取消 Autoconf,改进 Clang

LLVM团队宣布了LLVM的发布版本,其中包含了一些主要的弃用和新的C语言API头文件以及Clang3.8。

Rust 1.25 升级到 LLVM 6

Rust 1.25把LLVM升级到LLVM 6,新增use语句嵌套导入组支持、自定义结构对齐、库稳定化。不过,最新的Rust版本没有包含许多期待已久的特性,如impl Trait、稳定的SIMD库支持、128位整数。

LLVM 创建者荣获 2012 年 ACM 软件系统奖

ACM已经颁发了2012年度的计算领域创新奖,其中的软件系统奖颁发给了LLVM的创建者。

LLVM 构建了 PDB 文档,并提供了 PDB 与 YAML 的转换工具

LLVM现在可以生成PDB文件,这使得使用Windows调试工具成为可能。此外,LLVM团队还构建了PDB格式的文档,并创建了从YAML生成PDB的分析工具。

微软引入 LLILC,基于 LLVM 的.NET/CoreCLR 编译器

.NET 基金会宣布了名为LLILC(发音为“lilac”)的新项目的发布。该项目最初由微软贡献,致力于为.NET核心(Core)提供新的基于LLVM的原 生代码编译器,从而使“在任何CoreCLR能够移植的以及LLVM会支持的平台上”运行.NET程序成为可能。

麻省理工学院扩展 LLVM IR 使并行程序可得到更好的优化

麻省理工学院的研究人员过去一直致力于LLVM的fork的研究,以探索优化并行代码的新方式,该方式通过将 fork-join parallelism直接嵌入编译器的中间表示(IR)中进行优化。这些研究人员认为,这使针对并行程序最大程度地利用IR层进行串行优化成为可能。

PNaCl:Google 通过 LLVM 增强对 Chrome 中原生应用的支持

通过支持运行LLVM位码(bitcode),Google增强了对Chrome中原生应用的支持。

Pyston——基于 LLVM 和现代 JIT 技术的开源 Python 实现

本月初,Kevin Modzelewski在Dropbox技术博客上撰文宣布了他们正在开发的一款开源Python实现——Pyston。该项目的目标是开发出一款高性能的Python实现,使Python跻身如C++等传统系统级语言所统治的领域。

LLVM 提议向 C 语言中加入模块机制

在今年11月的LLVM开发者大会上,来自Apple的Doug Gregor以“向C语言中加入模块机制”为主题做了一场讲座。讲座中提供了一种过渡性方法,即通过模块来加速编译过程并改进库所提供的语义信息,该方法可用于改进IDE和调试。

MacRuby 0.5 将引入基于 LLVM 的 VM,性能提升明显

在一个试验性分支上,MacRuby下个版本的首个性能方面的改进已经完成。该版本引入了一个基于LLVM的全新VM,较之MacRuby早起的版本已经有了非常显著的速度提升。

llvm专题_资料-InfoQ中文网