| # Copyright lowRISC contributors. |
| # Licensed under the Apache License, Version 2.0, see LICENSE for details. |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| parameters: |
| rvc_test_suites: [] |
| |
| jobs: |
| - job: riscv_compliance_tests_${{ join('_', parameters.rvc_test_suites) }} |
| displayName: Execute RISC-V compliance tests for ${{ join(' ', parameters.rvc_test_suites) }} |
| pool: |
| vmImage: ubuntu-16.04 |
| dependsOn: |
| - top_earlgrey_verilator |
| - sw_build |
| steps: |
| - template: install-package-dependencies.yml |
| - template: download-artifacts-template.yml |
| - bash: | |
| set -x |
| sudo util/get-toolchain.py \ |
| --target-dir="${TOOLCHAIN_PATH}" \ |
| --release-version="${TOOLCHAIN_VERSION}" \ |
| --update |
| displayName: Install toolchain |
| - ${{ each test_suite in parameters.rvc_test_suites }}: |
| - bash: | |
| set -e |
| . util/build_consts.sh |
| export TARGET_SIM="$BIN_DIR/hw/top_earlgrey/Vtop_earlgrey_verilator" |
| export RISCV_DEVICE=rv32imc |
| export RISCV_TARGET=opentitan |
| export OT_BIN="$BIN_DIR" |
| export OT_TARGET=verilator |
| export OT_TOOLS="$TOOLCHAIN_PATH/bin" |
| cd sw/vendor/riscv_compliance |
| make RISCV_ISA=${{ test_suite }} |
| displayName: Execute ${{ test_suite }} |