LLVM Weekly - #435, May 2nd 2022

LLVM Weekly - #435, May 2nd 2022

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

Welcome to the four hundred and thirty-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, or @llvmweekly or @asbradbury on Twitter.

News and articles from around the web

LLVM 14.0.2 and 14.0.3 were released.

David Spickett blogged about adding support for Arm’s Memory Tagging Extension to LLDB.

The Call for Proposals for the toolchains and kernel track at the Linux Plumbers Conf 2022 is now open.

EuroLLVM registration is almost sold out and will close on May 2nd. Additionally, Tanya Lattner is seeking volunteers to help moderate sessions at EuroLLVM.

Marek Polacek blogged about new C++ features in GCC 12.

The speaker for the May Women in Compilers and Tools meetup has been announced. Michelle Strout (professor in the Department of Computer Science at the University of Arizona an Chapel team manager at HPE) will host an AMA (‘Ask Me Anything’) session.

LLVM Weekly readers might be interested in the recently launched programming languages papers you might love newsletter by Varun.

On the forums

LLVM commits

  • As previously discussed on Discourse, the LLVM Code of Conduct was updated to remove the word ‘draft’ from all documents, add information about the CoC committee expectations, a place for transparency reports, and a complete reporting guide. eb2c30b.

  • A new llvm.is.fpclass intrinsic was introduced. 170a903.

  • lit gained support for %if ... %else syntax for RUN lines, allowing to RUN lines to be modifed based on features available. 1041a96.

  • llvm-reduce can now handle multiple MachineFunctions. 7c2db66.

  • Swing Modulo Scheduling was enabled by default for the Arm Cortex-M7. dcb7764.

  • The legacy LoopUnswitch pas was removed. The new pass manager replacement is SimpleLoopUnswitch. fb4113e.

Clang commits

  • New CMake targets were added to control the installation of platform/architecture specific resource headers. This allows compiler distributions that don’t need resource headers for other targets to avoid shipping them. a70cf56.

  • clangd gained support for concept declarations and requires expressions. 75e16fd.

  • Initial structure for the include-cleaner library was added. 41ac245.

  • A C++ ABI bug on SystemZ for passing arguments of structs containing a zero-width bitfield was fixed. 9b38e2e.

Other project commits

  • Extensible dialects (dialects that can be extended with new operations and types defined at runtime) were introduced to MLIR. 9e0b553.

  • A new ‘on demand symbols’ feature was added to LLDB. 7b81192.

  • The flang driver gained support for generating executables. 97a32d3.

  • The compiler-rt profile library was marked as supported on RISC-V. b5047c7.

  • feof, ferror, and clearerr were implemented in LLVM’s libc. 9db0037.

1 Like