1
0
rocket-chip/regression.sh
Palmer Dabbelt 3d2a4ffdd6 Add a "--master" flag to the regression script
I want to be able to test the master of riscv-gnu-toolchain against the current
RTL as part of the buildbot.  This flag takes a list of repositories (by their
submodule path) and updates those to the current master, which facilitates that
check.
2015-10-29 14:11:26 -07:00

53 lines
1.2 KiB
Bash
Executable File

#! /bin/bash
#
# See LICENSE for license details.
# Script to setup submodules, build rocket-chip, and run asm tests, and optionally run torture
set -ex
echo "Starting Rocket-chip regression test"
if [ $# -lt 1 ]
then
echo "Usage: ./regression.sh [options] config [torture_config] [torture_output_dir]"
echo " --master: A comma-seperated list of repositories to use the master of"
exit
fi
git submodule update --init --recursive riscv-tools
if [[ "$1" == "--master" ]]
then
echo $2 | sed 's/,/\n/g' | while read repo
do
(
cd $repo
git fetch
git checkout master
git log --oneline | head -n5
)
done
shift
shift
fi
export RISCV="$(pwd)/install"; export PATH=$PATH:$RISCV/bin
cd riscv-tools; ./build.sh; cd ..
git submodule update --init
git submodule status --recursive
cd emulator; make CONFIG=$1; make CONFIG=$1 run-asm-tests; cd ..
if [ $# -ge 2 ]
then
cd emulator; make CONFIG=$1 debug; cd ..
git clone git@github.com:ucb-bar/riscv-torture.git
cd riscv-torture; git submodule update --init;
if [ $# -eq 3 ]
then
make cnight RTL_CONFIG=$1 OPTIONS="-C $2 -p $3 -m 30 -t 10"
else
make cnight RTL_CONFIG=$1 OPTIONS="-C $2 -m 30 -t 10"
fi
fi