Our project correctly generates LLVM Intermediate Representation for most Pascal/Delphi functionality. Our program works for loops (including continue), console output, console input, for loops and functions
To run all the test files we created an Interpreter.java file to run through all the pascal files and run them. To compile the code run the following command.
javac -cp .:./antlr_files:[PATH TO ANTLR JAR] --enable-preview --source 23 Interpreter.java
To run the code, use the following command:
java -cp .:./antlr_files:[PATH TO ANTLR JAR] --enable-preview Interpreter
In our project, all the LLVM IR generated by the program is written to the .ll files such as /llvmOut/ForLoop.ll. The expected output which we use to compare the generated output to is written to the .out files such as /test_files/forLoop.out
Thank you!