(* types.ml 15-411 by Arthur O'Dwyer *) (* @version $Id: types.ml,v 1.2 2004/10/26 05:10:08 ajo Exp $ *) type temp = int (* Types involved with register allocation *) type register = int type stackslot = int type regalloc_t = REGISTER of register | STACKSLOT of stackslot | TEMP of temp (* The type of an instruction *) type instr = | OPER of (string * regalloc_t list * regalloc_t list) | LIVEOPER of (string * regalloc_t list * regalloc_t list) | MOVE of (string * regalloc_t * regalloc_t) | JUMP of string | LABEL of string | COMMENT of string