shecc
spu32
Our great sponsors
shecc | spu32 | |
---|---|---|
6 | 1 | |
1,020 | 60 | |
4.1% | - | |
8.7 | 0.0 | |
6 days ago | almost 2 years ago | |
C | C | |
BSD 2-clause "Simplified" License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
shecc
-
A self-hosting and educational C optimizing compiler
Yes, consider the case of shecc. It requires just a handful of C code lines to interpret directives set in the C preprocessor. Unlike relying on existing tools like cpp, as, or ld, shecc stands alone as a minimalist cross-compiler. This design could be particularly beneficial for students delving into the study of compiler construction. See https://github.com/sysprog21/shecc/blob/master/src/lexer.c#L...
-
Compiler Class
I'm looking at this one for a CPU design I've been working on. :)
spu32
-
Designing instruction decoder
You asked for "elegant and simple". Disregarding your request, here's how I decode RISC-V: https://github.com/maikmerten/spu32/blob/master/cpu/decoder.v
What are some alternatives?
dji-firmware-tools - Tools for handling firmwares of DJI products, with focus on quadcopters.
RISCV - A Pipelined RISC-V RV32I Core in Verilog [Moved to: https://github.com/georgeyhere/Toast-RV32i]
chipyard - An Agile RISC-V SoC Design Framework with in-order cores, out-of-order cores, accelerators, and more
coollang-2020-fs - Compiler of a small Scala subset
bsod-kernel-fuzzing - BSOD: Binary-only Scalable fuzzing Of device Drivers
pagebuster - PageBuster - dump all executable pages of packed processes.
ocean - Programming language that compiles into a x86 ELF executable.
amacc - Small C Compiler generating ELF executable Arm architecture, supporting JIT execution
llvm-project - The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
selfie - An educational software system of a tiny self-compiling C compiler, a tiny self-executing RISC-V emulator, and a tiny self-hosting RISC-V hypervisor.
quasiSoC - No-MMU Linux capable RISC-V SoC designed to be useful.
esp - Embedded Scalable Platforms: Heterogeneous SoC architecture and IP integration made easy