stefanpantic / pascalina

Mini Pascal to LLVM compiler

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

λ: Pascalina

Mini Pascal to LLVM complier written in C++. The project uses flex and bison to construct an AST and perform some validity checks in the process. The tree can then be traversed via visitors to perform aditional checks or produce IR from it. The end goal is to implement an LLVM visitor that will generate valid LLVM IR code from the tree.

📋 Plans:

  • Simple project structure (lexical and syntaxical analysis, Makefile)
  • Implement basic AST
  • Support function prototypes, definitions and function calls
  • Support basic arithmetic/relational operations
  • Support control structures (if-else, while)
  • Support functions
  • Perform semantic analysis
  • Include LLVM
  • Generate LLVM IR
  • Add arrays
  • Allow passing of arrays to/from functions
  • Add vectors

ℹ️ About me:

Author: Stefan Pantic.
Contact: stefanpantic13@gmail.com

About

Mini Pascal to LLVM compiler


Languages

Language:C++ 92.2%Language:Pascal 3.2%Language:Lex 2.4%Language:Makefile 2.2%