| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
mk/wordsize.mk and timeout/timeout get built automatically if necessary.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a fast version of the testsuite
The idea is to have a way to run as much of the testsuite as possible
in a short time, so that we'll run it more often (such as just before
checking in a change, for example). 'make fast' tries for good
coverage without using too many cycles. Currently it takes about 4
minutes on a fast machine with an optimised GHC build; I think this
might still be a little on the slow side.
When you say 'make fast' in testsuite/tests/ghc-regress, we run each
test only one way, and all of the long-running tests are omitted.
Also, to get the runtime down further, I arbitrarily omitted many of
the should_run tests (because these tend to take a lot longer than
should_compile or should_fail tests). I tried to keep a
representative few in each category.
|
|
|
|
| |
update
|
|
|
|
|
| |
Add a make variable COMPILER (default: ghc) to select a configuration file
from the config directory without have=ing to give a full path.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
More compiler_type support: added the option functions
omit_compiler_types(compilers)
skip this test for certain compilers
only_compiler_types(compilers)
do this test for certain compilers only
expect_fail_if_compiler_type(compiler)
expect failure from a certain compiler
and also use output files ending in -<compiler_type> if present.
|
|
|
|
| |
Testsuite cleaning.
|
|
|
|
|
| |
While I'm here, add docs for a couple of other pre-defined functions
which were missing.
|
|
|
|
| |
add mention of only_ways()
|
|
|
|
| |
Update following latest enhancements.
|
|
|
|
| |
Add some more notes, particularly on using ways, and mention the GHCi way.
|
|
|
|
| |
Add multimod_compile_fail
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Revamp the testsuite framework. The previous framework was an
experiment that got a little out of control - a whole new language
with an interpreter written in Haskell was rather heavyweight and left
us with a maintenance problem.
So the new test driver is written in Python. The downside is that you
need Python to run the testsuite, but we don't think that's too big a
problem since it only affects developers and Python installs pretty
easily onto everything these days.
Highlights:
- 790 lines of Python, vs. 5300 lines of Haskell + 720 lines of
<strange made-up language>.
- the framework supports running tests in various "ways", which should
catch more bugs. By default, each test is run in three ways:
normal, -O, and -O -fasm. Additionally, if profiling libraries
have been built, another way (-O -prof -auto-all) is added. I plan
to also add a 'GHCi' way.
Running tests multiple ways has already shown up some new bugs!
- documentation is in the README file and is somewhat improved.
- the framework is rather less GHC-specific, and could without much
difficulty be coaxed into using other compilers. Most of the
GHC-specificness is in a separate configuration file (config/ghc).
Things may need a while to settle down. Expect some unexpected
failures.
|
|
|
|
| |
Correct spurious instructions.
|
|
Add a README file, which explains how to run the testsuite, how to
update the expected output, and how to add new tests. It assimilates
the contents of tests/ghc-regress/HOW_TO_ADD_A_TEST, which has been
removed.
|