fotcorn / fara

Custom Instruction set architecture with LLVM backend and emulator

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

FARA (FARA Research Architecture)

A custom Instruction Set Architecture (ISA) with a simulator written in Rust and a custom LLVM backend for code generation.

  • 64bit instruction set with 24 general purpose integer register
  • RISC architecture (no complex indirect adressing mode etc.)

Initial documentation is in the doc/ directory.

LLVM backend

An LLVM backend for the ISA is developed here: https://github.com/fotcorn/fara-llvm-backend

Current features of the backend:

  • Machine code generation from assembly
  • Instruction selection for simple C programs
  • Basic setup in Clang to support C programs
  • Linker support for ELF files in LLD

About

Custom Instruction set architecture with LLVM backend and emulator


Languages

Language:Rust 87.3%Language:C 6.2%Language:Assembly 4.3%Language:Makefile 2.1%