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/sparc/sparcPseudoInstrs.sml
 [smlnj] / sml / trunk / src / compiler / CodeGen / sparc / sparcPseudoInstrs.sml

# Diff of /sml/trunk/src/compiler/CodeGen/sparc/sparcPseudoInstrs.sml

revision 656, Fri Jun 9 03:39:04 2000 UTC revision 657, Fri Jun 9 05:20:54 2000 UTC
# Line 75  Line 75
75    end    end
76
77    fun umul({r, i, d}, reduceOpnd) = callRoutine(umulOffset,reduceOpnd,r,i,d)    fun umul({r, i, d}, reduceOpnd) = callRoutine(umulOffset,reduceOpnd,r,i,d)
78    fun smul({r, i, d}, reduceOpnd) = callRoutine(smulOffset,reduceOpnd,r,i,d)    fun smultrap({r, i, d}, reduceOpnd) = callRoutine(smulOffset,reduceOpnd,r,i,d)
79    fun udiv({r, i, d}, reduceOpnd) = callRoutine(udivOffset,reduceOpnd,r,i,d)    fun udiv({r, i, d}, reduceOpnd) = callRoutine(udivOffset,reduceOpnd,r,i,d)
80    fun sdiv({r, i, d}, reduceOpnd) = callRoutine(sdivOffset,reduceOpnd,r,i,d)    fun sdivtrap({r, i, d}, reduceOpnd) = callRoutine(sdivOffset,reduceOpnd,r,i,d)
81
82    fun cvti2d({i, d}, reduceOpnd) =    fun cvti2d({i, d}, reduceOpnd) =
83        [I.STORE{s=I.ST,r=C.stackptrR,i=floatTmpOffset,d=reduceOpnd i,mem=stack},        [I.STORE{s=I.ST,r=C.stackptrR,i=floatTmpOffset,d=reduceOpnd i,mem=stack},
# Line 88  Line 88
88    fun cvti2q _ = error "cvti2q"    fun cvti2q _ = error "cvti2q"
89
90       (* Generate native versions of the instructions *)       (* Generate native versions of the instructions *)
91    val umul = if native then umul_native else umul    val umul32 = if native then umul_native else umul
92    val smul = if native then smul_native else smul    fun smul32 _ = error "smul32"
93    val udiv = if native then udiv_native else udiv    val smul32trap = if native then smul_native else smultrap
94    val sdiv = if native then sdiv_native else sdiv    val udiv32 = if native then udiv_native else udiv
95      fun sdiv32 _ = error "sdiv32"
96      val sdiv32trap = if native then sdiv_native else sdivtrap
97
98    val overflowtrap32 = (* tvs 0x7 *)    val overflowtrap32 = (* tvs 0x7 *)
99                         [I.Ticc{t=I.BVS,cc=I.ICC,r=0,i=I.IMMED 7}]                         [I.Ticc{t=I.BVS,cc=I.ICC,r=0,i=I.IMMED 7}]

Legend:
 Removed from v.656 changed lines Added in v.657