riscv-ctg
riscv-ctg copied to clipboard
Generate fld, fsd, fsw, flw tests report error
Hello, when I use riscv-ctg to generate tests, there is a problem that fld,fsd,fsw,flw cannot generate tests. The specific error log is 'TEST_ STORE_ F 'and' TEST_ LOAD_F' Missing a parameter . for example: error:macro "TEST_STORE_F" pass 12 arguments, but takes just 11. What additional parameters are required for this error, thanks! And, when I try to generate RV64i_ B During the test, bclr,bclri,bext,binv,binvi,bset,bseti will report an error: xlenlim is not defined. clz, clzw, cpop,cpopw....will report an error: object of type 'int' has no len() Do you have any of these problems?Looking forward to answering, thanks!
can you run riscv_ctg --version
and let me know what version you are using ? make sure you are on version 0.10.0.
Also please share the exact command with arguments that leads to the above errors.
The TEST_STORE_F
macro in arch_test.h
on the latest master has 12 arguments. The error might be that you are using an outdated arch_test.h
while compiling or the arch_test.h
in the generated directory is not recent. Copying of arch_test.h
is skipped if a file already exists in the generation directory. Please try generating the tests in a clean directory.
Thanks. When I updated ctg to the latest version, I saw that arch test. h has been updated. The problem of TEST_ STORT_ F has also been solved, But use the command:riscv_ctg -v debug -d ./tests/ -r -cf ./sample_cgfs/dataset.cgf -cf ./sample_cgfs/rv64i_b.cgf -bi rv64i -p2
,The above problems still exist.
-
bclr,bclri,bext,binv,binvi,bset,bseti will report an error: xlenlim is not defined.
-
clz, clzw, cpop,cpopw....will report an error: object of type 'int' has no len()
And,when I generate F/D tests, logs will appear:warning rs1_val_data not defined for xxx. Defaulting to [0]
. But it does not affect test generation. Does this warning affect?thanks!
The warning is inconsequential for the tests at this moment due to the nature of the coverpoints. Complete coverage can be achieved even though the domain for the solver is set to [0]
because the solver is currently skipped for those instructions.