LLVM Weekly - #287, July 1st 2019
Welcome to the two hundred and eighty-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 https://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
Registration is now open for the 2019 LLVM Developers' Meeting, to be held October 22-23rd in San Jose.
The Linux Plumbers Toolchain micro-conference has put out a call for papers. The conference will take place in Lisbon, September 9th-11th.
This month's LLVM bay area social will be held on July 11th rather than the usial first Thursday of the month.
LLVM 8.0.1-rc3 has been tagged.
On the mailing lists
-
By far the biggest discussion topic this week was started by Siva Chandra's message about contributing a libc to LLVM. This triggered many questions about the scope of the proposed project, and about where libc implementations such as Musl, glibc, or the BSDs fail to meet the Google team's requirements. To pick out a few responses: Chris Lattner responded positively, Rich Felker (author of musl libc) felt it was a bad idea, Siva gave more info on the motivations, Saleem Abulrasool gives a strawman requirements list for a libc that might serve the "full community" (rather then narrowly targeting a few use cases), and Stephen Canon queries the practicality of avoiding assembly while keeping high performance (noting wins available for core string and memory functions).
-
Tanya Lattner is seeking volunteers for those wishing to present tutorials aimed at newcomers.
-
Bill Wendling and Nick Desulniers shared an RFC on asm goto with output constraints.
-
Bardia Mahjour queries the status of the new pass manager. Leonard Chan reports that Fuchsia hopes to switch to the new PM by default, while Philip Reames shares that his downstream project has already switched.
LLVM commits
-
GlobalISel was modified to allow multiple vregs for lowerFormalArgs and lowerCall. This allows the target to decide for itself whether to handle them as separate pieces or to use a single register. r364510.
-
MC layer support has now been merged for all Arm MVE instructions. r364291, r364292.
-
A class has been introduced for registers in CodeGen, rather than just an
unsigned
. r364191. -
llvm-symbolizer learned a FRAME command which prints a description of the referenced function's stack frame. r364225.
-
Pseudo-instructions to model Arm v8.1-m low overhead loops were introduced. r364288.
-
LoopUnroll can now handle loops with exiting headers and unconditional latches. r364398.
-
WebAssembly gained support for tail calls. r364445.
Clang commits
-
When dumping the AST to JSON, source locations and ranges are now emitted directly rather than in separate JSON objects. r364226.
-
The clang-doc tool gained basic support for templates and typedef. r364222.