
Macchina virtuale RISC-V

Articolo: RISC-Y Business: Rabbia contro la macchina ridotta.
C++ Clang Compiler for Windows (16.0.5)Questa cartella contiene l'host della VM (interprete rv64i).
Per compilare:
cd riscvm
cmake -B build -T ClangCL
cmake --build build --config RelWithDebInfo
Questa cartella contiene il progetto responsabile di rendere i file LLVM Bitcode (.bc) compatibili con la compilazione per il target riscv64. Questo strumento è la magia che ci permette di compilare un normale progetto Windows con clang-cl e poi convertirlo in un payload compatibile con l'host riscvm.
Per compilare:
cd transpiler
cmake -B build -DCMAKE_PREFIX_PATH=c:/llvm-install
cmake --build build --config RelWithDebInfo
llvm-install è una normale installazione di LLVM. Dovrebbe corrispondere alla versione di Clang usata da Visual Studio (a volte può essere successiva). Puoi usare una versione precompilata di llvm-17.0.2-win64.7z se vuoi risparmiare tempo nella compilazione di LLVM.
Questa cartella contiene un progetto di esempio di payload.
Per compilare:
cd payload
cmake -B build -T ClangCL
cmake --build build --config Release
Questo dovrebbe fornirti un payload.bin che può essere passato come argomento a riscvm per essere eseguito.