mirror of
https://github.com/openhwgroup/cva6.git
synced 2025-04-20 04:07:36 -04:00
216 lines
5.9 KiB
YAML
216 lines
5.9 KiB
YAML
language: cpp
|
|
# run on new infrastructure
|
|
sudo: false
|
|
cache:
|
|
apt: true
|
|
directories:
|
|
$RISCV
|
|
$VERILATOR_ROOT
|
|
timeout: 1000
|
|
|
|
# required packages to install
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- gcc-7
|
|
- g++-7
|
|
- gperf
|
|
- autoconf
|
|
- automake
|
|
- autotools-dev
|
|
- libmpc-dev
|
|
- libmpfr-dev
|
|
- libgmp-dev
|
|
- gawk
|
|
- build-essential
|
|
- bison
|
|
- flex
|
|
- texinfo
|
|
- python-pexpect
|
|
- libusb-1.0-0-dev
|
|
- default-jdk
|
|
- zlib1g-dev
|
|
- valgrind
|
|
env:
|
|
global:
|
|
- RISCV="/home/travis/riscv_install"
|
|
- VERILATOR_ROOT="/home/travis/verilator-4.014/"
|
|
|
|
branches:
|
|
only:
|
|
- master
|
|
- ariane-dev
|
|
|
|
before_install:
|
|
- export CXX=g++-7 CC=gcc-7
|
|
# setup dependent paths
|
|
- export PATH=$RISCV/bin:$VERILATOR_ROOT/bin:$PATH
|
|
- export LIBRARY_PATH=$RISCV/lib
|
|
- export LD_LIBRARY_PATH=$RISCV/lib
|
|
- export C_INCLUDE_PATH=$RISCV/include:$VERILATOR_ROOT/include
|
|
- export CPLUS_INCLUDE_PATH=$RISCV/include:$VERILATOR_ROOT/include
|
|
# number of parallel jobs to use for make commands and simulation
|
|
- export NUM_JOBS=4
|
|
- ci/make-tmp.sh
|
|
- git submodule update --init --recursive
|
|
|
|
stages:
|
|
- checkout
|
|
- compile1
|
|
- compile2
|
|
- test
|
|
|
|
jobs:
|
|
include:
|
|
- stage: checkout
|
|
name: checkout gcc
|
|
script:
|
|
- ci/build-riscv-gcc.sh 0
|
|
- stage: compile1
|
|
name: build gcc
|
|
script:
|
|
- ci/build-riscv-gcc.sh 1
|
|
- rm -rf $RISCV/riscv-gnu-toolchain
|
|
- stage: compile2
|
|
name: build tools
|
|
script:
|
|
- ci/install-fesvr.sh
|
|
- ci/install-verilator.sh
|
|
- ci/install-dtc.sh
|
|
- ci/install-spike.sh
|
|
|
|
- stage: test
|
|
name: run riscv benchmarks (Write-Back Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- make -j${NUM_JOBS} run-benchmarks-verilator defines=WB_DCACHE
|
|
|
|
# asm tests
|
|
# rv64ui-v-* tests
|
|
- stage: test
|
|
name: run asm tests1 (Write-Back Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- make -j${NUM_JOBS} run-asm-tests1-verilator defines=WB_DCACHE
|
|
|
|
- stage: test
|
|
name: run asm tests2 (Write-Back Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- make -j${NUM_JOBS} run-asm-tests2-verilator defines=WB_DCACHE
|
|
# rv64ui-p-* tests
|
|
- stage: test
|
|
name: run asm tests3 (Write-Back Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- make -j${NUM_JOBS} run-asm-tests3-verilator defines=WB_DCACHE
|
|
- stage: test
|
|
name: run asm tests4 (Write-Back Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- make -j${NUM_JOBS} run-asm-tests4-verilator defines=WB_DCACHE
|
|
# rv64mi-p-* tests
|
|
- stage: test
|
|
name: run asm tests5 (Write-Back Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- make -j${NUM_JOBS} run-asm-tests5-verilator defines=WB_DCACHE
|
|
# rv64-* other tests
|
|
- stage: test
|
|
name: run asm tests6 (Write-Back Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- make -j${NUM_JOBS} run-asm-tests6-verilator defines=WB_DCACHE
|
|
|
|
# rv64um-*-* tests
|
|
- stage: test
|
|
name: run mul tests (Write-Back Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- make -j${NUM_JOBS} run-mul-verilator defines=WB_DCACHE
|
|
|
|
# amo tests
|
|
# rv64ua-v-* tests
|
|
- stage: test
|
|
name: run amo tests1 (Write-Back Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- travis_wait 60 make -j${NUM_JOBS} run-amo-tests1-verilator defines=WB_DCACHE
|
|
- stage: test
|
|
name: run amo tests2 (Write-Back Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- travis_wait 60 make -j${NUM_JOBS} run-amo-tests2-verilator defines=WB_DCACHE
|
|
# rv64ua-p-* tests
|
|
- stage: test
|
|
name: run amo tests3 (Write-Back Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- make -j${NUM_JOBS} run-amo-tests3-verilator defines=WB_DCACHE
|
|
|
|
- stage: test
|
|
name: run riscv benchmarks (Write-through Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- make -j${NUM_JOBS} run-benchmarks-verilator defines=WT_DCACHE
|
|
|
|
# asm tests
|
|
# rv64ui-v-* tests
|
|
- stage: test
|
|
name: run asm tests1 (Write-through Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- make -j${NUM_JOBS} run-asm-tests1-verilator defines=WT_DCACHE
|
|
|
|
- stage: test
|
|
name: run asm tests2 (Write-through Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- make -j${NUM_JOBS} run-asm-tests2-verilator defines=WT_DCACHE
|
|
# rv64ui-p-* tests
|
|
- stage: test
|
|
name: run asm tests3 (Write-through Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- make -j${NUM_JOBS} run-asm-tests3-verilator defines=WT_DCACHE
|
|
- stage: test
|
|
name: run asm tests4 (Write-through Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- make -j${NUM_JOBS} run-asm-tests4-verilator defines=WT_DCACHE
|
|
# rv64mi-p-* tests
|
|
- stage: test
|
|
name: run asm tests5 (Write-through Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- make -j${NUM_JOBS} run-asm-tests5-verilator defines=WT_DCACHE
|
|
# rv64-* other tests
|
|
- stage: test
|
|
name: run asm tests6 (Write-through Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- make -j${NUM_JOBS} run-asm-tests6-verilator defines=WT_DCACHE
|
|
|
|
# amo tests
|
|
# rv64ua-v-* tests
|
|
- stage: test
|
|
name: run amo tests1 (Write-through Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- make -j${NUM_JOBS} run-amo-tests1-verilator defines=WT_DCACHE
|
|
- stage: test
|
|
name: run amo tests2 (Write-through Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- make -j${NUM_JOBS} run-amo-tests2-verilator defines=WT_DCACHE
|
|
# rv64ua-p-* tests
|
|
- stage: test
|
|
name: run amo tests3 (Write-through Cache)
|
|
script:
|
|
- ci/build-riscv-tests.sh
|
|
- make -j${NUM_JOBS} run-amo-tests3-verilator defines=WT_DCACHE
|
|
|
|
# extra time during long builds
|
|
install: travis_wait
|