annotate lab2/kgen.mli @ 0:bfdcc3820b32

Basis
author Mike Spivey <mike@cs.ox.ac.uk>
date Thu, 05 Oct 2017 08:04:15 +0100
parents
children
rev   line source
0
Mike Spivey <mike@cs.ox.ac.uk>
parents:
diff changeset
1 (* lab2/kgen.mli *)
Mike Spivey <mike@cs.ox.ac.uk>
parents:
diff changeset
2 (* Copyright (c) 2017 J. M. Spivey *)
Mike Spivey <mike@cs.ox.ac.uk>
parents:
diff changeset
3
Mike Spivey <mike@cs.ox.ac.uk>
parents:
diff changeset
4 (* The intermediate code generator takes an abstract syntax tree that
Mike Spivey <mike@cs.ox.ac.uk>
parents:
diff changeset
5 has been annotated by the semantic analyser, and produces abstract
Mike Spivey <mike@cs.ox.ac.uk>
parents:
diff changeset
6 machine code. No errors should be detected in this part if the
Mike Spivey <mike@cs.ox.ac.uk>
parents:
diff changeset
7 compiler, unless earlier passes are broken. *)
Mike Spivey <mike@cs.ox.ac.uk>
parents:
diff changeset
8
Mike Spivey <mike@cs.ox.ac.uk>
parents:
diff changeset
9 (* |translate| -- generate intermediate code *)
Mike Spivey <mike@cs.ox.ac.uk>
parents:
diff changeset
10 val translate : Tree.program -> unit
Mike Spivey <mike@cs.ox.ac.uk>
parents:
diff changeset
11
Mike Spivey <mike@cs.ox.ac.uk>
parents:
diff changeset
12 val optflag : bool ref