All Projects → truongpt → meo

truongpt / meo

Licence: GPL-3.0 License
subset c compiler

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to meo

SqlBatis
A high performance Micro-ORM supporting SQL Server, MySQL, Sqlite etc..
Stars: ✭ 34 (-2.86%)
Mutual labels:  lexical-analysis
ria-jit
Lightweight and performant dynamic binary translation for RISC–V code on x86–64
Stars: ✭ 38 (+8.57%)
Mutual labels:  x86-64
fadec
A fast and lightweight decoder for x86 and x86-64 and encoder for x86-64.
Stars: ✭ 44 (+25.71%)
Mutual labels:  x86-64
insaneworks-packer-template
CentOS 7-8 8Stream / AlmaLinux 8 / FreeBSD 12 - 13 x64 + VirtualBox / VMWare for Packer Template + FreeBSD 13 / AlmaLinux 9 + Parallels
Stars: ✭ 38 (+8.57%)
Mutual labels:  x86-64
Flutter-Facebook-Redesign
Flutter Facebook Redesign Application Design and Animation - day 19
Stars: ✭ 168 (+380%)
Mutual labels:  100daysofcode
nolimix86
LLVM-based x86 emulator with support for unlimited virtual registers, used before the register allocation pass
Stars: ✭ 19 (-45.71%)
Mutual labels:  x86-64
PBD
🖨️🐞 Printf Based Debugger, a user-friendly C debugger
Stars: ✭ 52 (+48.57%)
Mutual labels:  x86-64
rosetta-at-home
Fold for Covid - Help fight the COVID-19 pandemic with your old laptop, Raspberry Pi, or other spare computer
Stars: ✭ 78 (+122.86%)
Mutual labels:  x86-64
x86-Assembly-Reverse-Engineering
🛠 Knowledge about the topic of x86 assembly & disassembly 🛠
Stars: ✭ 27 (-22.86%)
Mutual labels:  x86-64
binary-decompilation
Extracting high level semantic information from binary code
Stars: ✭ 55 (+57.14%)
Mutual labels:  x86-64
OpenWRT-x86 64-Install
Create and deploy a LEGACY or EFI OpenWRT bootable image for x86_64 processors
Stars: ✭ 15 (-57.14%)
Mutual labels:  x86-64
kcs
Scripting in C with JIT(x64)/VM.
Stars: ✭ 25 (-28.57%)
Mutual labels:  x86-64
YaccConstructor
Platform for parser generators and other grammarware research and development. GLL, RNGLR, graph parsing algorithms, and many others are included.
Stars: ✭ 36 (+2.86%)
Mutual labels:  lexical-analysis
yacp
Yet Another Cygwin Ports
Stars: ✭ 102 (+191.43%)
Mutual labels:  x86-64
minilang
Bootstrapped compiler of a C-like but Python-looking language
Stars: ✭ 38 (+8.57%)
Mutual labels:  x86-64
uplift
Compatibility layer for running Orbis executables natively on Windows.
Stars: ✭ 42 (+20%)
Mutual labels:  x86-64
OpenWrts
OPENWRT 固件(Raspberry Pi4B/3B+,NanoPi R4S,Orange Pi R1Plus,x86) 依源码更新自动编译
Stars: ✭ 100 (+185.71%)
Mutual labels:  x86-64
alexa
A Lexical Analyzer Generator
Stars: ✭ 54 (+54.29%)
Mutual labels:  lexical-analysis
nordvpn
NordVpn Docker Client
Stars: ✭ 475 (+1257.14%)
Mutual labels:  x86-64
KnutOS
An x86_64 hobbyist OS written in C and Assembly
Stars: ✭ 16 (-54.29%)
Mutual labels:  x86-64

Meo subset c compiler

Let's start

Design

  • Using design as four-pass compiler, which is refered from Compiler design in C - Allen I.Holub
  • Each module lexical analyzer, parser, code generation are designed as independent module, it can be easy to replace without any effect other part.
  • Each module is designed as multi instance, I plan supporting paralell compiler to increase performance.

Implementation

  • First step: only supporting X86-64 + pass 2 (lexical analyzer, parser, code generation).
  • Using back end of GCC to generate executed code.
  • Using TDD with catch2.
  • Using Google coding convention.

Current status.

Todo list

  • Support function.
  • Function call.
  • Global variable & local variable.
  • Structure type.
  • Pointer.
  • Function pointer.
  • All operator.
  • v..v...
  • Self compile.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].