diff --git a/.github/scripts/riscv_dv_parse_testlist.py b/.github/scripts/riscv_dv_parse_testlist.py index 3f2ae2ae24f..be7825cdf47 100644 --- a/.github/scripts/riscv_dv_parse_testlist.py +++ b/.github/scripts/riscv_dv_parse_testlist.py @@ -1,4 +1,5 @@ import sys +import os from json import dumps from yaml import load, Loader from typing import Generator @@ -24,6 +25,16 @@ def parse_yaml(path: str) -> Generator[str, None, None]: else: testlist = parse_yaml(RISCV_DV_HOME + 'yaml/base_testlist.yaml') testlist = list(testlist) + # remove, will cause incomplete sim, need customized RTL testlist.remove("riscv_csr_test") + + # remove excluded tests + excluded = os.environ.get("EXCLUDE_TESTS", None) + if excluded is not None: + excluded = [s.strip() for s in excluded.split(",")] + for test in excluded: + if test in testlist: + testlist.remove(test) + print(dumps(testlist)) diff --git a/.github/workflows/test-riscv-dv.yml b/.github/workflows/test-riscv-dv.yml index ed548004063..13271d07c27 100644 --- a/.github/workflows/test-riscv-dv.yml +++ b/.github/workflows/test-riscv-dv.yml @@ -107,6 +107,8 @@ jobs: generate-config: name: Generate configs runs-on: ubuntu-latest + env: + EXCLUDE_TESTS: "riscv_illegal_instr_test,riscv_unaligned_load_store_test" outputs: test-types: ${{ steps.test-types.outputs.tests }} test-include-generate: ${{ steps.test-types.outputs.include-generate }}