blob: 2831f5cf9af229f0a48a09f44132f7819c6283e8 [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.]+)/) {
$Time = sprintf("%7.3f", $1*60.0+$2);
}
return $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_LSRatio {
my ($Cols, $Col) = @_;
my $GCC = $Cols->[$Col-8];
my $LLC_LS = $Cols->[$Col-5];
if ($GCC ne "*" and $LLC_LS ne "*" and $LLC_LS != "0") {
return sprintf("%3.2f", $GCC/$LLC_LS);
} 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]+)'],
["Instrs" , 'TEST-RESULT-compile: *([0-9]+).*Number of inst'],
["LLC<br>compile" , "TEST-RESULT-llc: $WallTimeRE"],
["LLC-LS<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: real\s*([.0-9m:]+)', \&FormatTime],
["CBE" , 'TEST-RESULT-cbe-time: real\s*([.0-9m:]+)', \&FormatTime],
["LLC" , 'TEST-RESULT-llc-time: real\s*([.0-9m:]+)', \&FormatTime],
["LLC-LS" , 'TEST-RESULT-llc-ls-time: real\s*([.0-9m:]+)', \&FormatTime],
["JIT" , 'TEST-RESULT-jit-time: real\s*([.0-9m:]+)', \&FormatTime],
["JIT-LS" , 'TEST-RESULT-jit-ls-time: real\s*([.0-9m:]+)', \&FormatTime],
["GCC/CBE" , \&GCCCBERatio],
["GCC/LLC" , \&GCCLLCRatio],
["GCC/LLC-LS" , \&GCCLLC_LSRatio]
);