This originally was coursework for the Code Generation for Data Processing course at TUM. After finishing the course, I found myself wanting to more work on the translator. This has resulted in additional support for RV32M, and various fixes, and more samples.
A very basic dynamic binary translator based on LLVM. The granularity is generally fixed (basic block level), but single instruction stepping is supported. See main --help
.
The source is contained in main.cc
, the frvdec decoder library is included via a git submodule in frvdec/
, build instructions can be found in the Makefile
.