LLVM Weekly - #497, July 10th 2023

LLVM Weekly - #497, July 10th 2023

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

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

Videos from EuroLLVM 2023 have started to be posted. Additionally, the video from my LLVM-focused invited keynote at the RISC-V Summit Europe is also now available.

The next LLVM Meetup in Darmstadt is taking place on Wednesday July 26th where Lukas Sommer from Codeplay will present on LLVM and MLIR for GPU use with SYCL.

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

  • Office hours with the following hosts: Aaron Ballman, Alexey Bader, Alina Sbirlea, Johannes Doerfert, the BOLT maintainers.
  • Online sync-ups on the following topics: Flang, SYCL, OpenMP, classic Flang, loop optimisations, OpenMP for Flang, MLIR open meeting, SPIR-V.
  • For more details see the LLVM calendar, getting involved documentation on online sync ups and office hours.

On the forums

LLVM commits

  • The unified LTO bitcode frontend as described in a previous RFC was committed. a1ca3af.

  • The LangRef was updated to allows allow getelementptr inbounds with a zero offset. 2de812f.

  • Target-specific COPY instructions can now be inserted for live range splitting. b7836d8.

  • Constant operands are now support for la and lla pseudoinstructions on RISC-V. 1a715d9.

  • LoopUnroll was modified to fold add chains during unrolling, rather than waiting for InstCombine to simplify them. b9808e56.

  • update_test_checks gained a new ‘smart’ mode for --check-globals, and regex checkers are produced for metadata rather than matching against hard-coded identifiers. 8a3fdf7.

  • Work on SystemZ z/OS support continues with the addition of ADA (associated data area) codegen and emission. 163aad6.

  • Work to simplify the RISC-V vector pseudoinstructions continues. 403261e.

  • Preparatory refactoring was committed to support a new code layout algorithm for function reordering. a7e13a9.

Clang commits

  • CodeGen was implemented for OpenMP combined ‘loop’ directives. eb61bde.

  • The clang-repl documentation was improved. 1ac3e13.

  • Documentation on AMDGPU support in Clang was started. 051cb7c.

  • --emit-symbol-graph will generate ExtractAPI symbol graph information during compilation. 8e9145e.

Other project commits

  • Documentation was added to Flang on Fortran’s 202X’s upcoming features and the urgency for their implementation. eb5ffa5.

  • LLD support for the Arm Cortex-M Security Extensions (CMSE) was committed. 9acbab6.

  • Timing information can now be obtained from libc tests. 5db3979.

  • LLDB gained two-level caching for sources in order to improve performance when accessing sources over e.g. a network file system. 51944e7.

  • TF32 (TensorFloat32) was added as a builtin float type to MLIR. 6685fd8.

  • A GPU barrier elimination mechanism was added to MLIR. 9ab3468.

  • Old OpenMP and libomptarget plugins were removed. 70c08db, e90ab91.

  • Initial work landed to support RPC services in libomptarget. 691dc2d.


Additional news: