Alexey Samsonov
1f41986a95
Fixup for r182715: provide correct arg to --gtest-filter
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182758 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-28 09:40:42 +00:00
Galina Kistanova
f0c74bda2e
Fixed bug when tests in executable partially used absolute paths.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182715 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-26 03:58:41 +00:00
Daniel Dunbar
406ef44707
lit: Fix infinite recursion when an out-of-tree test root is located inside the source test root.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179402 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-12 19:09:09 +00:00
Daniel Dunbar
f2c2b20090
lit: Add a test for discovery w/ test_exec_root (out-of-tree test root).
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179401 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-12 19:08:57 +00:00
Daniel Dunbar
aa3a85e2fa
lit: Don't descend into .git directories during test discovery.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179249 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-11 00:31:35 +00:00
Daniel Dunbar
e94bd36dc7
lit: Shorten a metavar to make --help look nicer.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179248 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-11 00:31:27 +00:00
Daniel Dunbar
6be0ae59ec
lit: Add a test for discovery when exact test names are given.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179247 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-11 00:31:22 +00:00
Daniel Dunbar
2b570ce5aa
lit: Add a trivial test of the basic progress bar.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179243 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-11 00:05:37 +00:00
Reid Kleckner
8755ae8c69
[lit] Avoid CRLFs in bash scripts on Windows
...
Native Windows Python will do line ending translation by default, which
we don't want in bash scripts. If we're not native Windows Python, then
'b' is ignored.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177602 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-20 23:32:14 +00:00
NAKAMURA Takumi
816281fccf
lit.TestFormats.GoogleTest: Honor LitConfig.noExecute, or --no-execute were ignored.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176930 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-13 06:16:33 +00:00
Daniel Dunbar
83a4cb51ce
[lit] Add a display function for lit.Test.TestResult.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174667 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 21:34:34 +00:00
Daniel Dunbar
ac1b2e5550
[lit] Add a test for internal shell execution behaviors.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174102 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-31 22:15:20 +00:00
Daniel Dunbar
a80ae9c71c
[lit] Change to raise InternalShellError for all command execution issues.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174101 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-31 22:15:15 +00:00
Daniel Dunbar
b62fb4ba5c
[lit] Fix bug where InternalShellError messages were discarded.
...
- Also, change the exit code to match 'sh'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174089 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-31 20:58:16 +00:00
Daniel Dunbar
63a08e09ae
[lit] Fix a shell parsing bug with ';' not separated by whitespace.
...
- Testing finds bugs, who knew.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174087 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-31 20:51:17 +00:00
Daniel Dunbar
86aa95fc28
[lit] Add a test for the various ShTest format features.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174072 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-31 18:05:01 +00:00
Daniel Dunbar
213a789a71
[lit] TestRunner: Eliminate failDueToStderr argument, which is now unused.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174071 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-31 18:04:45 +00:00
Daniel Dunbar
d5f7dbba2e
[lit] Delete the now-unused SyntaxCheckTest format.
...
- Also, kill the pointless LitFormats module.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174070 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-31 18:04:38 +00:00
Daniel Dunbar
47896090f3
[lit] Move unittest adaptor code into discovery module.
...
- Also, add a test for it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174019 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-31 01:23:39 +00:00
Daniel Dunbar
c9fd0a57f7
[lit] Run the ShUtil tests as part of the test suite.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174018 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-31 01:23:26 +00:00
Daniel Dunbar
84d3c61c03
[lit] Set parallel mode for coverage tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174017 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-31 01:23:18 +00:00
Daniel Dunbar
3d4a973ee4
[lit] Move discovery code into its own module.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174014 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-31 01:14:01 +00:00
Daniel Dunbar
3f8195ea4f
[lit] Add a MANIFEST file and a script for sanity checking the source dist.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174002 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-31 00:21:59 +00:00
Daniel Dunbar
ada2de95ac
[lit] Add a basic discovery test.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174001 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-31 00:21:51 +00:00
Daniel Dunbar
412d805841
[lit] Add a script for checking test coverage.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174000 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-31 00:21:44 +00:00
Daniel Dunbar
356dcac20e
[lit] Add a test suite for lit itself.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173999 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-31 00:21:39 +00:00
Alexey Samsonov
f68cd7543d
[lit] Make GoogleTest test runner correctly discover tests in the source root
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173907 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-30 07:27:45 +00:00
Daniel Dunbar
1d13b1b029
[lit] Add some TODO notes to myself.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173857 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-30 00:12:24 +00:00
NAKAMURA Takumi
52d4de971f
lit/ShUtil.py: Deprecate '!' in shell expression. It is not sh-compatible.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173421 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-25 06:30:36 +00:00
Dmitri Gribenko
41169f2a0e
Remove support for Tcl test format since nobody uses it
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172794 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-18 06:57:01 +00:00
Eli Bendersky
f1a26cf9df
Fix comment typo
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171113 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-26 18:15:42 +00:00
Richard Smith
c15e5b0a0d
PR10867: Analogue of r169441 for when using external 'sh'. And actually run the test!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169446 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-05 23:15:33 +00:00
Richard Smith
00fb9c429e
PR10867. lit would interpret
...
RUN: a
RUN: b || true
as "a && (b || true)" in Tcl mode, and as "(a && b) || true" in sh mode.
Everyone seems to (quite reasonably) write tests assuming the Tcl behavior,
so use that in sh mode too.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169441 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-05 22:54:26 +00:00
Daniel Dunbar
d7956f1feb
lit: Add a simple test suite for checking test runner parallelism.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169038 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-30 21:34:04 +00:00
Daniel Dunbar
0d5dbcb5dc
lit: Bump the version to .3.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168750 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-28 00:06:11 +00:00
Eric Christopher
06b423452c
Remove the CellSPU port.
...
Approved by Chris Lattner.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167984 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-14 22:09:20 +00:00
Alexander Kornienko
08639983de
Added %(line), %(line+<number>), %(line-<number>) substitutions to lit
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167971 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-14 20:26:19 +00:00
Daniel Dunbar
6b283ea945
lit: Rename the valgrind leaks feature to match what is currently used
...
(vg_leak).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166306 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-19 20:29:30 +00:00
Daniel Dunbar
f793fbc569
lit: Remove support for XTARGET.
...
- The XTARGET feature (inherited from old DG tests) was just confusing (and
barely ever used). The same effect can now be achieved with a combination of
the more useful REQUIRES and XFAIL.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166305 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-19 20:29:27 +00:00
Daniel Dunbar
f854597fc1
lit: Add 'valgrind' and 'valgrind-leaks' features when valgrind is used.
...
- These can be used with the XFAIL options.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166303 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-19 20:12:00 +00:00
Daniel Dunbar
7badf45739
lit: Propagate TERM variable in environment, some tools can do really obscure
...
odd things if this is missing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166289 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-19 17:23:34 +00:00
Daniel Dunbar
44a83f0920
lit: Allow XFAIL: lines to also refer to "features".
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166224 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-18 20:43:04 +00:00
NAKAMURA Takumi
46b4b112d2
lit: Util.which(): Use os.path.isfile() instead of os.path.exists(), or it hits to the directory.
...
For example, which('loop-convert') returns 'loop-convert' when the directory 'loop-convert' exists.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163469 91177308-0d34-0410-b5e6-96231b3b80d8
2012-09-08 12:07:24 +00:00
NAKAMURA Takumi
c797f2e9c7
lit: Show actually created count of threads. The incorrect threads count is printed if the number of tests are less than the number of default threads.
...
Thanks to Vinson Lee, reported in PR13620.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162078 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-17 04:15:41 +00:00
Daniel Dunbar
b1a4642796
lit: Use close_fds=True on UNIX, to avoid file descriptor pollution of
...
subprocesses.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160556 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-20 18:29:34 +00:00
Chandler Carruth
1f7ebddd5f
Revert r159528 which taught lit's builtin shell test runner about the
...
'|&' bash syntax. We have lots of users with a bash on their system
which doesn't support this syntax, and as bash is still significantly
faster, we should support them.
The test suite has already been updated to cope with this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159580 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-02 20:43:21 +00:00
Chandler Carruth
cab8e1ed55
Teach the built-in shell test runner in lit to handle '|&'-style pipes.
...
This is directly cloned from the logic in the TCL test bits of lit.
Hopefully will fix most of the windows build bot fallout.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159528 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-02 13:10:15 +00:00
NAKAMURA Takumi
9fae6ee6af
Lit: rewind WinWaitReleased() stuff in TestRunner.
...
r145222 "lit/TestRunner.py: [Win32] Introduce WinWaitReleased(f), to wait for file handles to be released by children."
r145223 "lit/TestRunner.py: Use RemoveForce()."
r145381 "lit/TestRunner.py: Try to catch ERROR_FILE_NOT_FOUND, too."
r152916 "lit/TestRunner.py: [Win32] Check all opened_files[] released, rather than (obsoleted) written_files[]."
r153172 "lit/TestRunner.py: [Win32] Rework WinWaitReleased() again! "win32file" from Python Win32 Extensions."
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156381 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-08 14:31:52 +00:00
Eli Bendersky
0417d7dca0
Fix lit failure on cmake-clang-x64_64-linux bot, apparently due to its having
...
a very (*very*) old version of Python (2.4?)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153409 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-25 09:42:28 +00:00
Eli Bendersky
cc85160672
Continue cleanup of LIT, getting rid of the remaining artifacts from dejagnu
...
* Removed test/lib/llvm.exp - it is no longer needed
* Deleted the dg.exp reading code from test/lit.cfg. There are no dg.exp files
left in the test suite so this code is no longer required. test/lit.cfg is
now much shorter and clearer
* Removed a lot of duplicate code in lit.local.cfg files that need access to
the root configuration, by adding a "root" attribute to the TestingConfig
object. This attribute is dynamically computed to provide the same
information as was previously provided by the custom getRoot functions.
* Documented the config.root attribute in docs/CommandGuide/lit.pod
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153408 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-25 09:02:19 +00:00
Eric Christopher
a443e5b1f1
Remove the C backend.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153307 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-23 05:50:46 +00:00
Nico Weber
0191bfcf7a
Add a ${pathsep} variable to lit that expands to : (or ; on win32).
...
This is in braces so that it doesn't conflict with the existing %p.
It uses braces instead of parens because parens would have to be
regex-escaped.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153213 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-21 19:56:42 +00:00
NAKAMURA Takumi
9146e66cc1
lit/TestRunner.py: [Win32] Rework WinWaitReleased() again! "win32file" from Python Win32 Extensions.
...
We can simply confirm the handle released to open it with EXCLUSIVE. Attempting renaming was bad.
Disable win32file at ImportError. Thanks to Francois to let me know.
FIXME: Could we report warning or notification if win32file were not found?
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153172 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-21 07:49:44 +00:00
Francois Pichet
391c14530b
Revert r152915. Chapuni's WinWaitReleased refactoring: It doesn't work for me
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152958 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-16 22:50:01 +00:00
NAKAMURA Takumi
bb0b6eddaf
lit/TestRunner.py: [Win32] Check all opened_files[] released, rather than (obsoleted) written_files[].
...
In previous case,
RUN: foo -o %t
RUN: FileCheck < %t
RUN: bar -o %t
2nd read handle might prevent manipulation of 3rd %t in bar, to remove and rename.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152916 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-16 10:48:10 +00:00
NAKAMURA Takumi
7c6ac2ebab
lit/TestRunner.py: [Win32] Rework WinWaitReleased().
...
We can simply confirm the handle released to open it with EXCLUSIVE. Attempting renaming was bad.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152915 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-16 10:48:03 +00:00
NAKAMURA Takumi
f5677777ca
lit: Pass %INCLUDE% to tests on Win32. clang may expect existence of %INCLUDE% in vcvarsall.bat.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152588 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-13 00:02:06 +00:00
Duncan Sands
61318736ee
Honour --config-prefix also for lit.local.cfg.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151977 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-03 13:30:56 +00:00
Andrew Trick
d0b3da1ea2
This is a small patch with a couple of improvements for running lit with --debug:
...
1. Added a status note when a config file is loaded directly with load_config. This helps notice loads of lit.cfg from lit.site.cfg
2. Added a status note on the result of a config load. Previously, it was just notifying that it tries to load a config file. Now it will also say whether the load succeeded or the file wasn't found
The two changes give better visibility into which config files were actually loaded by lit. The effect is only on --debug runs.
Patch by Eli Bendersky!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149932 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-06 23:34:52 +00:00
Daniel Dunbar
7434c9a053
[lit] Add a --filter option which is useful when dealing with virtual test
...
paths.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148362 91177308-0d34-0410-b5e6-96231b3b80d8
2012-01-18 00:03:12 +00:00
Argyrios Kyrtzidis
08713b37c3
Disable the crash reporter when running lit tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147965 91177308-0d34-0410-b5e6-96231b3b80d8
2012-01-11 20:53:25 +00:00
Daniel Dunbar
2d4a5bf817
lit/lit.TestRunner: Add an extra_substitutions argument for executeShTest --
...
useful for test suites which want to piggyback onto the "shtest" format style.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147684 91177308-0d34-0410-b5e6-96231b3b80d8
2012-01-06 21:39:06 +00:00
NAKAMURA Takumi
ebb57cc44a
lit/TestRunner.py: Try to catch ERROR_FILE_NOT_FOUND, too.
...
Thanks to Francois, to let me know.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145381 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-29 06:40:50 +00:00
NAKAMURA Takumi
b0c95fbaf9
lit/TestRunner.py: Use RemoveForce().
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145223 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-28 01:55:08 +00:00
NAKAMURA Takumi
fc1a1870b5
lit/TestRunner.py: [Win32] Introduce WinWaitReleased(f), to wait for file handles to be released by children.
...
When wait() has finished, opened handles (especially writing stdout to file) might not be released immediately.
To wait for released, poll to attempt renaming.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145222 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-28 01:55:01 +00:00
Dan Gohman
33ba8b0e96
Remove the Alpha backend.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143164 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-27 22:56:32 +00:00
Daniel Dunbar
241f997d3a
lit: Drop some unneeded code from example tests.
...
- Also, cleanup site.exp files in example tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143141 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-27 20:59:19 +00:00
Dan Gohman
3e6157de57
Remove the Blackfin backend.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142880 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-25 00:05:42 +00:00
Dan Gohman
29074ccf6c
Remove the SystemZ backend.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142878 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-24 23:48:32 +00:00
NAKAMURA Takumi
bbbc283d86
lit: Normalize pathsep slashes also on %T.
...
On Python-w32 with mingw msys bash, %T was replaced to "x:\foo\bar...". msys bash cannot handle DOSish paths.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138852 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-31 03:56:17 +00:00
Andrew Trick
7c12837916
Lit option for ignoring stderr output.
...
This is useful for testing a build a temporarily hand instrumented
build.
Patch by arrowdodger!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138804 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-30 17:42:33 +00:00
Douglas Gregor
0f9d34c71d
lit: Add %T as a replacement for the output directory
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138640 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-26 19:05:18 +00:00
NAKAMURA Takumi
4749cc5a3d
utils/lit/lit/TestingConfig.py: Pass TEMP and TMP to tests on Win32 hosts.
...
Win32 GetTempPath() tends to pick up %WINDIR% when neither TEMP nor TMP was found. %WINDIR% should not be treated writable on recent Windows OS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138192 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-20 05:44:58 +00:00
NAKAMURA Takumi
7a13cc625b
utils/lit/lit/TestingConfig.py: Split out environment vars for Win32.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138191 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-20 05:44:52 +00:00
NAKAMURA Takumi
6bb5fe3a0d
lit/LitConfig.py: Demote Win32 message "Unable to find 'bash.exe'" from Warning to Note.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134809 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-09 07:19:50 +00:00
Jordy Rose
2f494b6afc
Use subprocess.Popen instead of popen2 to stop a deprecation warning when running lit on OS X
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134324 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-02 17:28:55 +00:00
Andrew Trick
f2a58425cd
lit support for REQUIRES: asserts.
...
Take #2 . Don't piggyback on the existing config.build_mode. Instead,
define a new lit feature for each build feature we need (currently
just "asserts"). Teach both autoconf'd and cmake'd Makefiles to define
this feature within test/lit.site.cfg. This doesn't require any lit
harness changes and should be more robust across build systems.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133664 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-22 23:23:19 +00:00
Andrew Trick
05c087d893
Add support to lit for build mode requirements. e.g.
...
REQUIRES: Asserts
REQUIRES: Debug
This required chaining test configuration properties. It seems like a
generally good thing to do.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133131 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-16 01:33:35 +00:00
Chris Lattner
7a2bdde0a0
Fix a ton of comment typos found by codespell. Patch by
...
Luis Felipe Strano Moraes!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129558 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-15 05:18:47 +00:00
NAKAMURA Takumi
d4f4e6ee2c
raw_ostream: [PR6745] Tweak formatting (double)%e for Windows hosts.
...
On MSVCRT and compatible, output of %e is incompatible to Posix by default. Number of exponent digits should be at least 2. "%+03d"
FIXME: Implement our formatter in future!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127872 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-18 09:30:10 +00:00
NAKAMURA Takumi
8ea2649fda
lit/ProgressBar.py: [PR7919] Improve line wrap for XN-incapable terminals.
...
On Win32 console, emitting char to col#79 causes linefeed, and the cursor will not return to col#79 upper line with backspace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127696 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-15 21:07:44 +00:00
NAKAMURA Takumi
9869c2f717
utils/lit/lit/TestRunner.py: bash is available with MSYS on Python/W32. Then we can execute "bash tests".
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127074 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-05 09:46:53 +00:00
NAKAMURA Takumi
2f017cb7f3
On Windows hosts, Python scripts in test/Scripts did not accept binary files from stdin. The environment variable "PYTHONUNBUFFERED" makes stdin as binary. Thanks to Danil Malyshev!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127072 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-05 09:46:36 +00:00
NAKAMURA Takumi
214c920818
lit/TestingConfig.py: Add the environment variable PRINTF_EXPONENT_DIGITS as workaround [PR6745] for mingw's tests. Danil Malyshev suggested this.
...
FIXME: It does not improve MSVC's issue.
[Danil Malyshev] Defining PRINTF_EXPONENT_DIGITS env is the suggested way to make MinGW ANSI/POSIX compatible. This is not only about the case we are discussing, but in general, I'd like to have explicitly defined compatibility mode for all the tests running on MinGW.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125725 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-17 05:56:41 +00:00
NAKAMURA Takumi
7805cdcab5
lit/TestFormats.py: Unittests may be found with suffix .exe also on Cygwin.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125273 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-10 09:11:57 +00:00
NAKAMURA Takumi
f5201bcd3b
lit/Util.py: On Cygwin, 'PATHEXT' may exist but it should not be used.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125272 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-10 09:11:48 +00:00
NAKAMURA Takumi
302b169323
lit/LitConfig.py: Add the new method getToolsPath(dir,paths,tools).
...
It seeks tools(eg. [cmp, grep, sed]) in same directory, to be sane.
It seeks "bash" only in the directory found at last time. Or bash would be insane (against other tools).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125175 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-09 04:19:15 +00:00
NAKAMURA Takumi
df944f1f83
lit/Util.py: Add two functions, checkToolsPath(dir,tools) and whichTools(tools,paths).
...
checkToolsPath(dir,tools):
return True if "dir" contains all "tools".
whichTools(tools,paths):
return a directory that contains all "tools" in "paths".
Or return None when all "tools" were not met.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125174 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-09 04:19:06 +00:00
Francois Pichet
7a0be17c08
On Windows, replace each occurrence of '\' by '\\' on the replacement string. This is necessary to prevent re.sub from replacing escape sequences occurring in path.
...
For example:
llvm\tools\clang\test
was replaced by
llvm <tab> ools\clang <tab> est
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123070 91177308-0d34-0410-b5e6-96231b3b80d8
2011-01-08 18:09:48 +00:00
Francois Pichet
ba69d3f6d4
Disable r122754 on Windows: was causing all lit tests to fail.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122808 91177308-0d34-0410-b5e6-96231b3b80d8
2011-01-04 10:23:42 +00:00
David Greene
18d4987753
Reapply 122341 to fix PR8199 now that clang changes are in.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122754 91177308-0d34-0410-b5e6-96231b3b80d8
2011-01-03 17:30:25 +00:00
David Greene
234da6832f
Revert 122341. It breaks some darwin tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122346 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-21 17:25:43 +00:00
David Greene
4d75d80d62
Fix PR 8199. This patch prepends the build tool dir to LLVM programs
...
being tested. This ensures that we test the tools just built and not
some random tools that might happen to be in the user's PATH. This
makes LLVM testing much more stable and predictable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122341 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-21 16:55:53 +00:00
NAKAMURA Takumi
280423558d
utils/lit/lit/TestFormats.py: [PR8438] unittests: Seek *Tests (not BUILD_MODE/*Tests) under whole unittests/ if BUILD_MODE == '.'
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121118 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-07 07:41:32 +00:00
NAKAMURA Takumi
fb4d9816e7
lit.GoogleTest: On case-insensitive filesystem, matching should be case-insensitive when directory name is checked with test_sub_dir.
...
On MSVS8, ${CMAKE_CFG_INTDIR}, aka $(OutDir), has capitalized name(eg. Debug), although $(OutDir) is made with lower case(eg. debug).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119781 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-19 03:19:26 +00:00
Daniel Dunbar
69c4cbe9e8
lit: Fix a subtle resource usage bug when executing tests using the internal
...
shell runner.
We would inadvertently end up holding on to handles to the temporary files
longer than we should have been. On Win32, where open handles lock some file
operations, this caused problems in tests which would try to move temporary
files around (as Clang does by default now).
Many thanks to Francois Pichet for the excellent detective work on this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115040 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-29 15:59:37 +00:00
Michael J. Spencer
18fac3c0d2
Test unittests built with CMake.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114726 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-24 09:01:22 +00:00
Michael J. Spencer
c8417d7165
Fix whitespace.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114724 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-24 09:00:56 +00:00
Daniel Dunbar
3f42dba88f
lit: Bump version to 0.2.0dev, for no apparent reason.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114262 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-18 02:28:15 +00:00
Daniel Dunbar
bd26ba0b53
lit: Tweak setup.py.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114261 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-18 02:28:12 +00:00
Daniel Dunbar
3f32b444ed
lit: These TODOs are done(ish).
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114260 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-18 02:28:09 +00:00
Duncan Sands
7201c9f1f1
Some of the tests build an executable with llvm-gcc. For this to work, llvm-gcc
...
needs to find some libraries, which may require searching the directories given
by LIBRARY_PATH on curiously configured systems. So pass on LIBRARY_PATH.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114186 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17 17:05:27 +00:00
Daniel Dunbar
c2be84fd49
lit: Expose FileBasedTest object and Test module via 'lit' object that gets
...
exposed to config files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113923 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-15 03:52:38 +00:00
Daniel Dunbar
ff2dcd3ce9
lit: Rename main lit module to main.py, lit/lit/lit.py was a bit too, err,
...
alliterate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113922 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-15 03:52:31 +00:00
Daniel Dunbar
1ca8559de5
lit/GoogleTest: Add .exe to the suffix when looking for tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111487 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-19 00:22:45 +00:00
Dan Gohman
bd2499a0b1
Expand uses of python 2.6's "A if B else C" syntax into regular
...
if-else statements, to hopefully support older pythons (PR7850).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110638 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-10 01:03:34 +00:00
Dan Gohman
34f68fc040
Print a message when a test failure is due to stderr output
...
alone, rather than just an exit code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110208 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-04 16:42:38 +00:00
Dan Gohman
e1e5746476
Change the logic which interprets output on stderr as an error so that
...
it doesn't modify the exit code or the stdout contents, and so that it
doesn't clutter the output with "Command has output on stderr!".
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110171 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-04 00:12:31 +00:00
Dan Gohman
8a7ffe651f
Don't print "Command output (stdout):" when the command has no output,
...
and same for stderr, to avoid clutter in the output.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110169 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-04 00:05:16 +00:00
Dan Gohman
e1390c40a6
Use the regular conditional operator syntax instead of a clever hack.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110168 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-04 00:00:13 +00:00
Daniel Dunbar
6647033565
lit: Allow clients to define predefined parameters.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109999 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-02 00:39:38 +00:00
Daniel Dunbar
2d4590d6fb
lit: Add some example tests for previous commit.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109071 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-22 00:40:19 +00:00
Daniel Dunbar
b937549e51
lit: Add support for 'REQUIRES: feature-one, feature-two, ...' in the
...
integrated-test formats (sh and tcl style). The particular features which get
recognized are up to the test suite itself to define.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109062 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-21 23:39:57 +00:00
Daniel Dunbar
1befb9b2df
lit: Replace /dev/null in scripts with temporary files on Windows.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105888 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-12 16:00:10 +00:00
Daniel Dunbar
771d90ff43
lit: Add a forgotten default argument.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105858 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-11 23:47:36 +00:00
Daniel Dunbar
f32a41a7e6
lit: When running Tcl style tests on Windows, substitute slashes to avoid Tcl
...
quoting problems. Not particularly ideal, but should work ok. Based on a patch by
Michael Spencer!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105855 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-11 23:27:45 +00:00
Daniel Dunbar
b0ac8677fd
lit: Add another place to look for bash.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104189 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-19 23:56:09 +00:00
Daniel Dunbar
bd4fa2efd3
lit: Fix a sh lexing bug which caused annotate-token.m to fail when run with the
...
internal shell parser; we weren't lexing the quotes in a command like::
clang -DFOO='hello'
correctly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103652 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-12 21:47:58 +00:00
Daniel Dunbar
473a09d80a
lit: Fix OneCommandPerFileTest format when tests are specified directly.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103626 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-12 17:56:44 +00:00
Daniel Dunbar
b14c699fe0
lit: Add support for 'lit ... @foo', which reads a list of tests to run from
...
foo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103625 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-12 17:56:42 +00:00
Daniel Dunbar
e4eae84f76
lit: Allow test_format to be None.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103091 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-05 17:22:35 +00:00
Daniel Dunbar
2381379d1d
lit: Add support to OneCommandPerFileTest format to take input directory from input path.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100846 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-09 02:15:10 +00:00
Chris Lattner
e3a601b648
add newlines at end of files.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100706 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-07 22:54:55 +00:00
Daniel Dunbar
e09ccab0ce
Add a FIXME.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100034 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 19:14:05 +00:00
Daniel Dunbar
c3681d334a
lit: Make sure to close any files we open as part of redirection.
...
PR6753.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100032 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-31 18:48:43 +00:00
Daniel Dunbar
f104f5b17a
lit: Add LitTestCase and lit.load_test_suite, for adapting lit based suites for
...
use with Python's unittest.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99498 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-25 07:10:01 +00:00
Jeffrey Yasskin
982873cdfb
When we don't pass --vg-leak to lit, pass --leak-check=no to valgrind.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99112 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-21 01:47:33 +00:00
Jeffrey Yasskin
32989deb96
Add support for XFAILing valgrind runs with memory leak checking independently
...
of runs without leak checking. We add -vg to the triple for non-checked runs,
or -vg_leak for checked runs. Also use this to XFAIL the TableGen tests, since
tablegen leaks like a sieve. This includes some valgrindArgs refactoring.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99103 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-20 23:08:45 +00:00
Ben Holt
bcb4d81755
Test commit (removed extra blank line)
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98988 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-19 21:12:29 +00:00
Torok Edwin
2f36fe4380
Set numThreads to 1 by default when Python is older than 2.5.2.
...
Python 2.4 always hits this bug: http://bugs.python.org/issue1731717
when running check-lit on multi-core systems.
Setting numThreads to 1 makes it slower, but at least the results reported are
correct.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98969 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-19 17:54:21 +00:00
Daniel Dunbar
1814cf0f10
lit: Tweak example tests config.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98859 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-18 20:06:05 +00:00
Jeffrey Yasskin
fd4943087e
Avoid a problem in libc_freeres() seen on a linux-i686 buildbot when running
...
under valgrind:
==19577== Invalid free() / delete / delete[]
==19577== at 0x4C9C866: free (vg_replace_malloc.c:325)
==19577== by 0x5121104: ??? (in /lib/libc-2.10.2.so)
==19577== by 0x4C97412: _vgnU_freeres (vg_preloaded.c:62)
==19577== by 0x5041486: __run_exit_handlers (exit.c:93)
==19577== by 0x50414FE: exit (exit.c:100)
==19577== by 0x5028B5C: (below main) (libc-start.c:254)
==19577== Address 0xffffffff is not stack'd, malloc'd or (recently) free'd
==19577==
Apparently this happens under certain versions of glibc, so valgrind provides
the --run-libc-freeres=no option to avoid calling freeres(). This may increase
the number of "still reachable" blocks valgrind reports, but we don't care
about those, while this error breaks the buildbots.
There are upstream bugs about this at
http://sourceware.org/bugzilla/show_bug.cgi?id=10610 and
http://bugs.kde.org/show_bug.cgi?id=167483 , but they don't look likely to be
fixed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98813 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-18 07:00:12 +00:00
Jeffrey Yasskin
b5e9770aef
Make lit pay attention to --vg for tcl tests too, which makes it work on LLVM's
...
non-unit tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98741 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 17:04:56 +00:00
Jeffrey Yasskin
355471741b
Make lit pay attention to --vg for unittests too.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98449 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-13 20:45:41 +00:00
John McCall
197d009e6b
Revert r97726 and r97728 at ddunbar's request; we want to solve this
...
some other way when it comes to be necessary.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97972 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-08 20:02:05 +00:00
Duncan Sands
2d4e4af45e
If LD_LIBRARY_PATH is set in the system environment, use it.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97796 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-05 08:21:02 +00:00
John McCall
b8f2e4bde6
Simplify the condition-checking logic and hopefully clear up a build failure
...
that somehow got through my testing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97728 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-04 11:48:42 +00:00
John McCall
7b7b90769a
Teach lit to honor conditional directives. The syntax is:
...
IF(condition(value)):
If the value satisfies the condition, the line is processed by lit; otherwise
it is skipped. A test with no unignored directives is resolved as Unsupported.
The test suite is responsible for defining conditions; conditions are unary
functions over strings. I've defined two conditions in the LLVM test suite,
TARGET (with values like those in TARGETS_TO_BUILD) and BINDING (with values
like those in llvm_bindings). So for example you can write:
IF(BINDING(ocaml)): RUN: %blah %s -o -
and the RUN line will only execute if LLVM was configured with the ocaml
bindings.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97726 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-04 09:36:50 +00:00
Daniel Dunbar
3d4d01bd39
Eliminate llvmgcc_version testing variable.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96908 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-23 07:56:28 +00:00
Daniel Dunbar
a2b40a95b2
Kill unused llvmgccmajvers testing variable.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96906 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-23 07:56:18 +00:00
Daniel Dunbar
cacaa5bff2
lit: Ignore dot files when scanning for tests (e.g., editor temprary files,
...
etc.)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95803 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-10 21:00:55 +00:00
Daniel Dunbar
3f451cafb5
Remove stray DOS newline.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95765 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-10 04:10:10 +00:00
Jeffrey Yasskin
8d280fb50a
Make lit's gtest support honor config.environment.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95398 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-05 18:09:19 +00:00
Daniel Dunbar
eab04fc0be
lit: Separate test suite from test name with spaces, to make it easier to cut and paste.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94134 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-22 02:04:28 +00:00
Daniel Dunbar
9ac75ca0bf
lit: Add setuptools support.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92169 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-26 22:58:39 +00:00
Daniel Dunbar
d24f1f342a
lit: Sink code into a 'lit' package.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92168 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-26 22:58:23 +00:00
Daniel Dunbar
99ea6898e1
lit: Improve error when gtest discovery fails.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91458 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-15 22:00:37 +00:00
Daniel Dunbar
32c9800a16
lit: Prevent crash-on-invalid (when run on directory which has no test suite).
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90871 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-08 19:49:30 +00:00
Daniel Dunbar
a7193e40e2
lit: Fix exclude dirs functionality.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89210 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-18 17:42:17 +00:00
Jeffrey Yasskin
d1ba06bf13
Make X86-64 in the Large model always emit 64-bit calls.
...
The large code model is documented at
http://www.x86-64.org/documentation/abi.pdf and says that calls should
assume their target doesn't live within the 32-bit pc-relative offset
that fits in the call instruction.
To do this, we turn off the global-address->target-global-address
conversion in X86TargetLowering::LowerCall(). The first attempt at
this broke the lazy JIT because it can separate the movabs(imm->reg)
from the actual call instruction. The lazy JIT receives the address of
the movabs as a relocation and needs to record the return address from
the call; and then when that call happens, it needs to patch the
movabs with the newly-compiled target. We could thread the call
instruction into the relocation and record the movabs<->call mapping
explicitly, but that seems to require at least as much new
complication in the code generator as this change.
To fix this, we make lazy functions _always_ go through a call
stub. You'd think we'd only have to force lazy calls through a stub on
difficult platforms, but that turns out to break indirect calls
through a function pointer. The right fix for that is to distinguish
between calls and address-of operations on uncompiled functions, but
that's complex enough to leave for someone else to do.
Another attempt at this defined a new CALL64i pseudo-instruction,
which expanded to a 2-instruction sequence in the assembly output and
was special-cased in the X86CodeEmitter's emitInstruction()
function. That broke indirect calls in the same way as above.
This patch also removes a hack forcing Darwin to the small code model.
Without far-call-stubs, the small code model requires things of the
JITMemoryManager that the DefaultJITMemoryManager can't provide.
Thanks to echristo for lots of testing!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88984 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-16 22:41:33 +00:00
Daniel Dunbar
2cb097d5cd
lit: Factor a new OneCommandPerFileTest out of SyntaxCheckTest.
...
- Used for running a single fixed command on a directory of files, with the
option of deriving a temporary input file from the test source.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88844 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-15 08:10:29 +00:00
Daniel Dunbar
048bac35df
Remove duplicate implementation of excludes functionality, and support excluding
...
dirnames.
Also, add support for the 'unsupported' config property.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88838 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-15 07:22:58 +00:00
Daniel Dunbar
40c67b5832
lit: Add --repeat=N option, for running each test N times.
...
- Currently just useful for timing, although it could be extended as one (bad) way to deal with flaky tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88827 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-15 01:02:09 +00:00
Daniel Dunbar
6c1c9cfc65
lit: Add ExampleTests, for testing lit and demonstrating test suite features.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86654 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-10 02:41:17 +00:00
Daniel Dunbar
972cc05c23
lit: Fix bug in --show-suites which accidentally override the list of tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86653 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-10 02:40:21 +00:00
Daniel Dunbar
bf477df346
lit: Hardcode whence seek value, os.SEEK_END isn't always available.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86449 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 09:07:33 +00:00
Daniel Dunbar
1bf013904f
lit: Warn when a test suite contains no tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86448 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 09:07:26 +00:00
Daniel Dunbar
ee504b8cd7
lit: Drop require_and_and support.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86447 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 09:07:13 +00:00
Daniel Dunbar
474f0df3ac
lit: Workaround a Win32/subprocess bug when appending.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86437 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 03:43:06 +00:00
Daniel Dunbar
2d01b26ce7
lit: Preserve the PATHEXT variable when running subcommands, this is important on Win32
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86436 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08 03:35:19 +00:00
Douglas Gregor
489b83302c
Teach lit's SyntaxCheckTest two new tricks:
...
- skip .svn directories
- add a set of excluded filenames so we can easily skip tests
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86185 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-05 22:58:04 +00:00
Daniel Dunbar
f626167e69
lit: Add --param NAME=VALUE option, for test suite specific use (to communicate
...
arbitrary command line arguments to the test suite).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86137 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-05 16:27:33 +00:00
Daniel Dunbar
42543b7b73
lit: Update Clang's test style to use XFAIL: and XTARGET: lines that match
...
LLVM's tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85882 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-03 07:26:38 +00:00
Daniel Dunbar
edb8997821
lit: Add --config-prefix option, to override default config file names.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85035 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-25 03:30:55 +00:00
Daniel Dunbar
6efba21342
lit: Allow use of /dev/null in redirects on Windows (replace by a temporary
...
file).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85028 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-25 01:37:26 +00:00
Dan Gohman
a7f1d72d09
Delete a spurious semicolon.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85018 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-24 23:24:45 +00:00
Daniel Dunbar
a3f85d206a
lit: Support '>>' redirections when executing scripts internally.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85014 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-24 20:32:49 +00:00
Daniel Dunbar
7723d45153
lit: When running Tcl scripts via shell, try harder to find 'bash', but fall
...
back to running them internally if that fails. PR5240.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84462 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-19 03:54:21 +00:00
Jeffrey Yasskin
6bccb4c237
Support GoogleTest's "typed tests"
...
(http://code.google.com/p/googletest/wiki/GoogleTestAdvancedGuide#Typed_Tests )
in lit.py. These tests have names like "ValueMapTest/0.Iteration", which broke
when lit.py os.path.join()ed them onto the path and then assumed it could
os.path.split() them back off. This patch shifts path components from the
testPath to the testName until the testPath exists.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84387 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-18 02:05:42 +00:00
Daniel Dunbar
705428ae4a
Don't traverse into .svn directories.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82978 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-28 07:32:45 +00:00
Daniel Dunbar
5a461dd513
lit: When executing shell scripts internally, don't allow piped stderr on any
...
commands except the last one, instead redirect the stderr to a temporary
file. This sidesteps a potential deadlocking issue.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82538 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-22 09:50:38 +00:00
Daniel Dunbar
df3388492b
Add a magic LLVM_DISABLE_CRT_DEBUG environment variable which we check in RegisterHandler and use to disable the Win32 crash dialogs. These are a major blocker to any kind of automated testing.
...
Also, tweak the 'lit' test runner to set this variable unconditionally.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82537 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-22 09:50:28 +00:00
Daniel Dunbar
4b78aa3f56
Actually use the arguments with the resolved executable path.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82527 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-22 06:09:13 +00:00
Daniel Dunbar
58c661ced1
lit: Don't use close_fds=True on Windows.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82521 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-22 04:44:37 +00:00
Daniel Dunbar
6bd2b2e9a2
lit: When executing commands internally, perform PATH resolution ourselves.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82520 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-22 04:44:26 +00:00
Daniel Dunbar
7c748661ce
lit: Add a custom test format for use in clang.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81987 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-16 01:34:52 +00:00
Daniel Dunbar
b2485c9e41
lit: When finding nested test suites, check first in the execpath in case there
...
is a site configuration.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81902 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-15 20:09:17 +00:00
Daniel Dunbar
00a42449ec
lit: Give test formats control over test discovery.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81751 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-14 02:38:46 +00:00
Daniel Dunbar
5110609ceb
tests: Add a %abs_tmp substitution which is guaranteed to be a full path.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81662 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-13 01:39:50 +00:00
Daniel Dunbar
c60535ab81
Count test correctly with -q.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81313 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-09 02:41:42 +00:00
Daniel Dunbar
07d0bd4da7
Fix another refactoro.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81312 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-09 02:41:32 +00:00
Daniel Dunbar
f072432e26
lit needs bash for tcl-as-sh execution, we use set -o pipefail.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81197 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-08 06:08:07 +00:00
Daniel Dunbar
ba3931b667
Fix typo that worked on python 2.6.
...
Also, fix unit tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81194 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-08 05:46:28 +00:00
Daniel Dunbar
2c0a49c8cb
Fix a refactoro.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81192 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-08 05:37:51 +00:00
Daniel Dunbar
be7ada7181
Add 'lit' testing tool.
...
- make install && man $(llvm-config --prefix)/share/man/man1/lit.1 for more
information.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81190 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-08 05:31:18 +00:00