LLVM Weekly - #442, June 20th 2022
Welcome to the four hundred and forty-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 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
The June Women in Compilers and Tools meetup will feature AngĂ©lica Moreira presenting “Static profiling: why should you try it?”.
The LLVM Bay Area meetups are restarting, with the first to take place on July 11th. RSVPing is recommended.
The 2022 Clang-Built Linux Meetup will take place in Dublin, Ireland on September 10th-11th. Registration is now open.
On the forums
Tanya Lattner (on behalf of the LLVM Foundation Board of Directors) posted a response to the move to Discourse retrospective, addressing the feedback collected during that exercise.
Kristof Beyls announced that an LLVM community events calendar has been created, aiming to include all online sync-ups, office hours, meetups, etc.
Nikita Popov proposed removing most constant expressions in LLVM IR. Initial response has been positive about this direction. Chris Lattner also provided some historical perspective on pointer types in LLVM IR.
Stella Laurenzo shared a patch to fix deprecation errors in Arcanist on PHP8. Shoaib Meenai suggested moz-phab as an alternative.
Jeff Niu posted an RFC on removing types in MLIR in favour of attributes. There are quite divergent views in the discussion thread currently.
Mehdi Amini suggests adding a new dense array attribute to MLIR.
LLVM GPU News #36 is out.
LLVM commits
More documentation about the motivation behind opaque pointers was added. 47bfc36.
New gen-dxil-enum and gen-dxil-intrinsic-map TableGen backends were added. 435897b, 264c09b.
_Float16
support was enabled on X86 (after being reverted and recommitted many times!). 655ba9c.bf16 is now promoted to f32 when the target doesn’t support it. fb34d53.
A new
-cache-line-size=
option was added to opt and llc. a9dccb0.The symbolizer gained a parser for log symbolizer markup. 2040b6d.
A DirectX target object writer was added. 2af61e6.
Clang commits
A new
-fdriver-only
flag was introduced. c12577c.The
clang::annotate_type
attribute was added, intended to be used to add arbitrary annotations to types for use in static analysis tools. 665da18.The clang-tidy documentation files were reorganised into subdirectories. 6e566bc.
Other project commits
An entrypoint for LLVM libc’s printf was added, allowing a “hello world” program with just LLVM-libc to be built. ad233c6.
A generic data-flow analysis framework was added to MLIR. ead75d9.
A status page was added for math functions in LLVM’s libc. 72c1eff.
The LLD MachO linker gained initial support for EH frames. e183bf8, b422dac.