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 1002, Fri Nov 30 17:11:33 2001 UTC revision 1003, Fri Dec 7 02:45:32 2001 UTC
# Line 31  Line 31 
31    val r0  = C.GPReg 0    val r0  = C.GPReg 0
32    
33    fun divlv({ra, rb, rc}, reduceOpnd) =    fun divlv({ra, rb, rc}, reduceOpnd) =
34      [I.COPY{dst=[r16, r17], src=[ra, reduceOpnd rb], impl=ref NONE,      [I.copy{dst=[r16, r17], src=[ra, reduceOpnd rb], impl=ref NONE,
35              tmp=copyTmp()},              tmp=copyTmp()},
36       I.LOAD{ldOp=I.LDL, r=r27, b=sp, d=divlOffset, mem=stack},       I.load{ldOp=I.LDL, r=r27, b=sp, d=divlOffset, mem=stack},
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       I.COPY{dst=[rc], src=[r0], impl=ref NONE, tmp=NONE}]       I.copy{dst=[rc], src=[r0], impl=ref NONE, tmp=NONE}]
39    
40    fun divlu({ra, rb, rc}, reduceOpnd) =    fun divlu({ra, rb, rc}, reduceOpnd) =
41      [I.COPY{dst=[r16, r17], src=[ra, reduceOpnd rb], impl=ref NONE,      [I.copy{dst=[r16, r17], src=[ra, reduceOpnd rb], impl=ref NONE,
42              tmp=copyTmp()},              tmp=copyTmp()},
43       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},
44       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},
45       I.COPY{dst=[rc], src=[r0], impl=ref NONE, tmp=NONE}]       I.copy{dst=[rc], src=[r0], impl=ref NONE, tmp=NONE}]
46    
47    fun unimplemented _ = error "unimplemented pseudo-instr"    fun unimplemented _ = error "unimplemented pseudo-instr"
48    val divl  = unimplemented    val divl  = unimplemented
# Line 58  Line 58 
58    
59    fun cvtlt({opnd, fd}, reduceOpnd) =    fun cvtlt({opnd, fd}, reduceOpnd) =
60    let val ra = reduceOpnd opnd    let val ra = reduceOpnd opnd
61    in  [I.STORE{stOp=I.STQ, r=ra, b=sp, d=floatTmpOffset, mem=stack},    in  [I.store{stOp=I.STQ, r=ra, b=sp, d=floatTmpOffset, mem=stack},
62         I.FLOAD{ldOp=I.LDT, r=fd, b=sp, d=floatTmpOffset, mem=stack},         I.fload{ldOp=I.LDT, r=fd, b=sp, d=floatTmpOffset, mem=stack},
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    val cvtls = unimplemented

Legend:
Removed from v.1002  
changed lines
  Added in v.1003

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