blob: fed8cea33631cc9a85030476c815738d96fd7680 [file] [log] [blame]
##=== TEST.nightly.report - Report description for nightly -----*- perl -*-===##
#
# This file defines a report to be generated for the nightly tests.
#
##===----------------------------------------------------------------------===##
# Sort by program name
$SortCol = 0;
$TrimRepeatedPrefix = 1;
my $WallTimeRE = "[A-Za-z0-9.: ]+\\(([0-9.]+) wall clock";
# FormatTime - Convert a time from 1m23.45 into 83.45
sub FormatTime {
my $Time = shift;
if ($Time =~ m/([0-9]+)[m:]([0-9.]+)/) {
return sprintf("%7.3f", $1*60.0+$2);
}
return sprintf("%7.2f", $Time);
}
sub GCCCBERatio {
my ($Cols, $Col) = @_;
my $GCC = $Cols->[$Col-6];
my $CBE = $Cols->[$Col-5];
if ($GCC ne "*" and $CBE ne "*" and $CBE != "0") {
return sprintf("%3.2f", $GCC/$CBE);
} else {
return "n/a";
}
}
sub GCCLLCRatio {
my ($Cols, $Col) = @_;
my $GCC = $Cols->[$Col-7];
my $LLC = $Cols->[$Col-5];
if ($GCC ne "*" and $LLC ne "*" and $LLC != "0") {
return sprintf("%3.2f", $GCC/$LLC);
} else {
return "n/a";
}
}
sub GCCLLC_BETARatio {
my ($Cols, $Col) = @_;
my $GCC = $Cols->[$Col-8];
my $LLC_BETA = $Cols->[$Col-5];
if ($GCC ne "*" and $LLC_BETA ne "*" and $LLC_BETA != "0") {
return sprintf("%3.2f", $GCC/$LLC_BETA);
} else {
return "n/a";
}
}
# These are the columns for the report. The first entry is the header for the
# column, the second is the regex to use to match the value. Empty list create
# separators, and closures may be put in for custom processing.
(
# Name
["Program" , '\'([^\']+)\' Program'],
[],
# Times
["GCCAS" , "TEST-RESULT-compile: $WallTimeRE"],
["Bytecode" , 'TEST-RESULT-compile: *([0-9]+)'],
["LLC<br>compile" , "TEST-RESULT-llc: $WallTimeRE"],
["LLC-BETA<br>compile" , "TEST-RESULT-llc-ls: $WallTimeRE"],
["JIT<br>codegen" , "TEST-RESULT-jit-comptime: $WallTimeRE"],
["Machine<br>code", 'TEST-RESULT-jit-machcode: *([0-9]+).*bytes of machine code'],
[],
["GCC" , 'TEST-RESULT-nat-time: program\s*([.0-9m:]+)', \&FormatTime],
["CBE" , 'TEST-RESULT-cbe-time: program\s*([.0-9m:]+)', \&FormatTime],
["LLC" , 'TEST-RESULT-llc-time: program\s*([.0-9m:]+)', \&FormatTime],
["LLC-BETA" , 'TEST-RESULT-llc-ls-time: program\s*([.0-9m:]+)', \&FormatTime],
["JIT" , 'TEST-RESULT-jit-time: program\s*([.0-9m:]+)', \&FormatTime],
["JIT-BETA" , 'TEST-RESULT-jit-ls-time: program\s*([.0-9m:]+)', \&FormatTime],
["GCC/CBE" , \&GCCCBERatio],
["GCC/LLC" , \&GCCLLCRatio],
["GCC/LLC-BETA" , \&GCCLLC_BETARatio]
);