Skip to content

TheCloudlet/sheccr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SHECCR

  • a Self-Hosting and Educational C Compiler in Rust inspired by shecc
  • Learning Rust technique from rustcc
  • LLVM IR learned from here

Features

Currently, shecc supports the following features:

  • Unary operators (logical negation, bitwise complements, negation)
  • Binary operators (basic arithmetic, bitwise operations, comparisons)
  • Local variables (assignment, declaration, variable calling, postfix and prefix incrementing)
  • If-else branching
  • Ternary operator
  • While loops, do-while loops, for loops, break, continue
  • Function calling and creation

As of now, only supports variables of type int.

On Going

  • Lexer
  • Parser
  • llvm IR

Dependencies

Rust and Cargo installed

Usage

$ cargo run file.c

About

a Self-Hosting and Educational C Compiler in Rust

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published