Your program should accept C source code on
stdin
and write a heirarchical representation on stdout
.
The input format is C90.
The output format should be MIPS1 assembly code.
It should be possible to assemble and link this code
against a C run-time, and have it execute correctly
on a MIPS processor as emulated by qemu-mips
.
Your compiler should be built using:
make bin/c_compiler
and the resulting program should be called bin/c_compiler
.
The target environment remains Ubuntu 16.04.
There are actually three deliverables here:
1 - The compiler itself
2 - A test framework
3 - Documentation