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/MLRISC/alpha/instructions/alphaPeephole.peep
 [smlnj] / sml / trunk / src / MLRISC / alpha / instructions / alphaPeephole.peep

# Diff of /sml/trunk/src/MLRISC/alpha/instructions/alphaPeephole.peep

revision 1054, Wed Feb 6 19:27:27 2002 UTC revision 1055, Thu Feb 7 20:38:59 2002 UTC
# Line 16  Line 16
16
17     (* IMPORTANT: instructions are now given in forward order *)     (* IMPORTANT: instructions are now given in forward order *)
18     fun peephole instrs =     fun peephole instrs =
19     let fun isZero(I.LABop le) = Eval.valueOf le = 0     let fun isZero(I.LABop le) = ((Eval.valueOf le = 0) handle _ => false)
20           | isZero(I.REGop r) = CB.registerNum r = 31           | isZero(I.REGop r) = CB.registerNum r = 31
21           | isZero(I.IMMop i) = i = 0           | isZero(I.IMMop i) = i = 0
22           | isZero _ = false           | isZero _ = false
# Line 37  Line 37
37         fun sameOperand (I.REGop r1, I.REGop r2) = CB.sameColor(r1,r2)         fun sameOperand (I.REGop r1, I.REGop r2) = CB.sameColor(r1,r2)
38           | sameOperand (I.IMMop i1, I.IMMop i2) = i1 = i2           | sameOperand (I.IMMop i1, I.IMMop i2) = i1 = i2
39           | sameOperand (I.LABop l1, I.LABop l2) =           | sameOperand (I.LABop l1, I.LABop l2) =
40                  Eval.valueOf l1 = Eval.valueOf l2                  (Eval.valueOf l1 = Eval.valueOf l2) handle _ => false
41           | sameOperand _ = false           | sameOperand _ = false
42
43         fun loop(current, instrs) =         fun loop(current, instrs) =

Legend:
 Removed from v.1054 changed lines Added in v.1055