View on GitHub

JST

By Janelle Blankenburg, Shubham Gogna, and Terence Henriod
UNR CS 660: Compiler Construction

Download this project as a .zip file Download this project as a tar.gz file

MIPS Tests

Matrix Multiplication

Demonstrates: Arrays as parameters, Function call, 2D arrays, Nested Loops, Simple Arithmetic

Bubble Sort

Demonstrates: Arrays as parameters, Function call, 2D arrays, Nested loops, Conditionals

Recursive Factorial

Demonstrates: Recursive function calls, Conditionals

Binary Operations

Demonstrates: A lot of binary operations

Triple Nested Loops

Demonstrates: All 3 types of loops, Nested loops

FizzBuzz

Demonstrates: Conditionals

Constant Folding

Demonstrates: Optimization


3AC Tests

Simple Assignment w/ Expression

Requirement: #1 (Undergraduate)

While

Requirement: #1 (Undergraduate)

Do .. While

Requirement: #1 (Undergraduate)

Bubble Sort

Requirement: #1 (Undergraduate)

Matrix Multiplication

Requirement: #2 (Undergraduate)

Recursive Factorial

Requirement: #3 (Undergraduate)

Custom 3AC Generation


AST Tests

Plain Main

Requirement: #1 (Undergraduate)

Declaration and Assignment

Requirement: #1 (Undergraduate)

Array Declaration

Requirement: #1 (Undergraduate)

Array Operations

Requirement: #2 (Undergraduate)

If, Else-If, Else

Requirement: #3 (Undergraduate)

For, While, Do-While Loops

Requirement: #4 (Undergraduate), #7 (Extra Credit)

Function Declaration and Implementation

Requirement: #5 (Graduate)

Custom AST Generation


Parser Tests

Iterative Factorial

Computes a factorial with a loop.

Recursive Factorial

Computes a factorial with recursive function calls.

Bubble Sort

Sorts an array using the Bubble Sort algorithm.


Note: The output of these tests to STDOUT is unchanged regardless of the given flags. Therefore, the output of running these tests with no flags is just the output of STDOUT.