test that the 'ir' constraint works.
[oota-llvm.git] / utils / NewNightlyTest.pl
index 5e93ddd4869b5dd9d0996002f8865e3e46a3d0c1..956a952626e4fa4eaaf1a7e4d2aca00ccd39b1fd 100755 (executable)
@@ -29,7 +29,9 @@ use Socket;
 #  -nodejagnu       Do not run feature or regression tests
 #  -parallel        Run two parallel jobs with GNU Make.
 #  -release         Build an LLVM Release version
+#  -release-asserts Build an LLVM ReleaseAsserts version
 #  -enable-llcbeta  Enable testing of beta features in llc.
+#  -enable-lli      Enable testing of lli (interpreter) features, default is off
 #  -disable-llc     Disable LLC tests in the nightly tester.
 #  -disable-jit     Disable JIT tests in the nightly tester.
 #  -disable-cbe     Disable C backend tests in the nightly tester.
@@ -133,7 +135,13 @@ while (scalar(@ARGV) and ($_ = $ARGV[0], /^[-+]/)) {
   if (/^-parallel$/)       { $MAKEOPTS = "$MAKEOPTS -j2 -l3.0"; next; }
   if (/^-release$/)        { $MAKEOPTS = "$MAKEOPTS ENABLE_OPTIMIZED=1 ".
                              "OPTIMIZE_OPTION=-O2"; $BUILDTYPE="release"; next;}
+  if (/^-release-asserts$/){ $MAKEOPTS = "$MAKEOPTS ENABLE_OPTIMIZED=1 ".
+                             "DISABLE-ASSERTIONS=1 ".
+                             "OPTIMIZE_OPTION=-O2"; 
+                             $BUILDTYPE="release-asserts"; next;}
   if (/^-enable-llcbeta$/) { $PROGTESTOPTS .= " ENABLE_LLCBETA=1"; next; }
+  if (/^-enable-lli$/)     { $PROGTESTOPTS .= " ENABLE_LLI=1";
+                             $CONFIGUREARGS .= " --enable-lli"; next; } 
   if (/^-disable-llc$/)    { $PROGTESTOPTS .= " DISABLE_LLC=1";
                              $CONFIGUREARGS .= " --disable-llc_diffs"; next; } 
   if (/^-disable-jit$/)    { $PROGTESTOPTS .= " DISABLE_JIT=1";
@@ -206,7 +214,7 @@ if ($nickname eq "") {
        "\"-nickname <nickname>\"");
 }
 
-if ($BUILDTYPE ne "release") {
+if ($BUILDTYPE ne "release" && $BUILDTYPE ne "release-asserts") {
   $BUILDTYPE = "debug";
 }
 
@@ -385,9 +393,8 @@ sub GetDejagnuTestResults { # (filename, log)
         while ( <SRCHFILE> ) {
             if ( length($_) > 1 ) {
                 chomp($_);
-                if ( m/^PASS:/ || m/^XPASS:/ ||
-                     m/^FAIL:/ || m/^XFAIL:/) {
-                    push(@lines, "$_");
+                if ( m/^(PASS|XPASS|FAIL|XFAIL): .*\/llvm\/test\/(.*)$/ ) {
+                    push(@lines, "$1: test/$2");
                 }
             }
         }
@@ -658,6 +665,8 @@ if (!$BuildError) {
   $afiles.= `find tools/ -iname '*.a' -ls`;
   if($BUILDTYPE eq "release"){
     $afiles.= `find Release/ -iname '*.a' -ls`;
+  } elsif($BUILDTYPE eq "release-asserts") {
+   $afiles.= `find Release-Asserts/ -iname '*.a' -ls`;
   } else {
    $afiles.= `find Debug/ -iname '*.a' -ls`;
   }
@@ -667,6 +676,8 @@ if (!$BuildError) {
   $ofiles.= `find tools/ -iname '*.o' -ls`;
   if($BUILDTYPE eq "release"){
     $ofiles.= `find Release/ -iname '*.o' -ls`;
+  } elsif($BUILDTYPE eq "release-asserts") {
+    $ofiles.= `find Release-Asserts/ -iname '*.o' -ls`;
   } else {
     $ofiles.= `find Debug/ -iname '*.o' -ls`;
   }