The src/target/mips Directory
Namespace target::mips, delivered during TC-7 and TC-9. Code generation for
MIPS R2000.
File: local.am (src/target/mips/)
The Makefile configuration relative to the
src/target/mips/directory. It is responsible for the integration into thelibtclibrary with everything exported from thetarget::mipsmodule, and the linkage of the directory’s unit tests in the test-suite.
File: cpu.* (src/target/mips/)
The description of the MIPS (actually, SPIM/Nolimips) CPU.
File: spim-assembly.* (src/target/mips/)
Our assembly language (syntax, opcodes and layout); it abstracts the generation of MIPS R2000 instructions.
target::mips::SpimAssemblyderives fromtarget::Assembly.
File: spim-codegen.* (src/target/mips/)
A translator from LIR to ASSEM using the MIPS R2000 instruction set defined by
target::mips::SpimAssembly. This relies ontarget::mips::SpimMatcherfor instruction scheduling.target::mips::Codegenderives fromtarget::Codegen.
File: spim-layout.* (src/target/mips/)
How MIPS (and SPIM/Nolimips) fragments are to be displayed. In other words, that’s where the (global) syntax of the target assembly file is selected.
File: spim-matcher.* (src/target/mips/)
Functor used for pattern-matching based instruction selection, making use of
misc::LambdaVisitorfor nested matching.
File: target.* (src/target/mips/)
The main back end, based on a MIPS CPU and a MIPS code generator.
File: generate-runtime.sh (src/target/mips/)
Generate the Tiger adapted MIPS runtime.
File: runtime.s & runtime.cc (src/target/mips/)
The Tiger runtime in MIPS assembly language:
runtime.ccis built fromruntime.s: do not edit the former. See src/target,tiger-runtime.c.
File: test-target.cc (src/target/mips/)
The unit tests.