LLVM Weekly - #182, Jun 26th 2017

Welcome to the one hundred and eighty-second issue of LLVM Weekly, a weekly newsletter (published every Monday) covering developments in LLVM, Clang, and related projects. LLVM Weekly is brought to you by Alex Bradbury. Subscribe to future issues at http://llvmweekly.org and pass it on to anyone else you think may be interested. Please send any tips or feedback to asb@asbradbury.org, or @llvmweekly or @asbradbury on Twitter.

News and articles from around the web

There is a new pure Go library for interacting with LLVM IR.

Nuno Lopes has written a blog post on work to improve the reliability of compilers at Microsoft Research.

LLVM-HPC2017 has put out its call for papers. The workshop will be held on November 13th in Denver. The deadline for paper submissions is September 1st.

There is now a Meetup group for the Cambridge (UK) socials.

On the mailing lists

LLVM commits

A generic MacroFusion pass has been added, used to cause macro fusion candidates to be scheduled together on X86 and AARch64. It has also been used to support macro fusion of AES instructions on ARM. r305690, r305988.

InstCombine was extended to simplify common idioms for three-way comparison. r306100.

BasicAA will no longer incorrectly return PartialAlias. As the commit message notes, the hack was first introduced in rL131781! r305938.

The git-r utility for mapping svn revisions to git revisions in the mono repository has been removed, while the community decides if we want development utilities to be written in Go. r305741.

XRay now produces fewer synthetic references, thus reducing the size overhead. r305880.

Initial support has been added for the ARMv8.1 Large System Extensions atomic instructions. r305893, r305918.

A new probe-stack function attribute has been added. This ensures the guard page is triggered on stack overflow. r305939.

The unused LoadCombine pass has been removed. r306067.

Clang commits

Intrinsics for ARMv8.2-A FP16 vectors have been added. r305829.

clang-format gained a new SortUsingDeclaration style option. This is enabled by default for 'llvm' style. r306094.

The ThinLTO cache pruning policy string is now documented. r306125.

Other project commits