scale.test
Class TestGen
java.lang.Object
scale.test.TestGen
public class TestGen
- extends java.lang.Object
This class generates makefiles to do regression testing.
$Id: TestGen.java,v 1.24 2007-10-04 19:58:40 burrill Exp $
Copyright 2008 by the
Scale Compiler Group,
Department of Computer Science
University of Massachusetts,
Amherst MA. 01003, USA
All Rights Reserved.
The following are the optional parameters for the program:
- t
- a list of tests to be performed/processed - see below.
- m
- Select one of
- make
- generate a makefile
- gather
- generate a script to gather the log files
- check
- generate a script for checking the log files
- cmd
- specify the makefile rule to use
- npfa
- specify to not use pure function annotations
Tests
Each test is specified as a triple in the form
n/optimization/benchmark. See below for the lists of allowed
optimizations and benchmarks. n is the alias analysis
level and must be 1, 2, 3.1, 3.2, 3.4, 3.8, 4, 5, 6.1, 6.2, 6.4, or
6.8. If any part of the triple is missing or is '*', all
possibilities are selected. If no item is specified, all 600 tests
are selected.
Allowed Optimizations
- scnrvud
- scpenrvud
- scpervud
- Scnrvud
- Scpenrvud
- Scpervud
Allowed Benchmarks
anagram |
applu |
apsi |
bc |
bisort |
compress95 |
fpppp |
ft |
gcc |
go |
health |
hydro2d |
impulse |
jpeg |
ks |
m88ksim |
mgrid |
mst |
perimeter |
perl |
power |
su2cor |
swim |
tomcatv |
treeadd |
tsp |
turb3d |
vortex |
wave5 |
xlisp |
yacr2 |
Mode
When a test is performed, it generates a log file in the test
directory. For example, the test 3/Scnruvd/bisort with the cmd parameter
set to "diff" generates a log file whose pathname is
$SCALE/$SCALERELEASE/$SCALEHOST/scale/test/tests/bisort/a3Scnruvd/diff.log
If the mode (-m) is set to gather, a script to collect the
generated log files is generated instead of the makefile that runs
the tests. If the mode is set to check, a script is generated that
scans each log file and trys to determine if the test succeeded.
If the -npfa switch is specified, the pathname for the log file is
$SCALE/$SCALERELEASE/$SCALEHOST/scale/test/tests/bisort/a3Scnruvd_npfa/diff.log
and the generated makefile does not define the environment variable
that specifies that annotations are to be used.
All three modes are not placed into one makefile file as the resultant makefile file
could be quite large.
Method Summary |
static void |
main(java.lang.String[] args)
|
protected void |
parseCmdLine(java.lang.String[] args,
CmdParam[] params)
Process the command line parameters. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
mode
protected CmdParam mode
cmd
protected CmdParam cmd
rc
protected CmdParam rc
what
protected CmdParam what
params
protected CmdParam[] params
C
public static final int C
- See Also:
- Constant Field Values
F77
public static final int F77
- See Also:
- Constant Field Values
JAVA
public static final int JAVA
- See Also:
- Constant Field Values
cube
protected boolean[][][] cube
plane
protected boolean[][] plane
vect
protected boolean[] vect
command
protected java.lang.String command
type
protected java.lang.String type
commandCnt
protected int commandCnt
benchmarks
protected java.lang.String[] benchmarks
AAL
protected java.lang.String[] AAL
opts
protected java.lang.String[] opts
backend
protected java.lang.String backend
nativetag
protected java.lang.String nativetag
doLte
protected boolean doLte
noPFA
protected boolean noPFA
TestGen
public TestGen()
main
public static void main(java.lang.String[] args)
parseCmdLine
protected void parseCmdLine(java.lang.String[] args,
CmdParam[] params)
- Process the command line parameters.
- Parameters:
args
- the array of command line parametersparams
- an array of allowed command line parameters