I've recently found a weird non-deterministic failure in the case-insensitive-include-ms.c, case-insensitive-include.c and case-insensitive-system-include.c testcases. The reason was that they actually share the same %T directory and when they're run in parallel, they can overwrite other test's data. Pretty terrible, right?
This patch changes lit so it generates a per-test temporary directory for %T and not a per-test-suite temporary dir. Another option would of course be to fix the above-mentioned tests, but do we really need to require test writers to remember that %T is not unique to the test?