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/branches/SMLNJ/src/MLRISC/x86/instructions/x86Props.sml
ViewVC logotype

Diff of /sml/branches/SMLNJ/src/MLRISC/x86/instructions/x86Props.sml

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

revision 468, Wed Nov 10 22:42:52 1999 UTC revision 469, Wed Nov 10 22:42:52 1999 UTC
# Line 159  Line 159 
159        | I.FBINARY{src, ...}   => ([], operandUse src)        | I.FBINARY{src, ...}   => ([], operandUse src)
160        | I.FNSTSW              => ([C.eax], [])        | I.FNSTSW              => ([C.eax], [])
161        | I.SAHF                => ([], [C.eax])        | I.SAHF                => ([], [C.eax])
162        | I.ANNOTATION{a=BasicAnnotations.DEFUSER(d,u),...} => (d,u)        | I.ANNOTATION{a, i, ...} =>
163        | I.ANNOTATION{i,...}   => defUseR i            (case #peek BasicAnnotations.DEFUSER a of
164                 SOME(d,u) => (d,u)
165               | NONE => defUseR i
166              )
167        | _                     => ([], [])        | _                     => ([], [])
168    end (* defUseR *)    end (* defUseR *)
169    
# Line 175  Line 178 
178        | I.FBINARY{dst, src, ...}=> (operand dst, operand dst @ operand src)        | I.FBINARY{dst, src, ...}=> (operand dst, operand dst @ operand src)
179        | I.FCOPY{dst, src, tmp=SOME(I.FDirect f), ...}  => (f::dst, src)        | I.FCOPY{dst, src, tmp=SOME(I.FDirect f), ...}  => (f::dst, src)
180        | I.FCOPY{dst, src, ...}  => (dst, src)        | I.FCOPY{dst, src, ...}  => (dst, src)
181        | I.ANNOTATION{a=BasicAnnotations.DEFUSEF(d,u),...} => (d,u)        | I.ANNOTATION{a, i, ...} =>
182        | I.ANNOTATION{i,...}   => defUseF i            (case #peek BasicAnnotations.DEFUSEF a of
183                 SOME(d,u) => (d,u)
184               | NONE => defUseF i
185              )
186        | _  => ([], [])        | _  => ([], [])
187    end    end
188    
# Line 187  Line 193 
193    (*========================================================================    (*========================================================================
194     *  Annotations     *  Annotations
195     *========================================================================*)     *========================================================================*)
196    fun getAnnotations(I.ANNOTATION{i,a}) = a::getAnnotations i    fun getAnnotations(I.ANNOTATION{i,a}) =
197      | getAnnotations _ = []         let val (i,an) = getAnnotations i in (i,a::an) end
198        | getAnnotations i = (i,[])
199    fun annotate(i,a) = I.ANNOTATION{i=i,a=a}    fun annotate(i,a) = I.ANNOTATION{i=i,a=a}
200    
201    (*========================================================================    (*========================================================================

Legend:
Removed from v.468  
changed lines
  Added in v.469

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