C에서 FlipJump로: 최소한의 RISC-V 가상 머신

2025-01-17
C에서 FlipJump로: 최소한의 RISC-V 가상 머신

c2fj 프로젝트는 최소한의 명령어 집합을 가진 가상 머신인 FlipJump으로 C 코드를 변환하는 컴파일러입니다. 먼저 C 코드를 RISC-V ELF 파일로 컴파일하고, 그 다음 RISC-V 명령어를 FlipJump 명령어로 변환한 후, 생성된 FlipJump 프로그램을 실행합니다. 이 프로세스는 FlipJump의 공간 최적화를 효율적으로 활용하여 대규모 C 코드베이스도 효율적으로 컴파일할 수 있도록 합니다. c2fj는 다양한 컴파일 옵션을 지원하며 복잡한 프로젝트를 위한 Makefile 지원을 제공합니다. 또한 `exit`, `getc`, `putc`, `sbrk` 등 필요한 시스템 콜을 구현한 최소한의 C 라이브러리를 포함하고 있습니다.

개발