1
0
Fork 0
mirror of https://github.com/YosysHQ/picorv32.git synced 2025-01-03 03:43:38 -05:00
picorv32/scripts/torture/test.sh
2016-04-08 22:28:30 +02:00

28 lines
622 B
Bash

#!/bin/bash
set -ex
## Generate test case
if ! test -f test.S; then
cd riscv-torture
./sbt generator/run
cp output/test.S ../test.S
cd ..
fi
## Compile test case and create reference
riscv32-unknown-elf-gcc -m32 -march=RV32IC -ffreestanding -nostdlib -Wl,-Bstatic,-T,sections.lds -o test.elf test.S
LD_LIBRARY_PATH="./riscv-isa-sim:./riscv-fesvr" ./riscv-isa-sim/spike test.elf > test.ref
riscv32-unknown-elf-objcopy -O binary test.elf test.bin
python3 ../../firmware/makehex.py test.bin 4096 > test.hex
## Run test
iverilog -o test.vvp testbench.v ../../picorv32.v
vvp test.vvp +hex=test.hex +ref=test.ref