riscv-non-isa/riscv-arch-test

Trying to run just rv64/F does not pickup RV32/F tests?

InspireSemi opened this issue · 8 comments

When running just the F extension for RV64, I thought that it should also pick up the RV32/F tests. All it does is runt he test cases in RV64i_m/F dir.

Am I missing something?

riscof run --config ./config.ini --suite ./riscv-arch-test/riscv-test-suite/rv64i_m/F --env ./riscv-arch-test/riscv-test-suite/env

Same question for D extension..

pawks commented

The fault is in this argument of the command: --suite ./riscv-arch-test/riscv-test-suite/rv64i_m/F. The suite argument controls the root directory for the suite for the riscof run. So riscof will not discover any tests outside of those directories. In order to select the appropriate tests you will have to give the argument as --suite ./riscv-arch-test/riscv-test-suite/. Note that the directory organisation in the repo is not intended to allow filtering of tests. Its merely cosmetic and to enable easier maintenance. The filtering is always best left to riscof rather than use manual intervention to get the desired result.

pawks commented

How can I run just the F or D test cases for rv64 then. For all the others in you can specify on the cmdline what you want to test.

Ideally, the way to do that is to use a custom database yaml with just the required tests in it. Alternatively, you can create another directory containing symlinks to all the 4 directories(RV32F,RV32D, RV64F & RV64D) and pass that directory path to the suite argument.