Home My Page Projects Code Snippets Project Openings diderot
Summary Activity Tracker Tasks SCM

SCM Repository

[diderot] Diff of /branches/charisee/src/compiler/mid-il/check-mid-il.sml
ViewVC logotype

Diff of /branches/charisee/src/compiler/mid-il/check-mid-il.sml

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

revision 2844, Tue Dec 9 18:05:29 2014 UTC revision 2845, Fri Dec 12 06:46:23 2014 UTC
# Line 43  Line 43 
43              | Op.Min => (Ty.realTy, [Ty.realTy, Ty.realTy])              | Op.Min => (Ty.realTy, [Ty.realTy, Ty.realTy])
44              | Op.Clamp ty => (ty, [ty, ty, ty])              | Op.Clamp ty => (ty, [ty, ty, ty])
45              | Op.Lerp ty => (ty, [ty, ty, Ty.realTy])              | Op.Lerp ty => (ty, [ty, ty, Ty.realTy])
46                | Op.Sqrt => (Ty.realTy, [Ty.realTy])
47                | Op.sumVec d =>(Ty.TensorTy([]),[Ty.TensorTy([d])])
48              | Op.PrincipleEvec _ => raise Fail "Op.PrincipleEvec unimplemented"              | Op.PrincipleEvec _ => raise Fail "Op.PrincipleEvec unimplemented"
49              | Op.EigenVecs2x2 => eigenSig 2              | Op.EigenVecs2x2 => eigenSig 2
50              | Op.EigenVecs3x3 => eigenSig 3              | Op.EigenVecs3x3 => eigenSig 3
# Line 54  Line 56 
56              | Op.Index(ty as Ty.SeqTy(elemTy, _), _) => (elemTy, [ty])              | Op.Index(ty as Ty.SeqTy(elemTy, _), _) => (elemTy, [ty])
57              | Op.Subscript(ty as Ty.TensorTy dd) => (Ty.realTy, ty :: List.map (fn _ => Ty.intTy) dd)              | Op.Subscript(ty as Ty.TensorTy dd) => (Ty.realTy, ty :: List.map (fn _ => Ty.intTy) dd)
58              | Op.Subscript(ty as Ty.SeqTy(elemTy, d)) => (elemTy, [ty, Ty.intTy])              | Op.Subscript(ty as Ty.SeqTy(elemTy, d)) => (elemTy, [ty, Ty.intTy])
             | Op.Sqrt=>(Ty.TensorTy([]),[Ty.TensorTy([])])  
59              | Op.Ceiling d => (Ty.vecTy d, [Ty.vecTy d])              | Op.Ceiling d => (Ty.vecTy d, [Ty.vecTy d])
60             (* | Op.Floor d => (Ty.vecTy d, [Ty.vecTy d])*)             (* | Op.Floor d => (Ty.vecTy d, [Ty.vecTy d])*)
61              | Op.Floor 1 => (Ty.TensorTy [], [Ty.TensorTy []])              | Op.Floor 1 => (Ty.TensorTy [], [Ty.TensorTy []])
# Line 88  Line 89 
89                      | _ => (Ty.TensorTy[dim], [Ty.ImageTy info])                      | _ => (Ty.TensorTy[dim], [Ty.ImageTy info])
90                      (*end case*))                      (*end case*))
91                  end                  end
   
92  (*| Op.Norm(ty as Ty.TensorTy _) => (Ty.realTy, [ty])*)  (*| Op.Norm(ty as Ty.TensorTy _) => (Ty.realTy, [ty])*)
93  | Op.Normalize d => (Ty.vecTy d, [Ty.vecTy d])  | Op.Normalize d => (Ty.vecTy d, [Ty.vecTy d])
94    

Legend:
Removed from v.2844  
changed lines
  Added in v.2845

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