rv32emu-legacy
rv32emu-legacy copied to clipboard
Integrate rv32i conformance tests
I have modified the simulator which is compatible with the riscv-compliance tests procedure.
Again, use git rebase -i to rework the commits. Minimize the changes and ensure fully corresponding to conformance tests as the subject claimed.
Remove compressed instruction related commits in this pull request.
Can you rebase upstream/master again?
Any progress?
Sorry, I finished it but didn't push up. I changed the flow of the conformance test, which was better. No need for the operation of copying any more.
$ make RISCV_PREFIX=riscv-none-embed- RISCV_DEVICE=rv32i TARGET_SIM=/abs/to/emu-rv32i RISCV_TARGET=rv32emu TARGETDIR=/abs/to/riscv-target variant
...
make[1]: Leaving directory '/path/to/riscv-compliance/riscv-test-suite/rv32i'
riscv-test-env/verify.sh
Compare to reference files ...
Check comb ... OK
Check I-ADD-01 ... OK
Check I-ADDI-01 ... OK
Check I-AND-01 ... OK
Check I-ANDI-01 ... OK
Check I-AUIPC-01 ... OK
Check I-BEQ-01 ... OK
Check I-BGE-01 ... OK
Check I-BGEU-01 ... OK
Check I-BLT-01 ... OK
Check I-BLTU-01 ... OK
Check I-BNE-01 ... OK
Check I-DELAY_SLOTS-01 ... OK
Check I-EBREAK-01 ... OK
Check I-ECALL-01 ... OK
Check I-ENDIANESS-01 ... OK
Check I-IO ... OK
Check I-JAL-01 ... OK
Check I-JALR-01 ... OK
Check I-LB-01 ... OK
Check I-LBU-01 ... OK
Check I-LH-01 ... OK
Check I-LHU-01 ... OK
Check I-LUI-01 ... OK
Check I-LW-01 ... OK
Check I-MISALIGN_JMP-01 ... OK
Check I-MISALIGN_LDST-01 ... OK
Check I-NOP-01 ... OK
Check I-OR-01 ... OK
Check I-ORI-01 ... OK
Check I-RF_size-01 ... OK
Check I-RF_width-01 ... OK
Check I-RF_x0-01 ... OK
Check I-SB-01 ... OK
Check I-SH-01 ... OK
Check I-SLL-01 ... OK
Check I-SLLI-01 ... OK
Check I-SLT-01 ... OK
Check I-SLTI-01 ... OK
Check I-SLTIU-01 ... OK
Check I-SLTU-01 ... OK
Check I-SRA-01 ... OK
Check I-SRAI-01 ... OK
Check I-SRL-01 ... OK
Check I-SRLI-01 ... OK
Check I-SUB-01 ... OK
Check I-SW-01 ... OK
Check I-XOR-01 ... OK
Check I-XORI-01 ... OK
--------------------------------
OK: 49/49
any progress?
Sorry, It's been a while for not updating this PR. Except I will delete the CSR.h file which is not necessary for this conformance test. My integrity of conformance tests is doing right? After this, I want to output a detailed log file the same as other simulators.
Sorry, It's been a while for not updating this PR. Except I will delete the CSR.h file which is not necessary for this conformance test. My integrity of conformance tests is doing right? After this, I want to output a detailed log file the same as other simulators.
So far, your changes work out-of-box except the inconsistency I mentioned earlier.