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/mltree/mltree-simplify.sml
ViewVC logotype

Diff of /sml/trunk/src/MLRISC/mltree/mltree-simplify.sml

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

revision 657, Fri Jun 9 05:20:54 2000 UTC revision 744, Fri Dec 8 04:11:42 2000 UTC
# Line 325  Line 325 
325        | T.SLL(ty,a,b)  => simplifyShift(a,b,fn _ =>        | T.SLL(ty,a,b)  => simplifyShift(a,b,fn _ =>
326                               SHIFT(sll,true,LE.LSHIFT,ty,a,b))                               SHIFT(sll,true,LE.LSHIFT,ty,a,b))
327    
328        | cvt as T.CVTI2I(ty,ext,ty',e) =>        | cvt as T.SX(ty,ty',e) =>
329             if ty = ty' orelse identity_ext(ty,ext,e) then e else cvt             if ty = ty' orelse identity_ext(ty,T.SIGN_EXTEND,e) then e else cvt
330          | cvt as T.ZX(ty,ty',e) =>
331               if ty = ty' orelse identity_ext(ty,T.ZERO_EXTEND,e) then e else cvt
332    
333        | T.COND(ty,cc,a,b) =>        | T.COND(ty,cc,a,b) =>
334            (case evalcc cc of TRUE => a | FALSE => b | UNKNOWN => exp)            (case evalcc cc of TRUE => a | FALSE => b | UNKNOWN => exp)
335        | exp => exp        | exp => exp
336     end     end
337    
338     and simStm ==> (s as T.IF(ctrl,cc,s1,s2)) = (* dead code elimination *)     and simStm ==> (s as T.IF(cc,s1,s2)) = (* dead code elimination *)
339          (case evalcc cc of          (case evalcc cc of
340             TRUE => s1             TRUE => s1
341           | FALSE => s2           | FALSE => s2

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

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