ACM1501 U201514613 苟桂霖
This project implements a Java-like language called decaf,
which compiles .decaf code into LLVM middle code(.ll).
It features:
- use Flex as tokenizier;
- use Bison as Praser;
- support limited static analysis;
- use LLVM Builder to generate final middle code.
This project requires 0. Linux distribution
- GCC and Clang supporting C++17.
- latest bison and flex
- LLVM
- zlib1g-dev (to solve "-lz not found")
- /usr/bin/python3
To run it, first run ./init.sh to generate necessary directory structure, and fix any error infomation if exists
After installing the tools above, run ./init.sh to generate necessary directory structure.
Then, run ./checker.sh to compile and link programs. You can modify ./checker.sh to test other program, or manually do it at your wish.