LLVM Weekly - #438, May 23rd 2022

LLVM Weekly - #438, May 23rd 2022

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

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

The Compiler Explorer has just celebrated its 10th birthday. Congratulations, and thank you to Matt Godbolt and everyone else involved in running it.

Documentation on LLVM’s libc is now live at libc.llvm.org.

Recordings from the Pure Virtual C++ conference are now available.

The May Women in Compilers and Tools meetup will take place later this week, with Professor Michelle Strout offering an “Ask Me Anything” session.

On the forums

LLVM commits

  • New documentation on instruction referencing for debug info was added. 7a1d5ef.

  • The M68k backend now uses the variable length decoder. cf0b6df.

  • Initial support was added for a pointer difference based runtime check scheme for vectorisation. b7315ff.

  • The PeepholeOptimizer can now eliminate redundant copies from a constant physical register. 7dbf2e7.

  • Support was landed for writing sections, relocations, and symbols for XCOFF64. 8d6e2c3.

  • The AMDGPU SIShrinkInstructions pass was modified to aggressively fold immediates regardless of how many uses they have. This trades off increased code size for decreased register usage. e292650.

  • DeadArgElim now uses poison instead of undef as a placeholder for dead arguments. 5fc9449.

  • AArch64 gained support for -fzero-call-used-regs. 6e00a34.

Clang commits

  • Clang static analyzer’s cross-translation-unit analysis gained a new two-phase implementation. 56b9b97.

  • Delta-encoding is now used for consecutive SourceLocations in PCH/PCM files, saving ~3.5% size. 4df795b.

  • A page was added to track C defect report status. ade5b55.

  • A file containing design notes for the pseudo parser in clang-tools-extra was added. 79ca4ed.

Other project commits

  • A basic TableGen language server was added to MLIR (with the intent to eventually move it to llvm/). 5de12bb.

  • sprintf, snprintf, strlcpy, and strlcat where added to LLVM’s libc. ff6fe39, 9f1d905, fc2c8b2, b118330.

  • Further patches to enable system-wide tracing in LLDB were committed, including support for per-core tracing in lldb-server. 1f49714, 1637545, 1188faa.

  • MLIR gained a topological sort utility and pass. c8457eb.