summaryrefslogtreecommitdiff
path: root/utils/lit
Commit message (Collapse)AuthorAge
...
* lit: Sink code into a 'lit' package.Daniel Dunbar2009-12-26
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92168 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: Improve error when gtest discovery fails.Daniel Dunbar2009-12-15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91458 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: Prevent crash-on-invalid (when run on directory which has no test suite).Daniel Dunbar2009-12-08
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90871 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: Fix exclude dirs functionality.Daniel Dunbar2009-11-18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89210 91177308-0d34-0410-b5e6-96231b3b80d8
* Make X86-64 in the Large model always emit 64-bit calls.Jeffrey Yasskin2009-11-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* lit: Factor a new OneCommandPerFileTest out of SyntaxCheckTest.Daniel Dunbar2009-11-15
| | | | | | | - 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
* Remove duplicate implementation of excludes functionality, and support excludingDaniel Dunbar2009-11-15
| | | | | | | | 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
* lit: Add --repeat=N option, for running each test N times.Daniel Dunbar2009-11-15
| | | | | | - 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
* lit: Add ExampleTests, for testing lit and demonstrating test suite features.Daniel Dunbar2009-11-10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86654 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: Fix bug in --show-suites which accidentally override the list of tests.Daniel Dunbar2009-11-10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86653 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: Hardcode whence seek value, os.SEEK_END isn't always available.Daniel Dunbar2009-11-08
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86449 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: Warn when a test suite contains no tests.Daniel Dunbar2009-11-08
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86448 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: Drop require_and_and support.Daniel Dunbar2009-11-08
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86447 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: Workaround a Win32/subprocess bug when appending.Daniel Dunbar2009-11-08
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86437 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: Preserve the PATHEXT variable when running subcommands, this is ↵Daniel Dunbar2009-11-08
| | | | | | important on Win32 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86436 91177308-0d34-0410-b5e6-96231b3b80d8
* Teach lit's SyntaxCheckTest two new tricks:Douglas Gregor2009-11-05
| | | | | | | | | - 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
* lit: Add --param NAME=VALUE option, for test suite specific use (to communicateDaniel Dunbar2009-11-05
| | | | | | 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
* lit: Update Clang's test style to use XFAIL: and XTARGET: lines that matchDaniel Dunbar2009-11-03
| | | | | | LLVM's tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85882 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: Add --config-prefix option, to override default config file names.Daniel Dunbar2009-10-25
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85035 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: Allow use of /dev/null in redirects on Windows (replace by a temporaryDaniel Dunbar2009-10-25
| | | | | | file). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85028 91177308-0d34-0410-b5e6-96231b3b80d8
* Delete a spurious semicolon.Dan Gohman2009-10-24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85018 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: Support '>>' redirections when executing scripts internally.Daniel Dunbar2009-10-24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85014 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: When running Tcl scripts via shell, try harder to find 'bash', but fallDaniel Dunbar2009-10-19
| | | | | | 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
* Support GoogleTest's "typed tests"Jeffrey Yasskin2009-10-18
| | | | | | | | | | | (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
* Don't traverse into .svn directories.Daniel Dunbar2009-09-28
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82978 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: When executing shell scripts internally, don't allow piped stderr on anyDaniel Dunbar2009-09-22
| | | | | | | 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
* Add a magic LLVM_DISABLE_CRT_DEBUG environment variable which we check in ↵Daniel Dunbar2009-09-22
| | | | | | | | 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
* Actually use the arguments with the resolved executable path.Daniel Dunbar2009-09-22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82527 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: Don't use close_fds=True on Windows.Daniel Dunbar2009-09-22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82521 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: When executing commands internally, perform PATH resolution ourselves.Daniel Dunbar2009-09-22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82520 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: Add a custom test format for use in clang.Daniel Dunbar2009-09-16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81987 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: When finding nested test suites, check first in the execpath in case thereDaniel Dunbar2009-09-15
| | | | | | is a site configuration. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81902 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: Give test formats control over test discovery.Daniel Dunbar2009-09-14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81751 91177308-0d34-0410-b5e6-96231b3b80d8
* tests: Add a %abs_tmp substitution which is guaranteed to be a full path.Daniel Dunbar2009-09-13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81662 91177308-0d34-0410-b5e6-96231b3b80d8
* Count test correctly with -q.Daniel Dunbar2009-09-09
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81313 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix another refactoro.Daniel Dunbar2009-09-09
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81312 91177308-0d34-0410-b5e6-96231b3b80d8
* lit needs bash for tcl-as-sh execution, we use set -o pipefail.Daniel Dunbar2009-09-08
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81197 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix typo that worked on python 2.6.Daniel Dunbar2009-09-08
| | | | | | Also, fix unit tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81194 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a refactoro.Daniel Dunbar2009-09-08
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81192 91177308-0d34-0410-b5e6-96231b3b80d8
* Add 'lit' testing tool.Daniel Dunbar2009-09-08
- 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