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/src/compiler/CodeGen/alpha32/alpha32PseudoInstrs.sml
ViewVC logotype

Diff of /sml/trunk/src/compiler/CodeGen/alpha32/alpha32PseudoInstrs.sml

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

revision 1182, Thu Mar 28 16:41:29 2002 UTC revision 1183, Fri Mar 29 19:09:48 2002 UTC
# Line 6  Line 6 
6    structure C = Instr.C    structure C = Instr.C
7    structure CB = CellsBasis    structure CB = CellsBasis
8    
9    fun error msg = MLRiscErrorMsg.impossible("Alpha32PsuedoInstrs."^msg)    fun error msg = MLRiscErrorMsg.impossible("Alpha32PseudoInstrs."^msg)
10    
11    type reduceOpnd = I.operand -> CB.cell    type reduceOpnd = I.operand -> CB.cell
12    
# Line 37  Line 37 
37       I.jsr{r=r26, b=r27, d=0, defs=defs, uses=uses, cutsTo=[], mem=stack},       I.jsr{r=r26, b=r27, d=0, defs=defs, uses=uses, cutsTo=[], mem=stack},
38       copy{dst=[rc], src=[r0], tmp=NONE}]       copy{dst=[rc], src=[r0], tmp=NONE}]
39    
40      val divl = divlv                      (* FIXME!!!! *)
41    
42    fun divlu({ra, rb, rc}, reduceOpnd) =    fun divlu({ra, rb, rc}, reduceOpnd) =
43      [copy{dst=[r16, r17], src=[ra, reduceOpnd rb],tmp=copyTmp()},      [copy{dst=[r16, r17], src=[ra, reduceOpnd rb],tmp=copyTmp()},
44       I.load{ldOp=I.LDL, r=r27, b=sp, d=divluOffset, mem=stack},       I.load{ldOp=I.LDL, r=r27, b=sp, d=divluOffset, mem=stack},
45       I.jsr{r=r26, b=r27, d=0, defs=defs, uses=uses, cutsTo=[], mem=stack},       I.jsr{r=r26, b=r27, d=0, defs=defs, uses=uses, cutsTo=[], mem=stack},
46       copy{dst=[rc], src=[r0], tmp=NONE}]       copy{dst=[rc], src=[r0], tmp=NONE}]
47    
48    fun unimplemented _ = error "unimplemented pseudo-instr"    fun unimplemented what = error ("unimplemented pseudo-instr: " ^ what)
49    val divl  = unimplemented    fun divqv _ = unimplemented "divqv"
50    val divqv = unimplemented    fun divq _  = unimplemented "divq"
51    val divq  = unimplemented    fun divqu _ = unimplemented "divqu"
52    val divqu = unimplemented    fun remlv _ = unimplemented "remlv"
53    val remlv = unimplemented    fun reml _  = unimplemented "reml"
54    val reml  = unimplemented    fun remlu _ = unimplemented "remlu"
55    val remlu = unimplemented    fun remqv _ = unimplemented "remqv"
56    val remqv = unimplemented    fun remq _  = unimplemented "remq"
57    val remq  = unimplemented    fun remqu _ = unimplemented "remqu"
   val remqu = unimplemented  
58    
59    fun cvtlt({opnd, fd}, reduceOpnd) =    fun cvtlt({opnd, fd}, reduceOpnd) =
60    let val ra = reduceOpnd opnd    let val ra = reduceOpnd opnd
# Line 62  Line 63 
63         I.funary{oper=I.CVTQT, fb=fd, fc=fd}]         I.funary{oper=I.CVTQT, fb=fd, fc=fd}]
64    end    end
65    
66    val cvtls = unimplemented    fun cvtls _ = unimplemented "cvtls"
67    val cvtqt = unimplemented    fun cvtqt _ = unimplemented "cvtqt"
68    val cvtqs = unimplemented    fun cvtqs _ = unimplemented "cvtqs"
69    val cvtsl = unimplemented    fun cvtsl _ = unimplemented "cvtsl"
70    val cvttl = unimplemented    fun cvttl _ = unimplemented "cvttl"
71    val cvtsq = unimplemented    fun cvtsq _ = unimplemented "cvtsq"
72    val cvttq = unimplemented    fun cvttq _ = unimplemented "cvttq"
73  end  end

Legend:
Removed from v.1182  
changed lines
  Added in v.1183

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