LLVM Weekly - #565, October 28th 2024

LLVM Weekly - #565, October 28th 2024

If you prefer, you can read the canonical version of this issue at http://llvmweekly.org/issue/565.

Welcome to the five hundred and sixty-fifth 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, @llvmweekly or @asbradbury on Twitter, or @llvmweekly@fosstodon.org or @asb@fosstodon.org.

News and articles from around the web and events

There will be an LLVM dev room again at FOSDEM next year and the call for proposals is now out. The event will take place on February 1st in Brussels.

As a reminder, the Munich LLVM meetup is taking place this week on October 30th.

The next LLVM Social in Darmstadt will take place on November 27th.

According to the LLVM calendar in the coming week there will be the following:

  • Office hours with the following hosts: Johannes Doerfert, Renato Golin.
  • Online sync-ups on the following topics: Flang, libc++, new contributors, LLVM/Offload, classic flang, MLIR open meeting, MLGO.
  • For more details see the LLVM calendar, getting involved documentation on online sync ups and office hours.

On the forums

LLVM commits

  • MC layer support was added for newly added AArch64 atomic instructions and memory systems extensions, and register classes added for new Armv9.6 instructions. Also zeroing convert instructions, and more. 67ff5ba, 4679583, 6e535a9, 2c5208a.

  • MC layer support was added for the new AArch64 compare-and-branch instructions. 82d2df2.

  • llvm-cxxfilter learned a new --quote option to quote demangled function names. d582442.

  • llvm-lit --use-unique-output-file-name will avoid overwriting test report files. This is motivated by CI use cases that often do something like ninja check-clang check-llvm. 8507dba, 22e21bc.

  • The basic register allocator no longer takes into account the block frequency multiplier for spill weight calculations of optsize functions. This is because for optsize only the codesize cost should be considered, not the runtime cost of spilling. e6ada71.

  • Branch analysis was implemented for the Xtensa backend. 1e9a296.

  • The documentation covering “landing your change” on Github was cleaned up. dfc40650.

  • Support for the WebAssembly wide arithmetic proposal was implemented in LLVM. c2293b3.

Clang commits

  • The __mfp8 type was introduced for AArch64. 4994051.

  • Support was removed for negative priority in RISC-V target_version and target_clones attributes. c77e836.

  • The KeepFormFeed option was added to clang-format. 786db63.

Other project commits

  • libcxx started using libc code for the first time (part of project ‘hand in hand’). It reuses libc code to implement std::from_chars. 6c4267f.

  • BOLT gained a profile density computation. 6ee5ff9.

  • The libc++ headers as of the LLVM 19.1 release were copied to a directory to enable them to serve as ‘frozen’ C++03 headers. e78f53d.

  • std::flat_map was implemented. 0be1883.

  • The runtimes can now be built against an installed LLVM tree. b1be213.

4 Likes