LLVM Weekly - #461, October 31st 2022

LLVM Weekly - #461, October 31st 2022

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

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

Tanya Lattner is seeking moderators for the LLVM Dev Meeting. Volunteer and get a free t-shirt!

Jakub Beránek blogged about speeding up rustc, primarily through improvements to how it’s compiled (including LTO, PGO, and application of BOLT).

On the forums

LLVM commits

  • The “Writing an LLVM backend” document was updated to used named operand matching. 5713c29.

  • Patches implementing the llvm-debuginfo-analyzer continue to land, with an ELF reader now committed. 4f06d46.

  • Support was added for the new X86 CMPCCXADD, AVX-VNNI-INT8, and other instruction. fdac4c4, 23f0269.

  • Vectorisation of epilogue loops was disabled for RISC-V. 269bc68.

  • Function specialisation based on literals was fixed. 38f44cc.

  • !logtwo was added to TableGen. 64d5aed.

  • Scalar FP ceil/floor/trunc/rint/round/roundeven are now inlined rather than relying on a libcall. e94dc58.

Clang commits

  • -Wcast-function-type-strict was added to provide warnings for function type casts with mismatched types (which may lead to runtime CFI failures). 1aad641.

  • P2513, the “char8_t Compatibility and Portability Fix” was implemented. This allows initialising an array of unsigned char or char from u8 string literals in C++. d0d2772.

  • -fstrict-flex-array=3 is now supported. 7f93ae8.

Other project commits

  • LLVM’s libc gained implementations of difftime, clock, time, and fgets functions. The initial scanf parser was also added. 1220442, 22ea0e5, 2d52283, 7a129f0.

  • Documentation was written on side effects and speculation in MLIR. 49e2d36.

  • Minimal LoongArch support was added to LLDB. a3be778.

  • Debug info started to be added to the MLIR LLVM dialect. 3bef1e0.

  • Fastmath flag attribute support was added to the MLIR arithmetic dialect. b56e65d.

  • A new plugin infrastructure was implemented for libomptarget alongside a new CUDA plugin. 8469041.

1 Like