LLVM Weekly - #189, Aug 14th 2017

Welcome to the one hundred and eighty-ninth 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

If you haven't submitted your talk/tutorial/BoF/panel proposal for the upcoming LLVM Dev Meeting, you have a little more time. Get your submission in by today, Monday 14th at 11:59PM PDT.

LLVM 5.0.0-rc2 has been tagged.

The call for papers for the LLVM in HPC worksohp at SC17 is still open.

On the mailing lists

Marc-André Laperle has given an update on his prototype to implement indexing support in clangd.

Brian Gesiak has posted an RFC on expanding -ftime-report to give more information about how time was spent in tasks such as preprocessing and template instantiation.

Alex Bradbury has posted an RFC on the future of the va_arg instruction in LLVM IR. This RFC hopes to explore where va_arg can be used for more targets and be expanded to handle aggregates, as well as whether that's even a desirable direction.

Kuba Mracek has proposed dropping the %T expansion in lit.

LLVM commits

Assembler support has been added for ARMv8.3-A pointer authentication instructions. r310709.

Assembler support has been added for the new release consistent and processor consistent loads in ARMv8.3-A. r310575.

A basic RISCVAsmParser has landed. r310363.

The TargetTransformInfo::isFoldableMemAccess hook has been removed, as its functionality is subsumed by isLegalAddressingMode. r310463.

The AArch64 and ARM backends gained assembler support for the ARMv8.2a dot product instructions. (Question to my readers: Given Arm's recent rebranding, should that be Armv8.2a or armv8.2a instead?). r310480, r310701.

A new "Restored" flag has been added to CalleeSavedInfo. r310619.

Most AVX512 broadcast intrinsics have been removed and will be auto-upgraded when loaded old IR. r310725.

Clang commits

The clang-proto-fuzzer tool has been created. This models a subset of C++ as a protobuf and uses libprotobuf-mutator to generate mutations. r310408.

A couple of minor ABI differences between Clang and GCC related to move constructors and deleted copy constructors have been fixed. r310401.

clang-tidy gained a new integer division check. r310589.

clang-import-test gained a -dump-ir argument, which can be used to help test completions. r310318.

Other project commits