LLVM Weekly - #430, March 28th 2022

LLVM Weekly - #430, March 28th 2022

If you prefer, you can read a HTML version of this email at http://llvmweekly.org/issue/430.

Welcome to the four hundred and thirtieth 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

LLVM 14.0.0 has been released. Congratulations and thank you to everyone involved!

EuroLLVM 2022 is now confirmed for May 10-11 in London, UK. Talk proposals are due for April 1st.

On the forums

LLVM commits

  • -march=native now works for the Apple M1 CPU. fcca10c.

  • Unwind information for function prologues on AArch64 is now precise at every instruction. 50a97aa.

  • An implementation of the BLAKE3 function was added to LLVM’s support library. 9aa7019, 7f05aa2.

  • debuginfod was modified to not rely on the presence of the Content-Length HTTP header. 7917b3c.

  • The LLVM WebAssembly backend will now always emit .functype directives for defined functions, avoiding failures in the single-pass type checker due to calls appearing ahead of the functype definition. 86cc731.

  • The debugify pass was sped up by ~2x. 73777b4.

  • The demangler gained support for demangling C++20 modules. c354167.

  • The LLVM provided Dockerfiles were updated to be based on Debian 10. 9580f95.

Clang commits

  • A new --overlay-platform-toolchain option was introduced, allowing an alternate toolchain path to be specified, to be searched in addition to (and with a higher precedence than) the sysroot. d00e840.

  • Work to support C++20 importable header units started to land. 6c0e60e, 0687578, f884622, d9cea8d.

  • PPC SSE4 and BMI intrinsics implementations were added. 406bde9.

  • Non-literal variables (and labels and gotos) are now supported in constexpr functions. 683e83c.

  • A script was committed to automatically update help output in ClangFormat.rst. a45ad3c.

  • The “parse forest” representing the output of the GLR parser was added to the Clang pseudo parser. 62d5f25.

Other project commits

  • LLVM’s libc gained a Linux file implementation and implementations of fopen, fclose, fread, fwrite, and fseek. df4814d, 441606f.

  • The ELF LLD linker now implements --build-id={md5,sha1} with BLAKE3, providing a 1.13x-1.15x speedup in linking Clang with debug info on 8 threads on a Skylake CPU. d3e5b6f.

  • Another collection of Flang lowering patches were committed. 7a9891c, fe252f8, 5754bae, and more.

  • A lightweight overridable assertion handler was added to libc++. b0fd949, 5c458f3e5.

  • A simple fuzzer was added for the MLIR textual format. 450692d5.

1 Like