[LLVMdev] Tree Stability + Testing

Chris Lattner sabre at nondot.org
Tue Mar 4 11:17:11 PST 2008

Hi Everyone,

This is just a reminder to test patches before they go in.  As the pace of 
development on LLVM is increasing, making sure your patch is solid is 
increasingly important.  This is because every change has some inherent 
risk of breakage, and the more patches that go in, the higher the chance 
that the tree will be broken when the nightly testers run.

Some guidelines:

0. Always build the tree before committing.
1. Always run make check at a minimum before checking in nontrivial
    patches (e.g. comment changes).
2. Almost all patches should run a subset of llvm-test to verify that they
    didn't break anything obvious.  My personal favorite is
    MultiSource/Benchmarks, but any other reasonable subset is ok.
3. For major changes, please run a large subset of the test suite, such as
    all of MultiSource.
4. For particularly invasive or risky patches, please run the full
    llvm-test suite and verify no regressions before checking stuff in.

There are exceptions to these rules of course: if your code is not run by 
default, or is only enabled in 'llc-beta' mode, you basically just need to
make sure that the code builds and does not cause regressions in 'make 
check', regardless of how risky it is.

The goal of the nightly tester is to find subtle/rare problems (the sort 
that cause 3-4 programs to fail in a nightly tester), or problems that you 
can't be reasonably expected to test (e.g. a problem that only manifests 
on darwin/ppc, but you're testing on itanium/linux).

Think green, the tree appreciates it! :)



More information about the llvm-dev mailing list