Skip to content

Latest commit

 

History

History
46 lines (34 loc) · 1.25 KB

README.md

File metadata and controls

46 lines (34 loc) · 1.25 KB

rjit is a toy runtime assembler written in Rust.
By using this, you can run or test the assembly directly without linking process.

Feature

  • x86_64 assembly (NOT 32bit)
  • AT&T syntax support.

Quick Start

$ cargo build --release

// exit.s will exit with code 42.
$ ./target/release/rjit --file=./examples/exit.s

// check exit code.
$ echo $?
    -> 42

Debug

If you want to check internal process , use gdb.

Supported Assembly Syntax

  • nop
  • add
  • sub
  • mov
  • ret
  • int
  • syscall

also, please check examples directory.

Restriction

  • input is one assembly(.s) file.
  • no libc support.
    • but I'm thinking of adding my own implementation for libc that doesn't need the linking process. (ex: printf, malloc, etc...)

Reference