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

SCM Repository

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

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

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 717, Sun Nov 5 15:07:51 2000 UTC revision 823, Tue May 8 21:25:15 2001 UTC
# Line 1  Line 1 
1    structure X86PseudoOps =
2      PseudoOpsLittle(structure M=X86Spec val nop = SOME(0wx90:Word8.word))
3    
4    structure X86Stream = InstructionStream(X86PseudoOps)
5    
6    (* MLTree specialization *)
7    structure X86MLTree =
8      MLTreeF(structure Constant = SMLNJConstant
9              structure Region=CPSRegions
10              structure Stream=X86Stream
11              structure Extension=X86_SMLNJMLTreeExt)
12    
13  (* specialised X86 instruction set *)  (* specialised X86 instruction set *)
14  structure X86Instr =  structure X86Instr =
15    X86Instr(structure LabelExp=SMLNJLabelExp    X86Instr(
16             structure Region=CPSRegions)      LabelExp
17           (structure T = X86MLTree
18            fun h _ _ = 0w0 fun eq _ _ = false
19            val hashRext = h and hashFext = h and hashCCext = h and hashSext = h
20            val eqRext = eq and eqFext = eq and eqCCext = eq and eqSext = eq
21            ))
22    
23  structure X86Props = X86Props(X86Instr)  structure X86Props = X86Props(X86Instr)
24    
# Line 9  Line 26 
26    
27  structure X86Shuffle = X86Shuffle(X86Instr)  structure X86Shuffle = X86Shuffle(X86Instr)
28    
 structure X86PseudoOps =  
   PseudoOpsLittle(structure M=X86Spec val nop = SOME(0wx90:Word8.word))  
   
 structure X86MemRegs = X86MemRegs(X86Instr)  
29    
30  (* Flowgraph data structure specialized to X86 instructions *)  (* Flowgraph data structure specialized to X86 instructions *)
31  structure X86FlowGraph =  structure X86FlowGraph =
# Line 20  Line 33 
33              structure P=X86PseudoOps              structure P=X86PseudoOps
34             )             )
35    
 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)  
36    
 (* Machine code emitter *)  
 structure X86MCEmitter =  
   X86MCEmitter(structure Instr=X86Instr  
                structure Shuffle=X86Shuffle  
                structure AsmEmitter=X86AsmEmitter  
                structure MemRegs=X86MemRegs)  
37    
 (* MLTree specialization *)  
 structure X86MLTree =  
   MLTreeF(structure LabelExp=SMLNJLabelExp  
           structure Region=CPSRegions  
           structure Stream=X86Stream  
           structure Extension=SMLNJMLTreeExt)  

Legend:
Removed from v.717  
changed lines
  Added in v.823

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