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/branches/SMLNJ/src/MLRISC/alpha32/alpha32RegAlloc.sml
ViewVC logotype

Diff of /sml/branches/SMLNJ/src/MLRISC/alpha32/alpha32RegAlloc.sml

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

revision 105, Thu May 28 21:30:17 1998 UTC revision 106, Thu May 28 21:30:17 1998 UTC
# Line 33  Line 33 
33        end        end
34     end =     end =
35  struct  struct
36      structure C = I.C
37      (* liveness analysis for general purpose registers *)      (* liveness analysis for general purpose registers *)
38    structure RegLiveness =    structure RegLiveness =
39      Liveness(structure Flowgraph=F      Liveness(structure Flowgraph=F
40               structure Instruction=I               structure Instruction=I
41               val defUse = P.defUseR               val defUse = P.defUse C.GP
42               fun regSet c = #1 (c:Alpha32Cells.cellset)               fun regSet c = #1 (c:Alpha32Cells.cellset)
43               fun cellset((_,f),r) = (r,f))               fun cellset((_,f),r) = (r,f))
44    
# Line 51  Line 52 
52               structure AsmEmitter = Asm               structure AsmEmitter = Asm
53               structure I = I               structure I = I
54               structure Liveness=RegLiveness               structure Liveness=RegLiveness
55               val defUse = P.defUseR               val defUse = P.defUse C.GP
56               val firstPseudoR = 32               val firstPseudoR = 32
57               val maxPseudoR = Alpha32Cells.maxReg               val maxPseudoR = Alpha32Cells.maxCell
58               val numRegs = Alpha32Cells.numRegs               val numRegs = Alpha32Cells.numCell Alpha32Cells.GP
59               fun regSet c = #1 (c:Alpha32Cells.cellset)               fun regSet c = #1 (c:Alpha32Cells.cellset)
60            end)            end)
61    
# Line 64  Line 65 
65    structure FregLiveness =    structure FregLiveness =
66      Liveness(structure Flowgraph=F      Liveness(structure Flowgraph=F
67               structure Instruction=I               structure Instruction=I
68               val defUse = P.defUseF               val defUse = P.defUse C.FP
69               fun regSet c = #2 (c:Alpha32Cells.cellset)               fun regSet c = #2 (c:Alpha32Cells.cellset)
70               fun cellset((r,_),f) = (r,f))               fun cellset((r,_),f) = (r,f))
71    
# Line 78  Line 79 
79            structure Liveness=FregLiveness            structure Liveness=FregLiveness
80            structure I = I            structure I = I
81    
82            val defUse = P.defUseF            val defUse = P.defUse C.FP
83            val firstPseudoR = 32            val firstPseudoR = 32
84            val maxPseudoR = Alpha32Cells.maxFreg            val maxPseudoR = Alpha32Cells.maxCell
85            val numRegs = Alpha32Cells.numFregs            val numRegs = Alpha32Cells.numCell Alpha32Cells.FP
86            fun regSet c = #2 (c:Alpha32Cells.cellset)            fun regSet c = #2 (c:Alpha32Cells.cellset)
87          end)          end)
88  end  end
# Line 91  Line 92 
92    
93  (*  (*
94   * $Log: alpha32RegAlloc.sml,v $   * $Log: alpha32RegAlloc.sml,v $
95     * Revision 1.2  1998/05/19 15:43:26  george
96     *   The instructions properties now exports a generic defUse function that is
97     *   curried over the cellclass, i.e., defUseR and defUseF are gone.
98     *
99   * Revision 1.1.1.1  1998/04/08 18:39:01  george   * Revision 1.1.1.1  1998/04/08 18:39:01  george
100   * Version 110.5   * Version 110.5
101   *   *

Legend:
Removed from v.105  
changed lines
  Added in v.106

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