Граф коммитов

357 Коммитов

Автор SHA1 Сообщение Дата
Daniel Dunbar 65c4b107b7 Fix locating the 'lit.cfg' file when running on only a single file in the
current directory.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78271 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-06 01:41:03 +00:00
Ted Kremenek 8d8bc9157f Renable "html" indexing by default.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78077 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-04 17:05:18 +00:00
Daniel Dunbar 00d02abf24 lit: Some sample tests, for testing the tester
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78050 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-04 04:40:15 +00:00
Ted Kremenek d732a7b771 Recognize '-M' and '-MM' options.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78027 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-04 00:57:12 +00:00
Ted Kremenek e3bf8a8ab4 'unlink' file directly instead of invoking system shell.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78026 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-04 00:55:59 +00:00
Ted Kremenek d658e67b43 Have scan-build clue off of 'BUGMETAEND' to know when to stop processing an HTML file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78022 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-03 23:45:27 +00:00
Daniel Dunbar e9201f5ced lit: Don't treat '\' as an escape in unquoted strings, on Win32. This turns out
to not be a very good idea.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77957 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-03 05:29:22 +00:00
Ted Kremenek 63fe5ecfd1 Include '-o' arguments in verbose output.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77881 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-02 05:42:46 +00:00
Daniel Dunbar 5242e8200d lit: Catch (internal) exceptions when using --no-sh.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77830 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-01 23:18:27 +00:00
Daniel Dunbar 414be149b0 lit: Fix thinko in finding config file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77828 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-01 23:09:12 +00:00
Daniel Dunbar 0dec838af0 lit: Add internal script execution.
- Off by default, you can test it with the --no-sh argument.

 - For me it works for all but 3 tests, but there a number of FIXMEs and QOI
   issues:  
     o Redirection isn't completely accurate -- in practice it can't portably
       be, but I would like to error out if someone writes something which isn't
       going to work. This is the source of the 3 test failures.

     o Some pipe configurations have the potential to deadlock.

     o It is significantly slower when multithreaded. I believe this is due to
       locking happening under the hood, there is probably some kind of solution
       but I haven't investigated yet.

     o Log output is ugly.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77784 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-01 10:18:01 +00:00
Daniel Dunbar a39be6aa63 lit: Two more sh lex/parse bugs (but its so simple!)
- Empty arguments weren't handled correctly.
 - Escapes outside quoted strings weren't handled.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77783 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-01 09:41:09 +00:00
Daniel Dunbar ee41c4d891 lit: Fix two sh lexing bugs.
- '\\\\' inside a "..." string becomes '\\'.
 - The '<' token wasn't being recognized.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77777 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-01 05:52:04 +00:00
Daniel Dunbar 2f8bafefc2 lit: Fix a name lookup problem, which only occurred on a race condition. This is
why dynamic binding sucks.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77773 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-01 04:11:36 +00:00
Daniel Dunbar 5928ccd47f lit: Pull a few more variables into the TestingConfig object.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77772 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-01 04:06:02 +00:00
Daniel Dunbar 2bdccea9a7 lit: Don't use threads when only running one test, or with -j 1.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77766 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-01 03:35:40 +00:00
Daniel Dunbar 93fe03fb77 MultiTestRunner: Add 'sh' parsing to ShUtil.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77765 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-01 03:22:27 +00:00
Daniel Dunbar ed92df08db MultiTestRunner: Fix invalid warning when pointing 'lit' directly at a test.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77690 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-31 18:12:18 +00:00
Daniel Dunbar 7b90be7981 MultiTestRunner: Add module for lexing 'sh' commands.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77668 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-31 07:59:05 +00:00
Daniel Dunbar 1db467f120 MultiTestRunner: Simplify, cleanup, and rename!
- MultiTestRunner will eventually be renamed to 'lit', for LLVM integrated
   tester/testing. This has the pros of being pronouncable and short.

 - "Project" level configuration lives in 'lit.cfg', which is also what lit uses
   to find the root testing directory in some cases. This can be overridden for
   use in project files which want to precisely specify where things are.

 - TestRunner.py is not longer able to be invoked directly.
 
 - Moved some code to Util.py.

 - Introduced a configuration object.

 - Cleaned up --help, removed a few not-very-useful options.

 - Tried not to break anything that works. :)


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77665 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-31 05:54:17 +00:00
Ted Kremenek e600bedcfe Add scan-build option '-no-failure-reports' to supress the creation of a 'failures' subdirectory that includes crash reports, preprocessed files, etc.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77644 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-30 23:55:19 +00:00
Daniel Dunbar cddab4aed4 MultiTestRunner: Stop printing XFAILs on every run, this doesn't really have any
value.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77566 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-30 01:57:45 +00:00
Daniel Dunbar 1182502c78 scan-build: Don't try to index plist-html output directories
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77465 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-29 16:21:23 +00:00
Douglas Gregor c50315b9ac Make the Python TestRunner work for individual tests
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77456 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-29 15:32:08 +00:00
Daniel Dunbar 9a676b7544 MultiTestRunner: Reenable --vg option.
- Simplified from before and using --error-exitcode so failures show up as
   failures.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77424 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-29 02:57:25 +00:00
