From 0904f090911d29b8d41342247aea26a56dbc040a Mon Sep 17 00:00:00 2001
From: Misha Brukman
In addition for testing correctness, the llvm-test directory also performs timing tests of various LLVM optimizations. It also records @@ -220,16 +221,16 @@ programs with multiple source files. Large benchmarks and whole applications go here.
The External directory contains Makefiles for building code that is -external to (i.e. not distributed with) LLVM. The most prominent member -of this directory is the SPEC 2000 benchmark suite. The presence and +
The External directory contains Makefiles for building code that is external +to (i.e., not distributed with) LLVM. The most prominent members of this +directory are the SPEC 95 and SPEC 2000 benchmark suites. The presence and location of these external programs is configured by the llvm-test configure script.
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.
+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.
The LLVM test suite is partially driven by QMTest and partially -driven by GNU Make. Specifically, the Features and Regression tests -are all driven by QMTest. The llvm-test module is currently -driven by a set of Makefiles.
+The LLVM test suite is partially driven by QMTest and partially driven by GNU +Make. Specifically, the Features and Regression tests are all driven by QMTest. +The llvm-test module is currently driven by a set of Makefiles.
-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.
+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.
-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.
+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.
-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).
+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).
The QMTest namespace is currently composed of the following tests and test suites:
-These are the feature tests found in the Feature directory. -They are broken up into the following categories: -
+ +These are the feature tests found in the Feature directory. +They are broken up into the following categories:
+Assembler/Disassembler tests. These tests verify that a piece of LLVM @@ -297,7 +296,7 @@ creates a fake test hierarchy containing Feature.<testtype>.<testname>. 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. -
+These are the regression tests. There is one suite for each @@ -305,6 +304,7 @@ tests: assembler/disassembler, assembler, optimizer, machine code, and C code. there, you will need to modify, at least, the RegressionMap variable in QMTest/llvmdb.py so that QMTest knows how to run the tests in the new subdirectory.
+As mentioned previously, the llvm-test module provides three - types of tests: MultiSource, SingleSource, and External. Each tree is then - subdivided into several categories, including applications, benchmarks, - regression tests, code that is strange grammatically, etc. These - organizations should be relatively self explanatory.
+As mentioned previously, the llvm-test module provides three types +of tests: MultiSource, SingleSource, and External. Each tree is then subdivided +into several categories, including applications, benchmarks, regression tests, +code that is strange grammatically, etc. These organizations should be +relatively self explanatory.
-In addition to the regular "whole program" tests, the llvm-test - module also provides a mechanism for compiling the programs in different ways. - If the variable TEST is defined on the gmake command line, the test system will - include a Makefile named TEST.<value of TEST variable>.Makefile. - This Makefile can modify build rules to yield different results.
+In addition to the regular "whole program" tests, the llvm-test +module also provides a mechanism for compiling the programs in different ways. +If the variable TEST is defined on the gmake command line, the test system will +include a Makefile named TEST.<value of TEST variable>.Makefile. +This Makefile can modify build rules to yield different results.
-For example, the LLVM nightly tester uses TEST.nightly.Makefile to - create the nightly test reports. To run the nightly tests, run gmake - TEST=nightly.
+For example, the LLVM nightly tester uses TEST.nightly.Makefile to +create the nightly test reports. To run the nightly tests, run gmake +TEST=nightly.
-There are several TEST Makefiles available in the tree. Some of them are - designed for internal LLVM research and will not work outside of the LLVM - research group. They may still be valuable, however, as a guide to writing your - own TEST Makefile for any optimization or analysis passes that you develop with - LLVM.
+There are several TEST Makefiles available in the tree. Some of them are +designed for internal LLVM research and will not work outside of the LLVM +research group. They may still be valuable, however, as a guide to writing your +own TEST Makefile for any optimization or analysis passes that you develop with +LLVM.
The tests in llvm-test have no such feature as of this time. If -the test passes, only warnings and other miscellaneous output will be generated. -If a test fails, a large <program> FAILED message will be displayed. -This will help you separate benign warnings from actual test failures.
+The tests in llvm-test have no such feature as of this time. If the +test passes, only warnings and other miscellaneous output will be generated. If +a test fails, a large <program> FAILED message will be displayed. This +will help you separate benign warnings from actual test failures.
@@ -473,7 +473,6 @@ we'll link your page to the global tester page. Thanks! src="http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01!" /> John T. Criswell