LLVM Weekly - #398, August 16th 2021
Welcome to the three hundred and ninety-eighth 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 https://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
Intel announced their adoption of LLVM for their C/C++ compilers is complete and wrote about some of the benefits as well as future plans.
William Woodruff blogged about parsing LLVM’s bitstream format.
Matthieu Dubet walked through how Clang/LLVM is able to compile a comically inefficient isEven function down to 3 LLVM IR instructions.
On the mailing lists
“MyDeveloperDay” posted an RFC regarding clang-format’s position on making code modifications that might change semantics. Noting that in general such transformations are frowned upon, but there are notable exceptions (like include sorting). This post generated lots of good conversation that I can’t fully summarise here. Several respondents (including Chris Lattner) suggested supporting such functionality in an off-by-default manner.
Henry Linjamäki started an RFC discussing on emitting HIP device code as SPIR-V.
Jozef Lawrynowicz shared plans for MSP430 improvements.
LLVM commits
Initial support for X86 AVX512FP16 instructions was added. 6f7f5b5, f1de9d6.
GlobalISel’s RegBankSelect was implemented for M68k. 7bdce6b.
The process for generating HTML documentation was written up. 15acaad.
Clang commits
A new clang-tidy check was added for enforcing a minimum length for variable names. d2c5cbc.
Basic code completion was implemented for attribute names. ece4e920.
The btf_tag attribute was introduced, allowing an arbitrary string to be associated with a structure/member/function/parameter/variable and emitted in DWARF output. 1b194ef.