De C a FlipJump: Una Máquina Virtual RISC-V Minimalista

2025-01-17
De C a FlipJump: Una Máquina Virtual RISC-V Minimalista

El proyecto c2fj es un compilador que traduce código C a FlipJump, una máquina virtual con un conjunto de instrucciones minimalista. Primero compila el código C en un archivo ELF RISC-V, luego traduce las instrucciones RISC-V a instrucciones FlipJump y, finalmente, ejecuta el programa FlipJump resultante. Este proceso aprovecha inteligentemente la optimización de espacio de FlipJump, permitiendo una compilación eficiente incluso de grandes bases de código C. c2fj admite varias banderas de compilación y proporciona soporte para Makefile para proyectos complejos. También incluye una biblioteca C mínima que implementa las llamadas al sistema necesarias, como `exit`, `getc`, `putc` y `sbrk`.

Desarrollo