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

SCM Repository

[diderot] Diff of /branches/vis12/src/compiler/high-il/high-il.sml
ViewVC logotype

Diff of /branches/vis12/src/compiler/high-il/high-il.sml

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

revision 1944, Thu Jul 5 17:19:46 2012 UTC revision 1945, Fri Jul 6 14:54:21 2012 UTC
# Line 67  Line 67 
67        | MulMatMat of ty * ty        | MulMatMat of ty * ty
68        | MulVecTen3 of ty        | MulVecTen3 of ty
69        | MulTen3Vec of ty        | MulTen3Vec of ty
70          | ColonMul of ty * ty
71        | Cross        | Cross
72        | Outer of ty        | Outer of ty
73        | Norm of ty        | Norm of ty
# Line 130  Line 131 
131        | resultArity (MulMatMat _) = 1        | resultArity (MulMatMat _) = 1
132        | resultArity (MulVecTen3 _) = 1        | resultArity (MulVecTen3 _) = 1
133        | resultArity (MulTen3Vec _) = 1        | resultArity (MulTen3Vec _) = 1
134          | resultArity (ColonMul _) = 1
135        | resultArity Cross = 1        | resultArity Cross = 1
136        | resultArity (Outer _) = 1        | resultArity (Outer _) = 1
137        | resultArity (Norm _) = 1        | resultArity (Norm _) = 1
# Line 193  Line 195 
195        | arity (MulMatMat _) = 2        | arity (MulMatMat _) = 2
196        | arity (MulVecTen3 _) = 2        | arity (MulVecTen3 _) = 2
197        | arity (MulTen3Vec _) = 2        | arity (MulTen3Vec _) = 2
198          | arity (ColonMul _) = 2
199        | arity Cross = 2        | arity Cross = 2
200        | arity (Outer _) = 2        | arity (Outer _) = 2
201        | arity (Norm _) = 1        | arity (Norm _) = 1
# Line 256  Line 259 
259        | same (MulMatMat(a0,a1), MulMatMat(b0,b1)) = samety(a0, b0) andalso samety(a1, b1)        | same (MulMatMat(a0,a1), MulMatMat(b0,b1)) = samety(a0, b0) andalso samety(a1, b1)
260        | same (MulVecTen3(a0), MulVecTen3(b0)) = samety(a0, b0)        | same (MulVecTen3(a0), MulVecTen3(b0)) = samety(a0, b0)
261        | same (MulTen3Vec(a0), MulTen3Vec(b0)) = samety(a0, b0)        | same (MulTen3Vec(a0), MulTen3Vec(b0)) = samety(a0, b0)
262          | same (ColonMul(a0,a1), ColonMul(b0,b1)) = samety(a0, b0) andalso samety(a1, b1)
263        | same (Cross, Cross) = true        | same (Cross, Cross) = true
264        | same (Outer(a0), Outer(b0)) = samety(a0, b0)        | same (Outer(a0), Outer(b0)) = samety(a0, b0)
265        | same (Norm(a0), Norm(b0)) = samety(a0, b0)        | same (Norm(a0), Norm(b0)) = samety(a0, b0)
# Line 320  Line 324 
324        | hash (MulMatMat(a0,a1)) = 0w83 + hashty a0 + hashty a1        | hash (MulMatMat(a0,a1)) = 0w83 + hashty a0 + hashty a1
325        | hash (MulVecTen3(a0)) = 0w89 + hashty a0        | hash (MulVecTen3(a0)) = 0w89 + hashty a0
326        | hash (MulTen3Vec(a0)) = 0w97 + hashty a0        | hash (MulTen3Vec(a0)) = 0w97 + hashty a0
327        | hash Cross = 0w101        | hash (ColonMul(a0,a1)) = 0w101 + hashty a0 + hashty a1
328        | hash (Outer(a0)) = 0w103 + hashty a0        | hash Cross = 0w103
329        | hash (Norm(a0)) = 0w107 + hashty a0        | hash (Outer(a0)) = 0w107 + hashty a0
330        | hash (Normalize(a0)) = 0w109 + hashty a0        | hash (Norm(a0)) = 0w109 + hashty a0
331        | hash (Scale(a0)) = 0w113 + hashty a0        | hash (Normalize(a0)) = 0w113 + hashty a0
332        | hash (PrincipleEvec(a0)) = 0w127 + hashty a0        | hash (Scale(a0)) = 0w127 + hashty a0
333        | hash Eigen2x2 = 0w131        | hash (PrincipleEvec(a0)) = 0w131 + hashty a0
334        | hash Eigen3x3 = 0w137        | hash Eigen2x2 = 0w137
335        | hash (Identity(a0)) = 0w139 + hashint a0        | hash Eigen3x3 = 0w139
336        | hash (Zero(a0)) = 0w149 + hashty a0        | hash (Identity(a0)) = 0w149 + hashint a0
337        | hash (Trace(a0)) = 0w151 + hashty a0        | hash (Zero(a0)) = 0w151 + hashty a0
338        | hash (Slice(a0,a1)) = 0w157 + hashty a0 + hashmask a1        | hash (Trace(a0)) = 0w157 + hashty a0
339        | hash (TensorSub(a0)) = 0w163 + hashty a0        | hash (Slice(a0,a1)) = 0w163 + hashty a0 + hashmask a1
340        | hash (Select(a0,a1)) = 0w167 + hashty a0 + hashint a1        | hash (TensorSub(a0)) = 0w167 + hashty a0
341        | hash (SeqSub(a0)) = 0w173 + hashty a0        | hash (Select(a0,a1)) = 0w173 + hashty a0 + hashint a1
342        | hash (MkDynamic(a0,a1)) = 0w179 + hashty a0 + hashint a1        | hash (SeqSub(a0)) = 0w179 + hashty a0
343        | hash (Append(a0)) = 0w181 + hashty a0        | hash (MkDynamic(a0,a1)) = 0w181 + hashty a0 + hashint a1
344        | hash (Prepend(a0)) = 0w191 + hashty a0        | hash (Append(a0)) = 0w191 + hashty a0
345        | hash (Concat(a0)) = 0w193 + hashty a0        | hash (Prepend(a0)) = 0w193 + hashty a0
346        | hash (Length(a0)) = 0w197 + hashty a0        | hash (Concat(a0)) = 0w197 + hashty a0
347        | hash IntToReal = 0w199        | hash (Length(a0)) = 0w199 + hashty a0
348        | hash TruncToInt = 0w211        | hash IntToReal = 0w211
349        | hash RoundToInt = 0w223        | hash TruncToInt = 0w223
350        | hash CeilToInt = 0w227        | hash RoundToInt = 0w227
351        | hash FloorToInt = 0w229        | hash CeilToInt = 0w229
352        | hash (Kernel(a0,a1)) = 0w233 + Kernel.hash a0 + hashint a1        | hash FloorToInt = 0w233
353        | hash (LoadImage(a0)) = 0w239 + ImageInfo.hash a0        | hash (Kernel(a0,a1)) = 0w239 + Kernel.hash a0 + hashint a1
354        | hash (Inside(a0)) = 0w241 + hashint a0        | hash (LoadImage(a0)) = 0w241 + ImageInfo.hash a0
355        | hash (Field(a0)) = 0w251 + hashint a0        | hash (Inside(a0)) = 0w251 + hashint a0
356        | hash (Probe(a0,a1)) = 0w257 + hashty a0 + hashty a1        | hash (Field(a0)) = 0w257 + hashint a0
357        | hash AddField = 0w263        | hash (Probe(a0,a1)) = 0w263 + hashty a0 + hashty a1
358        | hash SubField = 0w269        | hash AddField = 0w269
359        | hash ScaleField = 0w271        | hash SubField = 0w271
360        | hash NegField = 0w277        | hash ScaleField = 0w277
361        | hash DiffField = 0w281        | hash NegField = 0w281
362        | hash (Input(a0,a1,a2)) = 0w283 + hashty a0 + hashstring a1 + hashstring a2        | hash DiffField = 0w283
363        | hash (InputWithDefault(a0,a1,a2)) = 0w293 + hashty a0 + hashstring a1 + hashstring a2        | hash (Input(a0,a1,a2)) = 0w293 + hashty a0 + hashstring a1 + hashstring a2
364        | hash (Print(a0)) = 0w307 + hashtys a0        | hash (InputWithDefault(a0,a1,a2)) = 0w307 + hashty a0 + hashstring a1 + hashstring a2
365          | hash (Print(a0)) = 0w311 + hashtys a0
366    
367      fun toString (Add(a0)) = concat["Add<", tyToString a0, ">"]      fun toString (Add(a0)) = concat["Add<", tyToString a0, ">"]
368        | toString (Sub(a0)) = concat["Sub<", tyToString a0, ">"]        | toString (Sub(a0)) = concat["Sub<", tyToString a0, ">"]
# Line 383  Line 388 
388        | toString (MulMatMat(a0,a1)) = concat["MulMatMat<", tyToString a0, ",", tyToString a1, ">"]        | toString (MulMatMat(a0,a1)) = concat["MulMatMat<", tyToString a0, ",", tyToString a1, ">"]
389        | toString (MulVecTen3(a0)) = concat["MulVecTen3<", tyToString a0, ">"]        | toString (MulVecTen3(a0)) = concat["MulVecTen3<", tyToString a0, ">"]
390        | toString (MulTen3Vec(a0)) = concat["MulTen3Vec<", tyToString a0, ">"]        | toString (MulTen3Vec(a0)) = concat["MulTen3Vec<", tyToString a0, ">"]
391          | toString (ColonMul(a0,a1)) = concat["ColonMul<", tyToString a0, ",", tyToString a1, ">"]
392        | toString Cross = "Cross"        | toString Cross = "Cross"
393        | toString (Outer(a0)) = concat["Outer<", tyToString a0, ">"]        | toString (Outer(a0)) = concat["Outer<", tyToString a0, ">"]
394        | toString (Norm(a0)) = concat["Norm<", tyToString a0, ">"]        | toString (Norm(a0)) = concat["Norm<", tyToString a0, ">"]

Legend:
Removed from v.1944  
changed lines
  Added in v.1945

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