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

SCM Repository

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

Diff of /branches/pure-cfg/src/compiler/translate/translate-basis.sml

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

revision 548, Thu Feb 17 22:41:53 2011 UTC revision 683, Thu Mar 24 00:42:27 2011 UTC
# Line 37  Line 37 
37            (* end case *))            (* end case *))
38    
39      fun dimVarToTensor dv = DstTy.tensorTy[pruneDim(MV.toDim dv)]      fun dimVarToTensor dv = DstTy.tensorTy[pruneDim(MV.toDim dv)]
40        fun dimVarToMatrix dv = let
41              val d = pruneDim(MV.toDim dv)
42              in
43                DstTy.tensorTy[d, d]        (* square matrix type *)
44              end
45      fun shapeVarToTensor sv = pruneShape sv      fun shapeVarToTensor sv = pruneShape sv
46    
47      fun assign (y, rator, xs) = [(y, IL.OP(rator, xs))]      fun assign (y, rator, xs) = [(y, IL.OP(rator, xs))]
# Line 96  Line 101 
101                                            assign(y, Op.Field(pruneDim(MV.toDim dv)), [img, h])),                                            assign(y, Op.Field(pruneDim(MV.toDim dv)), [img, h])),
102                  (BV.fn_cos,             simpleOp Op.Cos),                  (BV.fn_cos,             simpleOp Op.Cos),
103                  (BV.fn_dot,             vectorOp Op.Dot),                  (BV.fn_dot,             vectorOp Op.Dot),
104                    (BV.fn_evals,           fn _ => raise Fail "evals not implemented yet"), (* FIXME *)
105                    (BV.fn_evecs,           fn _ => raise Fail "evecs not implemented yet"), (* FIXME *)
106                  (BV.fn_inside,          fn (y, [_, dv, _], xs) =>                  (BV.fn_inside,          fn (y, [_, dv, _], xs) =>
107                                            assign(y, Op.Inside(pruneDim(MV.toDim dv)), xs)),                                            assign(y, Op.Inside(pruneDim(MV.toDim dv)), xs)),
108                  (BV.fn_max,             simpleOp Op.Max),                  (BV.fn_max,             simpleOp Op.Max),
109                  (BV.fn_min,             simpleOp Op.Min),                  (BV.fn_min,             simpleOp Op.Min),
110                  (BV.fn_modulate,        vectorOp Op.Mul),                  (BV.fn_modulate,        vectorOp Op.Mul),
111                    (BV.fn_outer,           fn _ => raise Fail "outer not implemented yet"), (* FIXME *)
112                  (BV.fn_pow,             simpleOp Op.Pow),                  (BV.fn_pow,             simpleOp Op.Pow),
113                  (BV.fn_principleEvec,   vectorOp Op.PrincipleEvec),                  (BV.fn_principleEvec,   vectorOp Op.PrincipleEvec),
114                  (BV.fn_sin,             simpleOp Op.Sin),                  (BV.fn_sin,             simpleOp Op.Sin),
115                    (BV.fn_trace,           fn (y, [dv], xs) => assign(y, Op.Trace(dimVarToMatrix dv), xs)),
116                  (BV.kn_bspln3,          kernel Kernel.bspln3),                  (BV.kn_bspln3,          kernel Kernel.bspln3),
117                  (BV.kn_bspln5,          kernel Kernel.bspln5),                  (BV.kn_bspln5,          kernel Kernel.bspln5),
118                  (BV.kn_ctmr,            kernel Kernel.ctmr),                  (BV.kn_ctmr,            kernel Kernel.ctmr),

Legend:
Removed from v.548  
changed lines
  Added in v.683

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