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

SCM Repository

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

Diff of /branches/pure-cfg/src/compiler/mid-il/mid-il.sml

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

revision 806, Tue Apr 12 14:07:55 2011 UTC revision 807, Tue Apr 12 15:41:18 2011 UTC
# Line 45  Line 45 
45        | Min        | Min
46        | Lerp of ty        | Lerp of ty
47        | Dot of int        | Dot of int
48          | MulVecMat of int * int
49          | MulMatVec of int * int
50          | MulMatMat of int * int * int
51        | Cross        | Cross
52        | Select of ty * int        | Select of ty * int
53        | Norm of int        | Norm of int
# Line 89  Line 92 
92        | arity Min = 2        | arity Min = 2
93        | arity (Lerp _) = 3        | arity (Lerp _) = 3
94        | arity (Dot _) = 2        | arity (Dot _) = 2
95          | arity (MulVecMat _) = 2
96          | arity (MulMatVec _) = 2
97          | arity (MulMatMat _) = 2
98        | arity Cross = 2        | arity Cross = 2
99        | arity (Select _) = 1        | arity (Select _) = 1
100        | arity (Norm _) = 1        | arity (Norm _) = 1
# Line 133  Line 139 
139        | same (Min, Min) = true        | same (Min, Min) = true
140        | same (Lerp(a0), Lerp(b0)) = samety(a0, b0)        | same (Lerp(a0), Lerp(b0)) = samety(a0, b0)
141        | same (Dot(a0), Dot(b0)) = sameint(a0, b0)        | same (Dot(a0), Dot(b0)) = sameint(a0, b0)
142          | same (MulVecMat(a0,a1), MulVecMat(b0,b1)) = sameint(a0, b0) andalso sameint(a1, b1)
143          | same (MulMatVec(a0,a1), MulMatVec(b0,b1)) = sameint(a0, b0) andalso sameint(a1, b1)
144          | same (MulMatMat(a0,a1,a2), MulMatMat(b0,b1,b2)) = sameint(a0, b0) andalso sameint(a1, b1) andalso sameint(a2, b2)
145        | same (Cross, Cross) = true        | same (Cross, Cross) = true
146        | same (Select(a0,a1), Select(b0,b1)) = samety(a0, b0) andalso sameint(a1, b1)        | same (Select(a0,a1), Select(b0,b1)) = samety(a0, b0) andalso sameint(a1, b1)
147        | same (Norm(a0), Norm(b0)) = sameint(a0, b0)        | same (Norm(a0), Norm(b0)) = sameint(a0, b0)
# Line 178  Line 187 
187        | hash Min = 0w53        | hash Min = 0w53
188        | hash (Lerp(a0)) = 0w59 + hashty a0        | hash (Lerp(a0)) = 0w59 + hashty a0
189        | hash (Dot(a0)) = 0w61 + hashint a0        | hash (Dot(a0)) = 0w61 + hashint a0
190        | hash Cross = 0w67        | hash (MulVecMat(a0,a1)) = 0w67 + hashint a0 + hashint a1
191        | hash (Select(a0,a1)) = 0w71 + hashty a0 + hashint a1        | hash (MulMatVec(a0,a1)) = 0w71 + hashint a0 + hashint a1
192        | hash (Norm(a0)) = 0w73 + hashint a0        | hash (MulMatMat(a0,a1,a2)) = 0w73 + hashint a0 + hashint a1 + hashint a2
193        | hash (Normalize(a0)) = 0w79 + hashint a0        | hash Cross = 0w79
194        | hash (Scale(a0)) = 0w83 + hashint a0        | hash (Select(a0,a1)) = 0w83 + hashty a0 + hashint a1
195        | hash (InvScale(a0)) = 0w89 + hashint a0        | hash (Norm(a0)) = 0w89 + hashint a0
196        | hash CL = 0w97        | hash (Normalize(a0)) = 0w97 + hashint a0
197        | hash (PrincipleEvec(a0)) = 0w101 + hashty a0        | hash (Scale(a0)) = 0w101 + hashint a0
198        | hash (Identity(a0)) = 0w103 + hashint a0        | hash (InvScale(a0)) = 0w103 + hashint a0
199        | hash (Trace(a0)) = 0w107 + hashint a0        | hash CL = 0w107
200        | hash (Subscript(a0)) = 0w109 + hashty a0        | hash (PrincipleEvec(a0)) = 0w109 + hashty a0
201        | hash (Ceiling(a0)) = 0w113 + hashint a0        | hash (Identity(a0)) = 0w113 + hashint a0
202        | hash (Floor(a0)) = 0w127 + hashint a0        | hash (Trace(a0)) = 0w127 + hashint a0
203        | hash (Round(a0)) = 0w131 + hashint a0        | hash (Subscript(a0)) = 0w131 + hashty a0
204        | hash (Trunc(a0)) = 0w137 + hashint a0        | hash (Ceiling(a0)) = 0w137 + hashint a0
205        | hash IntToReal = 0w139        | hash (Floor(a0)) = 0w139 + hashint a0
206        | hash (RealToInt(a0)) = 0w149 + hashint a0        | hash (Round(a0)) = 0w149 + hashint a0
207        | hash (VoxelAddress(a0)) = 0w151 + ImageInfo.hash a0        | hash (Trunc(a0)) = 0w151 + hashint a0
208        | hash (LoadVoxels(a0,a1)) = 0w157 + ImageInfo.hash a0 + hashint a1        | hash IntToReal = 0w157
209        | hash (PosToImgSpace(a0)) = 0w163 + ImageInfo.hash a0        | hash (RealToInt(a0)) = 0w163 + hashint a0
210        | hash (GradToWorldSpace(a0)) = 0w167 + ImageInfo.hash a0        | hash (VoxelAddress(a0)) = 0w167 + ImageInfo.hash a0
211        | hash (EvalKernel(a0,a1,a2)) = 0w173 + hashint a0 + Kernel.hash a1 + hashint a2        | hash (LoadVoxels(a0,a1)) = 0w173 + ImageInfo.hash a0 + hashint a1
212        | hash (LoadImage(a0)) = 0w179 + ImageInfo.hash a0        | hash (PosToImgSpace(a0)) = 0w179 + ImageInfo.hash a0
213        | hash (Inside(a0,a1)) = 0w181 + ImageInfo.hash a0 + hashint a1        | hash (GradToWorldSpace(a0)) = 0w181 + ImageInfo.hash a0
214        | hash (Input(a0,a1)) = 0w191 + hashty a0 + hashstring a1        | hash (EvalKernel(a0,a1,a2)) = 0w191 + hashint a0 + Kernel.hash a1 + hashint a2
215        | hash (InputWithDefault(a0,a1)) = 0w193 + hashty a0 + hashstring a1        | hash (LoadImage(a0)) = 0w193 + ImageInfo.hash a0
216          | hash (Inside(a0,a1)) = 0w197 + ImageInfo.hash a0 + hashint a1
217          | hash (Input(a0,a1)) = 0w199 + hashty a0 + hashstring a1
218          | hash (InputWithDefault(a0,a1)) = 0w211 + hashty a0 + hashstring a1
219    
220      fun toString (Add(a0)) = concat["Add<", tyToString a0, ">"]      fun toString (Add(a0)) = concat["Add<", tyToString a0, ">"]
221        | toString (Sub(a0)) = concat["Sub<", tyToString a0, ">"]        | toString (Sub(a0)) = concat["Sub<", tyToString a0, ">"]
# Line 222  Line 234 
234        | toString Min = "Min"        | toString Min = "Min"
235        | toString (Lerp(a0)) = concat["Lerp<", tyToString a0, ">"]        | toString (Lerp(a0)) = concat["Lerp<", tyToString a0, ">"]
236        | toString (Dot(a0)) = concat["Dot<", intToString a0, ">"]        | toString (Dot(a0)) = concat["Dot<", intToString a0, ">"]
237          | toString (MulVecMat(a0,a1)) = concat["MulVecMat<", intToString a0, ",", intToString a1, ">"]
238          | toString (MulMatVec(a0,a1)) = concat["MulMatVec<", intToString a0, ",", intToString a1, ">"]
239          | toString (MulMatMat(a0,a1,a2)) = concat["MulMatMat<", intToString a0, ",", intToString a1, ",", intToString a2, ">"]
240        | toString Cross = "Cross"        | toString Cross = "Cross"
241        | toString (Select(a0,a1)) = concat["Select<", tyToString a0, ",", intToString a1, ">"]        | toString (Select(a0,a1)) = concat["Select<", tyToString a0, ",", intToString a1, ">"]
242        | toString (Norm(a0)) = concat["Norm<", intToString a0, ">"]        | toString (Norm(a0)) = concat["Norm<", intToString a0, ">"]

Legend:
Removed from v.806  
changed lines
  Added in v.807

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