LLVM Weekly - #490, May 22nd 2023

LLVM Weekly - #490, May 22nd 2023

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

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

SourceGraph announced scip-clang, a new SCIP indexer for C and C++. “SCIP is a language-agnostic protocol for indexing source code, which can be used to power code navigation functionality such as Go to definition, Find references, and Find implementations.”

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

  • Office hours with the following hosts: Kristof Beyls, Johannes Doerfert.
  • Online sync-ups on the following topics: MLIR C/C++ frontend, pointer authentication, OpenMP, Flang, RISC-V, MLIR open meeting, LLVM embedded toolchains, SPIR-V.
  • For more details see the LLVM calendar, getting involved documentation on online sync ups and office hours.

On the forums

LLVM commits

  • Python files in the LLVM codebase were reformatted using black. b71edfa, f84bac3.

  • The long defunct LLVM Python bindings were removed from the tree. 2980029.

  • Due to correctness issues with llvm::User and llvm::MDNode, -fno-lifetime-dse is now passed to GCC when building LLVM. 47f5c54.

  • The Python coding standard used by LLVM is now documented. 83768e6.

  • KnownBits gained intersectWith and unionWith helper methods. d8229e2.

  • JITLink gained support for RISC-V linker relaxation. 310473c.

  • CCState’s getNextStackOffset was renamed to getStackSize. 01a7967.

  • Multiple backends were updated to use backwards register scavenging for frame index elimination, which is preferred as it doesn’t rely on accurate kill flags. a8dd9f4, a291601, 13bd96e.

  • MC layer support for the experimental zfbfmin, zvfbfmin, and zvfbfwma extensions (BFloat16 related) was added to the RISC-V backend. 35ff5eb, b18a819, a1455de.

  • Patches to support a tuple of vectors in RISC-V vector segment load/store intrinsics started to land. c8eb535.

  • -fsanitize=function now places two words before the function entry and is allowed for all targets. ad31a2d, 67cbe1b.

Clang commits

  • Fixits for -Wunsafe-buffer-usage are now hidden behind the new -fsafe-buffer-usage-suggestions flag. b7bdf19.

  • Documentation for the StdCLibraryFunctionArgs checker was improved. 4400ff5.

  • Unreferenced pages on Clang’s website were removed. 153d9b9.

Other project commits

  • A std::extents implementation was added to libcxx. fcaccf8.

  • The incomplete support for 32-bit Arm in the lld-macho linker was removed. ed59b8a.

  • Optimised memset, bcmp, and memcmp implementations were added for RISC-V in LLVM’s libc. c5dede88, 7c1f279, 893f02c.

  • The buildgo.sh script for TSan can now cross-build the Go runtime. 11081a6.

  • The irdl.any_of operation was added to MLIR’s IRDL. 42987df.

  • A task record and replay mechanism was implemented in LLVM’s openmp. 36d4e4c.

1 Like