Ted Kremenek 3386c8a510 Only generate preprocessed files during crashes using Clang, not GCC.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77281 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-28 00:14:21 +00:00
Ted Kremenek 7753b35236 Add scan-build support for 'plist-html', a hybrid mode that supports the
creation of both HTML and plist files. Plist files are currently not generated
using the same layout algorithm as just specifying '-plist', so this is mainly
intended to help support automated runs of the analyzer.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77263 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-27 22:10:34 +00:00
Daniel Dunbar 6779647c89 Tweak MultiTestRunner --path argument.
- Accept multiple values instead of embedding separator.
 - Make sure this gets used when searching for 'clang' binary.
 - Switch makefiles to using --path to stay in sync with cmake.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77234 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-27 19:01:13 +00:00
Daniel Dunbar 10aebbb5c8 MultiTestRunner: Make sure to point at src dir, for out of tree builds.
Factor out routine for executing the script commands.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77075 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-25 15:26:08 +00:00
Daniel Dunbar a957d9996e MultiTestRunner: Cleanup test execution & output.
- Stop writing everything to files.

 - Make test output more standard.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77074 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-25 14:46:05 +00:00
Daniel Dunbar a0e52d6251 MultiTestRunner: Drop external script and DejaGNU compatibility options for now.
- We don't use the former, and the latter doesn't actually work.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77073 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-25 13:19:40 +00:00
Daniel Dunbar 11980cc105 MultiTestRunner: Disable valgrind support for now, I don't feel like maintaining
it currently.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77072 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-25 13:13:06 +00:00
Daniel Dunbar 3b2505b683 MultiTestRunner/Win32: Add SYSTEMROOT to environment, replace '&&' in .bat
files.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77071 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-25 12:57:15 +00:00
Daniel Dunbar 8bf0ccd4c7 Make having no RUN line a failure.
Doug, please look at decltype-crash and instantiate-function-1.mm, I'm not sure
if they are actually testing the right thing / anything.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77070 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-25 12:47:38 +00:00
Daniel Dunbar fb8c119473 Remove this Makefile, it is unused.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77067 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-25 12:37:21 +00:00
Daniel Dunbar 322f789feb MultiTestRunner: Oops, clang wasn't being substituted properly. This is why the
cxx-using-declaration test case started exhibiting different behavior. It still
needs to be fixed, however...


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77066 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-25 12:23:35 +00:00
Daniel Dunbar fecdd00619 MultiTestRunner: Always use absolute path names for tests.
Also, fix a function name I forgot to update.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77064 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-25 12:05:55 +00:00
Daniel Dunbar 025f80dfc2 MultiTestRunner: Validate '&&' at the end of RUN lines.
- This is just to normalize, these will go away soon hopefully.

Added all the missing '&&'s that have crept in. :)


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77062 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-25 11:27:37 +00:00
Daniel Dunbar 78a88e7233 MultiTestRunner: Explicitly define child environment, the only variable we need
to import is the PATH.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77061 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-25 10:14:19 +00:00
Daniel Dunbar df0848982f MultiTestRunner.py improvements.
- Tweak output directories for temp files, derive the temporary base from the
   test's parent directory name, and the test name (instead of the whole path).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77059 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-25 09:53:43 +00:00
Daniel Dunbar 8fe83f18c7 MultiTestRunner.py improvements.
- Not improved: the horribly lousy name. :)

 - Suppress stderr when capturing output.

 - Rewrite which() to do the right PATH search instead of being lazy and
   shelling out to 'which'.

 - On Windows, run scripts as batch files (via 'cmd /c ...').


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77058 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-25 09:42:24 +00:00
Anders Carlsson 7b3817d9cb Whoops, did not mean to check this in.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77022 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-25 00:26:00 +00:00
Anders Carlsson 4257bc6d5b More work on the constant struct builder. We now try to layout all constant structs but throw away the result.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77021 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-25 00:24:56 +00:00
Ted Kremenek 3a92d6d95b Enable the '-warn-security-syntactic' checker option by default.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76933 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-24 02:52:07 +00:00
Ted Kremenek bcc38f3182 Remove bogus check.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76259 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-17 22:45:54 +00:00
Ted Kremenek 536294cf07 Add error message when clang-cc cannot be found.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76256 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-17 22:38:26 +00:00
Daniel Dunbar 3ed4bd1136 Add extra print for --time-tests output.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76104 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-16 21:18:21 +00:00
Daniel Dunbar 02cee15238 Make stdin for test scripts empty, so that tests don't accidentally hang waiting
for stdin.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75506 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 21:24:28 +00:00
Daniel Dunbar 7f10681795 Add --time-tests option to test runner, for profiling 'make test'.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75396 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-11 22:46:27 +00:00
Nuno Lopes a7afc45291 restore proper valgrind support.
disclaim: I know nothing about Python, so apologies in advance if I break something

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75368 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-11 18:34:43 +00:00