1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
functor SparcMLTreeExtComp
(structure T : MLTREE
where Extension = Sparc_SMLNJMLTreeExt
structure I : SPARCINSTR
where T = T
structure Stream : MLTREE_STREAM
where T = I.T
structure CFG : CONTROL_FLOW_GRAPH
where I = I
and P = Stream.S.P
) : MLTREE_EXTENSION_COMP =
struct
structure TS = Stream
structure I = I
structure T = I.T
structure C = I.C
structure Ext = Sparc_SMLNJMLTreeExt
structure CFG = CFG
structure SparcCompInstrExt =
SparcCompInstrExt(structure I = I structure CFG = CFG structure TS=Stream)
type reducer =
(I.instruction,C.cellset,I.operand,I.addressing_mode, CFG.cfg) TS.reducer
fun unimplemented _ = MLRiscErrorMsg.impossible "SparcMLTreeExtComp"
val compileSext = SparcCompInstrExt.compileSext
val compileRext = unimplemented
val compileCCext = unimplemented
val compileFext = unimplemented
end
|