
RISC-V Virtual Machine

文章:RISC-Y Business: Raging against the reduced machine.
C++ Clang Compiler for Windows (16.0.5) 组件的 Visual Studio 2022此文件夹包含 VM 主机(rv64i 解释器)。
构建:
cd riscvm
cmake -B build -T ClangCL
cmake --build build --config RelWithDebInfo
此文件夹包含负责使 LLVM Bitcode (.bc) 文件与 riscv64 目标兼容以供编译的项目。这个工具的神奇之处在于,它允许我们使用 clang-cl 构建一个常规的 Windows 项目,然后将其转换为与 riscvm 主机兼容的 payload。
构建:
cd transpiler
cmake -B build -DCMAKE_PREFIX_PATH=c:/llvm-install
cmake --build build --config RelWithDebInfo
llvm-install 是一个常规的 LLVM 安装。它应与 Visual Studio 使用的 Clang 版本匹配(有时可以更新一些)。如果你想节省构建 LLVM 的时间,可以使用预编译的 llvm-17.0.2-win64.7z。
此文件夹包含一个示例 payload 项目。
构建:
cd payload
cmake -B build -T ClangCL
cmake --build build --config Release
这将生成一个 payload.bin,可以将其作为参数传给 riscvm 执行。