Container image for RISCV64 assembly used by CodeRunner.
The container host must support QEMU user-mode emulation. Install the statically linked binaries for QEMU user-mode emulation on the container host, e.g. on Ubuntu 22.04:
$ sudo apt update && sudo apt install qemu-user-static
$ ./bin/run
Specify a container engine (default: docker
) with environment variable CONTAINER_ENGINE
. E.g. with Podman:
$ CONTAINER_ENGINE=podman ./bin/run
Specify an example under the examples/
directory to run (default: multiply
) by passing a command-line argument. E.g. to run the example under examples/multiply-failing/
:
$ ./bin/run multiply-failing
multiply
(default): Example ofmultiply
function with fixed and random testsmultiply-failing
: Likemultiply
, but with a failing implementationsyntax-error
: An assembly program with syntax errors. Also demonstrates that it shouldn't be possible to cheat by replacing assembly with Cinvalid-regname
: An assembly program with an invalid register namet7
(RISCV64 temporaries only range fromt0
tot6
)
$ docker build --platform linux/riscv64 -t ghcr.io/codewars/riscv:latest .