The prebuilt binaries for rv32emu are prepared primarily because the RISC-V Sail Model executable is required for the RISC-V Architecture Test, and selected RISC-V ELF files are useful for ISA simulation validation and testing.
Some of these prebuilt binaries are stored in rv32emu-prebuilt.
During testing or benchmarking, these binaries are automatically downloaded into the build/linux-x86-softfp/
and build/riscv32/
directories by default.
The RISC-V binaries are compiled using the xPack RISC-V GCC toolchain with the options -march=rv32im -mabi=ilp32
.
The x86 binaries are compiled by GCC with -m32 -mno-sse -mno-sse2 -msoft-float
options and use ieeelib as the soft-fp library.
To fetch the prebuilt binaries manually, run:
$ make artifact
Or build the binaries from scratch (the RISC-V cross-compiler is required):
$ make artifact ENABLE_PREBUILT=0 [CROSS_COMPILE=<COMPILER_PREFIX>]
The compiler prefix varies according to the used toolchain, such as riscv-none-elf-
, riscv32-unknown-elf-
, etc.
The prebuilt binaries in rv32emu-prebuilt
are built from the following repositories and resources:
- ansibench
- coremark
- stream
- nbench
- rv8-bench
- aes
- dhrystone
- miniz
- norx
- primes
- qsort
- sha512
captcha
: See tests/captcha.cdonut
: See tests/donut.cdoom
: See sysprog21/doom_riscvfcalc
: See tests/fcalc.chamilton
: See tests/hamilton.cjit
: See tests/jit.clena
: See tests/lena.cline
: See tests/line.cmaj2random
: See tests/maj2random.cmandelbrot
: See tests/mandelbrot.cnqueens
: See tests/nqueens.cnyancat
: See tests/nyancat.cpi
: See tests/pi.cpuzzle
: See tests/puzzle.cqrcode
: See tests/qrcode.crichards
: See tests/richards.crvsim
: See tests/rvsim.cspirograph
: See tests/spirograph.cuaes
: See tests/uaes.c
To determine performance of the floating point arithmetic, the following RISC-V binaries are built with option -march=rv32imf
:
quake
: See sysprog21/quake-embeddedscimark2
: See SciMark 2.0
There are still some prebuilt standalone RISC-V binaries under build/
directory only for testing purpose:
hello.elf
: See tests/asm-hellocc.elf
: See tests/ccchacha20.elf
: See tests/chacha20ieee754.elf
: See tests/ieee754.c [RV32F]jit-bf.elf
: See ezaki-k/xkon_betareadelf.elf
: See tests/readelfsmolnes.elf
: See tests/smolnes [RV32M]