Tree Stability + Testing

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! :slight_smile: