LLVM Project News and Details from the Trenches
Wednesday, December 14, 2016
LLVM's New Versioning Scheme
We believe that this approach will provide a simpler and more standard approach to versioning.
Monday, September 12, 2016
Announcing the next LLVM Foundation Board of Directors
Monday, June 27, 2016
LLVM Weekly - #130, Jun 27th 2016
If you're reading this on blog.llvm.org then do note this is LAST TIME it will be cross-posted there directly. There is a great effort underway to increase the content on the LLVM blog, and unfortunately LLVM Weekly has the effect of drowning out this content. As ever, you can head to http://llvmweekly.org, subscribe to get it by email, or subscribe to the RSS feed.
The canonical home for this issue can be found here at llvmweekly.org.
Tuesday, June 21, 2016
ThinLTO: Scalable and Incremental LTO
Monday, June 20, 2016
LLVM Weekly - #129, Jun 20th 2016
Welcome to the one hundred and twenty-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.
The canonical home for this issue can be found here at llvmweekly.org.
Wednesday, June 15, 2016
Using LNT to Track Performance
In the past year, LNT has grown a number of new features that makes performance tracking and understanding the root causes of performance deltas a lot easier. In this post, I’m showing how we’re using these features.
LNT contains 2 big pieces of functionality:
- A server,
a. to which you can submit correctness and performance measurement data, by sending it a json-file in the correct format,
b. that analyzes which performance changes are significant and which ones aren't,
c. that has a webui to show results and analyses in a number of different ways. - A command line tool to run tests and benchmarks, such as LLVM’s test-suite, SPEC2000 and SPEC2006 benchmarks.
The features highlighted focus on tracking the performance of code, not on other aspects LNT can track and analyze.
We have 2 main uses cases in tracking performance:
- Post-commit detection of performance regressions and improvements.
- Pre-commit analysis of the impact of a patch on performance.
Post-commit performance tracking
Step 1. Get an overview of the "Daily Report" page
Step 2. The long-term performance evolution chart
Step 3. The Run page
Step 4. The Profile page
Pointers on setting up your own LNT server for tracking performance
Monday, June 13, 2016
LLVM Weekly - #128, June 13th 2016
Welcome to the one hundred and twenty-eighth 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.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, June 6, 2016
LLVM Weekly - #127, June 6th 2016
Welcome to the one hundred and twenty-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 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.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, May 30, 2016
LLVM Weekly - #126, May 30th 2016
Welcome to the one hundred and twenty-sixth 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.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, May 23, 2016
LLVM Weekly - #125, May 23rd 2016
Welcome to the one hundred and twenty-fifth 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.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, May 16, 2016
LLVM Weekly - #124, May 16th 2016
Welcome to the one hundred and twenty-fourth 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.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, May 9, 2016
LLVM Weekly - #123, May 9th 2016
Welcome to the one hundred and twenty-third 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.
If you're in London tomorrow you may be interested in the NMI Open Source Conference. You can register until midday today. I'll be giving a brief talk on lowRISC. While on the subject of conferences, if you are interested in diversity and inclusion in computing education, you may want to check out the CAS #include diversity conference in Manchester on the 11th June.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, May 2, 2016
LLVM Weekly - #122, May 2nd 2016
Welcome to the one hundred and twenty-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.
The canonical home for this issue can be found here at llvmweekly.org.
Wednesday, April 27, 2016
LLVM Foundation 2016 Announcements
Monday, April 25, 2016
LLVM Weekly - #121, Apr 25th 2016
Welcome to the one hundred and twenty-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.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, April 18, 2016
LLVM Weekly - #120, Apr 18th 2016
Welcome to the one hundred and twentieth 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.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, April 11, 2016
LLVM Weekly - #119, Apr 11th 2016
Welcome to the one hundred and nineteenth 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.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, April 4, 2016
LLVM Weekly - #118, Apr 4th 2016
Welcome to the one hundred and eighteenth 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.
The canonical home for this issue can be found here at llvmweekly.org.
Friday, April 1, 2016
My Little LLVM: Undefined Behavior is Magic!
Monday, March 28, 2016
LLVM Weekly - #117, Mar 28th 2016
Welcome to the one hundred and seventeenth 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.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, March 21, 2016
LLVM Weekly - #116, Mar 21st 2016
Welcome to the one hundred and sixteenth 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.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, March 14, 2016
LLVM Weekly - #115, Mar 14th 2016
Welcome to the one hundred and fifteenth 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.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, March 7, 2016
LLVM Weekly - #114, Mar 7th 2016
Welcome to the one hundred and fourteenth 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.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, February 29, 2016
LLVM Weekly - #113, Feb 29th 2016
Welcome to the one hundred and thirteenth 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
LLVM and Clang 3.8RC3 has been tagged.
EuroLLVM 2016 is less than a month away. If you want to attend, be sure to register.
The Red Hat blog has a summary of new features in the upcoming GCC 6 release.
The Meeting C++ blog has a helpful summary of a subset of the proposals for the next C++ committee meeting.
On the mailing lists
-
Chandler Carruth has suggested moving the LLVM test-suite repository to Github. In response to some concerns, Chris Lattner points out that using GitHub in this case doesn't mean abandoning the current development workflow, it just means it can be augmented with GitHub-style pull requests for those who prefer it. Chandler summarised the thread and provided a list of next steps.
-
Sanjoy Das pointed out a potential soundness issue with the
available_externally
linkage type. This triggered a very long discussion. James Knight pointed out the same issue could happen with normal functions in a shared library. There was some back and forth between Hal Finkel and Chandler Carruth on the best approach to addressing this problem. -
Philip Reames asks whether a PHI depending on another PHI in the same basic block is valid. It's currently accepted by the verifier but arguably shouldn't be. So far, nobody has argued that it should be valid.
-
Matthias Braun kicked off a discussion on better defining the semantics of reserved and unallocatable registers. After more discussion, he followed up with a revised definition.
-
David Li has posted a proposal for supporting in-process merging of profile data.
LLVM commits
-
The Sparc backend now contains definitions for all registers and instructions defined in the Sparc v8 manual. r262133.
-
LLVM gained a basic LoopPassManager, though it currently only contains dummy passes. r261831.
-
A number of TargetInstrInfo predicates now take a reference to a MachineInstr rather than a pointer. r261605.
-
The WebAssembly backend gained redzone support for the userspace stack. r261662.
Clang commits
-
Whole-program vtable optimisation is now available in Clang using the
-fwhole-program-vtables
flag. r261767. -
Clang gained
__builtin_canonicalize
which returns the platform-specific canonical encoding of a floating point number. r262122. -
A hasAnyName matcher was added. r261574.
-
The pointer arithmetic checker has been improved to report fewer false positives. r261632.
Other project commits
-
The new ELF linker gained support for identical code folding (ICF). This reduces the size of an LLD binary by 3.6% and of a Clang binary by 2.7%. As described in the commit message, this is not a "safe" version of ICF as implemented in GNU gold, so will cause issues if the input relies on two distinct functions always having distinct addresses. r261912.
-
Polly's tree now contains an
update_check.py
script that may be useful to other LLVM devs. It updates a FileCheck-based lit test by updating theCHECK:
lines with the actual output of theRUN:
command. r261899. -
LLDB gained a new set of plugins to help debug Java programs, specifically Java code JIT-ed by the Android runtime. r262015.
-
The new OpenMP 4.5 affinity API is now supported in LLVM's openmp implementation. r261915.
-
The new ELF linker gained support for the
-r
command-line option, which produces relocatable output (partial linking). r261838. -
The CMake/lit runner for SPEC in the LLVM test-suite can now run the C CPU2006 floating point benchmarks (but not the Fortran ones). r261816.
-
The old ELF linker has been deleted from LLD. r262158.
Monday, February 22, 2016
LLVM Weekly - #112, Feb 22nd 2016
Welcome to the one hundred and twelfth 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.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, February 15, 2016
LLVM Weekly - #111, Feb 15th 2016
Welcome to the one hundred and eleventh 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.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, February 8, 2016
LLVM Weekly - #110, Feb 8th 2016
Welcome to the one hundred and tenth 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.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, February 1, 2016
LLVM Weekly - #109, Feb 1st 2016
Welcome to the one hundred and 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.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, January 25, 2016
LLVM Weekly - #108, Jan 25th 2016
Welcome to the one hundred and eighth 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.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, January 18, 2016
LLVM Weekly - #107, Jan 18th 2016
Welcome to the one hundred and 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 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.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, January 11, 2016
LLVM Weekly - #106, Jan 11th 2016
Welcome to the one hundred and sixth 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.
The canonical home for this issue can be found here at llvmweekly.org.
Monday, January 4, 2016
LLVM Weekly - #105, Jan 4th 2016
Welcome to the one hundred and fifth 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.
Happy new year! This issue marks the second anniversary of LLVM Weekly. It's rather short as the past week has been very quiet, with most LLVM developers seemingly taking a break over the holidays. My colleague Wei Song and myself will be presenting about lowRISC at the 3rd RISC-V workshop on Wednesday this week. Do say hi if you're going to be there.
The canonical home for this issue can be found here at llvmweekly.org.