mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-17 05:29:24 +00:00
Removed QMTest reference.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18641 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
d10bc6e0bb
commit
cc85da08f9
@ -23,7 +23,6 @@
|
||||
</li>
|
||||
<li><a href="#tree">LLVM Test Suite Tree</a></li>
|
||||
<li><a href="#dgstructure">DejaGNU Structure</a></li>
|
||||
<li><a href="#qmstructure">QMTest Structure</a></li>
|
||||
<li><a href="#progstructure"><tt>llvm-test</tt> Structure</a></li>
|
||||
<li><a href="#run">Running the LLVM Tests</a></li>
|
||||
<li><a href="#nightly">Running the nightly tester</a></li>
|
||||
@ -60,18 +59,8 @@ required to build LLVM, plus the following:</p>
|
||||
<dd>The Feature and Regressions tests are organized and run by DejaGNU.</dd>
|
||||
<dt><a href="http://expect.nist.gov/">Expect</a></dt>
|
||||
<dd>Expect is required by DejaGNU.</dd>
|
||||
<dt>tclsh</dt>
|
||||
<dd>Tclsh is required by DejaGNU. </dd>
|
||||
|
||||
<dt><a href="http://www.qmtest.com">QMTest</a></dt>
|
||||
<dd>The LLVM test suite uses QMTest to organize and run tests. <b>Note:
|
||||
you will need <a href="http://llvm.cs.uiuc.edu/qm-2.0.3.tar.gz">QMTest
|
||||
2.0.3 (source tar.gz file)</a> to be successful. The tests do not run with
|
||||
any other version.</b> (optional, required only for QMTest)</dd>
|
||||
|
||||
<dt><a href="http://www.python.org">Python</a></dt>
|
||||
<dd>You will need a Python interpreter that works with QMTest. Python will
|
||||
need zlib and SAX support enabled. (optional, required only for QMTest) </dd>
|
||||
<dt><a href="http://www.tcl.tk/software/tcltk/">tcl</a></dt>
|
||||
<dd>Tcl is required by DejaGNU. </dd>
|
||||
|
||||
<dt><a href="http://www.netlib.org/f2c">F2C</a></dt>
|
||||
<dd>For now, LLVM does not have a Fortran front-end, but using F2C, we can run
|
||||
@ -129,24 +118,6 @@ or<br>
|
||||
</pre>
|
||||
<dd><b>Note: If you are running the tests with <tt>objdir != subdir</tt> you must have run the complete testsuite before you can specify a subdirectory.</b></dd>
|
||||
|
||||
<p>To run the simple tests (i.e. those that do basic testing of
|
||||
LLVM), using QMTest:</p>
|
||||
<pre>
|
||||
% gmake -C llvm/test qmtest
|
||||
</pre>
|
||||
|
||||
<p>To run only the basic feature tests, QMTest supports the following
|
||||
target:</p>
|
||||
<pre>
|
||||
% gmake -C llvm/test Feature.t
|
||||
</pre>
|
||||
|
||||
<p>To run only the regression tests, QMTest supports the following
|
||||
target:</p>
|
||||
<pre>
|
||||
% gmake -C llvm/test Regression.t
|
||||
</pre>
|
||||
|
||||
<p>To run the comprehensive test suite (tests that compile and execute whole
|
||||
programs), run the <tt>llvm-test</tt> tests:</p>
|
||||
|
||||
@ -270,11 +241,6 @@ directory are the SPEC 95 and SPEC 2000 benchmark suites. The presence and
|
||||
location of these external programs is configured by the llvm-test
|
||||
<tt>configure</tt> script.</p></li>
|
||||
|
||||
<li><tt>llvm/test/QMTest</tt>
|
||||
<p>This directory contains the QMTest information files. Inside this directory
|
||||
are QMTest administration files and the Python code that implements the LLVM
|
||||
test and database classes.</p></li>
|
||||
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
@ -285,7 +251,7 @@ test and database classes.</p></li>
|
||||
<div class="doc_text">
|
||||
<p>The LLVM test suite is partially driven by DejaGNU and partially
|
||||
driven by GNU Make. Specifically, the Features and Regression tests
|
||||
are all driven by DejaGNU (and optionally QMTest). The llvm-test
|
||||
are all driven by DejaGNU. The llvm-test
|
||||
module is currently driven by a set of Makefiles.</p>
|
||||
|
||||
<p>The DejaGNU structure is very simple, but does require some
|
||||
@ -355,78 +321,6 @@ machine. You can use * to match all targets. Here is an example of an
|
||||
|
||||
</div>
|
||||
|
||||
<!--=========================================================================-->
|
||||
<div class="doc_section"><a name="qmstructure">QMTest Structure</a></div>
|
||||
<!--=========================================================================-->
|
||||
|
||||
<div class="doc_text">
|
||||
|
||||
<p>The Feature and Regression tests can also be run using QMTest.</p>
|
||||
|
||||
<p>The QMTest system needs to have several pieces of information available;
|
||||
these pieces of configuration information are known collectively as the
|
||||
"context" in QMTest parlance. Since the context for LLVM is relatively large,
|
||||
the master Makefile in llvm/test sets it for you.</p>
|
||||
|
||||
<p>The LLVM database class makes the subdirectories of llvm/test a QMTest test
|
||||
database. For each directory that contains tests driven by QMTest, it knows
|
||||
what type of test the source file is and how to run it.</p>
|
||||
|
||||
<p>Hence, the QMTest namespace is essentially what you see in the Feature and
|
||||
Regression directories, but there is some magic that the database class performs
|
||||
(as described below).</p>
|
||||
|
||||
<p>The QMTest namespace is currently composed of the following tests and test
|
||||
suites:</p>
|
||||
|
||||
<ul>
|
||||
<li>Feature
|
||||
|
||||
<p>These are the feature tests found in the Feature directory.
|
||||
They are broken up into the following categories:</p>
|
||||
|
||||
<ul>
|
||||
<li>ad
|
||||
<p>Assembler/Disassembler tests. These tests verify that a piece of LLVM
|
||||
assembly language can be assembled into bytecode and then disassembled
|
||||
into the original assembly language code. It does this several times to
|
||||
ensure that assembled output can be disassembled and disassembler output
|
||||
can be assembled. It also verifies that the give assembly language file
|
||||
can be assembled correctly.</p></li>
|
||||
|
||||
<li>opt
|
||||
<p>Optimizer tests. These tests verify that two of the optimizer passes
|
||||
completely optimize a program (i.e. after a single pass, they cannot
|
||||
optimize a program any further).</p></li>
|
||||
|
||||
<li>mc
|
||||
<p> Machine code tests. These tests verify that the LLVM assembly
|
||||
language file can be translated into native assembly code.</p></li>
|
||||
|
||||
<li>cc
|
||||
<p>C code tests. These tests verify that the specified LLVM assembly
|
||||
code can be converted into C source code using the C backend.</p></li>
|
||||
</ul>
|
||||
|
||||
<p>The LLVM database class looks at every file in the Feature directory and
|
||||
creates a fake test hierarchy containing
|
||||
<tt>Feature.<testtype>.<testname></tt>. So, if you add an LLVM
|
||||
assembly language file to the Feature directory, it actually creates 5 new
|
||||
tests: assembler/disassembler, assembler, optimizer, machine code, and C code.
|
||||
</p></li>
|
||||
|
||||
<li>Regression
|
||||
<p>These are the regression tests. There is one suite for each
|
||||
subdirectory of the Regression directory. If you add a new subdirectory
|
||||
there, you will need to modify, at least, the <tt>RegressionMap</tt>
|
||||
variable in <tt>QMTest/llvmdb.py</tt> so that QMTest knows how to run the
|
||||
tests in the new subdirectory.</p>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
|
||||
<!--=========================================================================-->
|
||||
<div class="doc_section"><a name="progstructure"><tt>llvm-test</tt>
|
||||
Structure</a></div>
|
||||
@ -494,18 +388,18 @@ specify the following configuration options:</p>
|
||||
<i>are not</i> executed inside of the LLVM source tree. This is because the
|
||||
test suite creates temporary files during execution.</p>
|
||||
|
||||
<p>The master Makefile in llvm/test is capable of running only the QMTest driven
|
||||
<p>The master Makefile in llvm/test is capable of running only the DejaGNU driven
|
||||
tests. By default, it will run all of these tests.</p>
|
||||
|
||||
<p>To run only the QMTest driven tests, run <tt>gmake qmtest</tt> at the
|
||||
command line in llvm/tests. To run a specific qmtest, suffix the test name with
|
||||
".t" when running gmake.</p>
|
||||
<p>To run only the DejaGNU driven tests, run <tt>gmake</tt> at the
|
||||
command line in llvm/tests. To run a specific directory of tests, specify the TESTSUITE.
|
||||
</p>
|
||||
|
||||
<p>For example, to run the Regression.LLC tests, type
|
||||
<tt>gmake Regression.LLC.t</tt> in <tt>llvm/tests</tt>.</p>
|
||||
<p>For example, to run the Regression tests, type
|
||||
<tt>gmake TESTSUITE=Regression</tt> in <tt>llvm/tests</tt>.</p>
|
||||
|
||||
<p>Note that there are no Makefiles in <tt>llvm/test/Features</tt> and
|
||||
<tt>llvm/test/Regression</tt>. You must use QMTest from the <tt>llvm/test</tt>
|
||||
<tt>llvm/test/Regression</tt>. You must use DejaGNU from the <tt>llvm/test</tt>
|
||||
directory to run them.</p>
|
||||
|
||||
<p>To run the <tt>llvm-test</tt> suite, you need to use the following steps:
|
||||
@ -547,7 +441,7 @@ output and standard error. You can redirect these results to a file if you
|
||||
choose.</p>
|
||||
|
||||
<p>Some tests are known to fail. Some are bugs that we have not fixed yet;
|
||||
others are features that we haven't added yet (or may never add). In QMTest,
|
||||
others are features that we haven't added yet (or may never add). In DejaGNU,
|
||||
the result for such tests will be XFAIL (eXpected FAILure). In this way, you
|
||||
can tell the difference between an expected and unexpected failure.</p>
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user