Keep Visual Studio up to date.
[oota-llvm.git] / docs / TestingGuide.html
index 5979d3ec8a26141111e35a70bd5351db7975253e..d2c3bd06637a1463f31921e18b2a523a184ecdc5 100644 (file)
@@ -112,11 +112,17 @@ or<br>
 <pre>
 % gmake check
 </pre>
-<p>To run only a subdirectory of tests in llvm/test using DejaGNU (ie. Regression/Transforms). Just substitute the path to the subdirectory:</p>
+
+<p>To run only a subdirectory of tests in llvm/test using DejaGNU (ie.
+Regression/Transforms), just set the TESTSUITE variable to the path of the
+subdirectory (relative to <tt>llvm/test</tt>):</p>
 <pre>
 % gmake -C llvm/test TESTSUITE=Regression/Transforms
 </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><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></p>
 
 <p>To run the comprehensive test suite (tests that compile and execute whole 
 programs), run the <tt>llvm-test</tt> tests:</p>
@@ -139,8 +145,8 @@ programs), run the <tt>llvm-test</tt> tests:</p>
 
 <p>The LLVM test suite contains two major categories of tests: code
 fragments and whole programs. Code fragments are in the <tt>llvm</tt> module
-under the directory under the <tt>llvm/test</tt> directory. The whole programs
-test suite are in the <tt>llvm-test</tt> module under the main directory.</p>
+under the <tt>llvm/test</tt> directory. The whole programs
+test suite is in the <tt>llvm-test</tt> module under the main directory.</p>
 
 </div>
 
@@ -284,7 +290,8 @@ file:</p>
 <p>There are a couple patterns within a <tt>RUN</tt> line that the
 llvm-runtest procedure looks for and replaces with the appropriate
 syntax:</p>
-<ul>
+
+<dl style="margin-left: 25px">
 <dt>%p</dt> 
 <dd>The path to the source directory. This is for locating
 any supporting files that are not generated by the test, but used by
@@ -302,9 +309,9 @@ located.</dd>
 <dd>Path to a script that performs grep -C. Use this since not all
 platforms support grep -C.</dd>
 
-<dt>%llvmgcc</dt> <dd>Full path to the llvmgcc executable.</dd>
-<dt>%llvmgxx</dt> <dd>Full path to the llvmg++ executable.</dd>
-</ul>
+<dt>%llvmgcc</dt> <dd>Full path to the llvm-gcc executable.</dd>
+<dt>%llvmgxx</dt> <dd>Full path to the llvm-g++ executable.</dd>
+</dl>
 
 <p>There are also several scripts in the llvm/test/Scripts directory
 that you might find useful when writing <tt>RUN</tt> lines.</p>
@@ -393,8 +400,8 @@ test suite creates temporary files during execution.</p>
 tests. By default, it will run all of these tests.</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, use the
-TESTSUITE variable.
+command line in <tt>llvm/test</tt>.  To run a specific directory of tests, use
+the TESTSUITE variable.
 </p>
 
 <p>For example, to run the Regression tests, type 
@@ -419,7 +426,7 @@ directory to run them.</p>
     properly configured.</li>
     <li>Use the <tt>configure</tt> script found in the <tt>llvm-test</tt> source
     directory:<br/>
-    <tt>$BUILD_SRC_DIR/configure --with-llvmsrc=$LLVM_SRC_ROOT --with-llvmobj=$LLVM_OBJ_ROOT</tt>
+    <tt>$LLVM_SRC_ROOT/projects/llvm-test/configure --with-llvmsrc=$LLVM_SRC_ROOT --with-llvmobj=$LLVM_OBJ_ROOT</tt>
     </li>
   </ol>
   <li>gmake</li>
@@ -447,7 +454,7 @@ 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>
 
-<p>The tests in <tt>llvm-test</tt> have no such feature as of this time. If the
+<p>The tests in <tt>llvm-test</tt> have no such feature at this time. If the
 test passes, only warnings and other miscellaneous output will be generated.  If
 a test fails, a large &lt;program&gt; FAILED message will be displayed.  This
 will help you separate benign warnings from actual test failures.</p>
@@ -467,18 +474,21 @@ program test (described above), run  all of the feature and regression tests,
 and then delete the checked out tree.  This tester is designed to ensure that 
 programs don't break as well as keep track of LLVM's progress over time.</p>
 
-<p>
-If you'd like to set up an instance of the nightly tester to run on your 
-machine, take a look at the comments at the top of the utils/NightlyTester.pl
-file.  We usually run it from a crontab entry that looks ilke this:
-</p>
+<p>If you'd like to set up an instance of the nightly tester to run on your
+machine, take a look at the comments at the top of the
+<tt>utils/NightlyTester.pl</tt> file.  We usually run it from a crontab entry
+that looks ilke this:</p>
 
+<div class="doc_code">
 <pre>
-5 3 * * *  $HOME/llvm/utils/NightlyTest.pl -parallel -enable-linscan ...CVSREPOSTORY... $HOME/buildtest-X86 $HOME/cvs/testresults-X86
+5 3 * * *  $HOME/llvm/utils/NightlyTest.pl -parallel $CVSROOT $HOME/buildtest-X86 $HOME/cvs/testresults-X86
 </pre>
+</div>
 
 <p>Or, you can create a shell script to encapsulate the running of the script.
-The optimized x86 Linux nightly test is run from just such a script:
+The optimized x86 Linux nightly test is run from just such a script:</p>
+
+<div class="doc_code">
 <pre>
 #!/bin/bash
 BASE=/proj/work/llvm/nightlytest
@@ -490,15 +500,15 @@ export PATH=/proj/install/bin:$LLVMGCCDIR/bin:$PATH
 export LD_LIBRARY_PATH=/proj/install/lib
 cd $BASE
 cp /proj/work/llvm/llvm/utils/NightlyTest.pl .
-nice ./NightlyTest.pl -nice -release -verbose -parallel -enable-linscan -noexternals
+nice ./NightlyTest.pl -nice -release -verbose -parallel -enable-linscan -noexternals 2&gt;&amp;1 &gt; output.log
+mail -s 'X86 nightly tester results' <a href="http://mail.cs.uiuc.edu/mailman/listinfo/llvm-testresults">llvm-testresults@cs.uiuc.edu</a> &lt; output.log
 </pre>
+</div>
+
+<p>Take a look at the <tt>NightlyTest.pl</tt> file to see what all of the flags
+and strings do.  If you start running the nightly tests, please let us know and
+we'll link your page to the global tester page.  Thanks!</p>
 
-<p>
-Take a look at the NightlyTest.pl file to see what all of the flags and 
-strings do.  If you start running the nightly tests, please let us know and 
-we'll link your page to the global tester page.  Thanks!
-</p>
-      
 </div>
 
 <!-- *********************************************************************** -->
@@ -510,7 +520,7 @@ we'll link your page to the global tester page.  Thanks!
   <a href="http://validator.w3.org/check/referer"><img
   src="http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01!" /></a>
 
-  John T. Criswell<br>
+  John T. Criswell, Reid Spencer, and Tanya Lattner<br>
   <a href="http://llvm.cs.uiuc.edu">The LLVM Compiler Infrastructure</a><br/>
   Last modified: $Date$
 </address>