Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] View of /sml/trunk/compiler/CodeGen/x86/x86MLTree.sml
ViewVC logotype

View of /sml/trunk/compiler/CodeGen/x86/x86MLTree.sml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 555 - (download) (annotate)
Fri Mar 3 16:10:30 2000 UTC (19 years, 5 months ago) by george
Original Path: sml/trunk/src/compiler/CodeGen/x86/x86MLTree.sml
File size: 1291 byte(s)
lal-20000303-new mltree -- take II
(* specialised X86 instruction set *)
structure X86Instr = 
  X86Instr(structure LabelExp=SMLNJLabelExp
	   structure Region=CPSRegions)

structure X86Props = X86Props(X86Instr)

structure X86Rewrite = X86Rewrite(X86Instr)

structure X86Shuffle = X86Shuffle(X86Instr)

structure X86PseudoOps = 
  PseudoOpsLittle(structure M=X86Spec val nop = SOME(0wx90:Word8.word))

structure X86MemRegs = X86MemRegs(X86Instr)

(* Flowgraph data structure specialized to X86 instructions *)
structure X86FlowGraph = 
  FlowGraph(structure I=X86Instr 
	    structure P=X86PseudoOps
           )

structure X86Stream = InstructionStream(X86PseudoOps)


(* Assembly code emmitter *)
structure X86AsmEmitter=
  X86AsmEmitter(structure Instr=X86Instr
		structure PseudoOps=X86PseudoOps
		structure Shuffle=X86Shuffle
                structure Stream=X86Stream
		structure MemRegs=X86MemRegs)
  
(* Machine code emitter *)
structure X86MCEmitter = 
  X86MCEmitter(structure Instr=X86Instr
	       structure Shuffle=X86Shuffle
	       structure AsmEmitter=X86AsmEmitter
	       structure MemRegs=X86MemRegs)

(* MLTree specialization *)
structure X86MLTree = 
  MLTreeF(structure LabelExp=SMLNJLabelExp
	  structure Region=CPSRegions
	  structure Stream=X86Stream
	  structure Extension=SMLNJMLTreeExt
         )

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0