LLVM Weekly - #352, September 28th 2020
Welcome to the three hundred and fifty-second 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 https://llvmweekly.org and pass it on to anyone else you think may be interested. Please send any tips or feedback to [email protected], or @llvmweekly or @asbradbury on Twitter.
News and articles from around the web
Registration closes for the Virtual LLVM Developers' Meeting on October 1st.
Marek Polacek wrote up a summary of new C++ features in GCC 10.
On the mailing lists
-
Min-Yih Hsu proposed a Motorola 68000 backend for inclusion in LLVM.
-
Fatih Bakir proposed a basic block cloning enhancement for the Propeller link time function layout optimisations.
-
Alan Phipps started a discussion about improving jump-threading optimisation in LLVM to help with e.g. CoreMark
core_state_transition
. Sjoerd Meijer mentioned some in-progress work related to this. -
LLVM 11.0.0-rc3 is now available.
-
Anton Zabaznov wrote an RFC on OpenCL C 3.0 support in Clang.
LLVM commits
-
A TableGen Backend Developer's Guide was added. 848d66f.
-
A scheduling model was added for the Cortex-A55. 4b8ade8.
-
DeadInstEliminationPass was removed. DeadCodeEliminationPass should be used instead. f4f7df0.
-
ThinLTO will now sort modules in order of largest first, allowing better multi-thread load balancing and faster builds. 6537004.
-
LLVM's JSON library gained support for tracking position within an object and reporting errors. 16619e7, fa69b60.
-
Codegen support was added for AArch64 PAC/BTI (Pointer Authentication Code / Branch Target Identification). a88c722.
-
Scheduler definitions were added for the RISC-V Bullet microarchitecture. 764c1b7.
Clang commits
-
A new cppcoreguidelines-prefer-member-initializer check was added to identify member initialisations in the constructor body that can be placed in the initialisation list instead. 4fc0214.
-
Sema support was added for a new
__swift_name__
,__swift_newtype__
, and__swift_private__
attributes. 9bb5ecf, 296d883, 58cdbf5. -
A new alpha.webkit.UncountedLocalVarsChecker was added. This check aims to ensure any uncounted local variable is backed by a ref-counted object with sufficient lifetime. 8a64689.
-
String tables are now used for static diagnostic descriptions, removing about 120KB of relocations in Clang. 31a3c5f.
-
Support was added for a new function coverage groups XRay mode. 6f7fbdd.
-
clang-format gained a MacroExpander capable of expanding simple non-recursive macro definitions. e336b74.
Other project commits
-
A "trace" plugin was added to LLDB, providing the starting point for process trace support. 74c9395.
-
The Mach-O LLD linker implemented support for PIC and absolute symbols. e4e673e, 62a3f0c.
-
MLIR now has a new kind of pass - a dynamic pass pipeline. 385c3f4.
-
libcxx gained more constexpr containers (C++20 P0784). 0724f8b.
-
libcxx gained initial pre-commit CI infrastructure using BuildKite. 9f21d34.