diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 78aca022..c0510216 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -91,7 +91,8 @@ jobs: - bash: | # Build CoreMark without performance counter dump for co-simulation testing make -C ./examples/sw/benchmarks/coremark SUPPRESS_PCOUNT_DUMP=1 - displayName: Build CoreMark + make -C ./examples/sw/simple_system/pmp_smoke_test + displayName: Build tests for verilator co-simulation # Run Ibex RTL CI per supported configuration - template : ci/ibex-rtl-ci-steps.yml diff --git a/ci/ibex-rtl-ci-steps.yml b/ci/ibex-rtl-ci-steps.yml index bbcc6ca7..ede6b629 100644 --- a/ci/ibex-rtl-ci-steps.yml +++ b/ci/ibex-rtl-ci-steps.yml @@ -76,10 +76,27 @@ steps: exit 1 fi + echo "Running CoreMark" + build/lowrisc_ibex_ibex_simple_system_cosim_0/sim-verilator/Vibex_simple_system --meminit=ram,examples/sw/benchmarks/coremark/coremark.elf if [ $? != 0 ]; then echo -n "##vso[task.logissue type=error]" echo "Running CoreMark failed co-simulation testing" exit 1 fi - displayName: Run CoreMark for ${{ config }} + + echo "CoreMark succeeded" + + # Run pmp_exception_test if the config supports PMP + if ./util/ibex_config.py ${{ config }} query_fields PMPEnable | grep -q 'PMPEnable=1'; then + echo "Running pmp_exception_test" + build/lowrisc_ibex_ibex_simple_system_cosim_0/sim-verilator/Vibex_simple_system --meminit=ram,examples/sw/simple_system/pmp_exception_test/pmp_exception_test.elf + if [ $? != 0 ]; then + echo -n "##vso[task.logissue type=error]" + echo "Running pmp_exception_test failed co-simulation testing" + exit 1 + fi + else + echo "PMP not supported on ${{ config }}, skipping pmp_exception_test" + fi + displayName: Run Verilator co-sim tests for for ${{ config }}