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

SCM Repository

[diderot] Diff of /branches/vis12-cl/src/compiler/c-util/tree-to-c.sml
ViewVC logotype

Diff of /branches/vis12-cl/src/compiler/c-util/tree-to-c.sml

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

revision 1754, Wed Mar 21 07:48:01 2012 UTC revision 1793, Thu Apr 5 09:53:28 2012 UTC
# Line 69  Line 69 
69              | Ty.SeqTy(Ty.IntTy, n) => CL.T_Named(N.ivecTy n)              | Ty.SeqTy(Ty.IntTy, n) => CL.T_Named(N.ivecTy n)
70              | Ty.SeqTy(ty, n) => CL.T_Array(trType ty, SOME n)              | Ty.SeqTy(ty, n) => CL.T_Array(trType ty, SOME n)
71              | Ty.DynSeqTy _ => CL.T_Ptr(CL.T_Named N.dynSeqTy)              | Ty.DynSeqTy _ => CL.T_Ptr(CL.T_Named N.dynSeqTy)
72              | Ty.AddrTy(ImageInfo.ImgInfo{ty=(_, rTy), ...}) => CL.T_Ptr(CL.T_Num rTy)              | Ty.AddrTy info => CL.T_Ptr(CL.T_Num(ImageInfo.sampleTy info))
73              | Ty.ImageTy(ImageInfo.ImgInfo{dim, ...}) => CL.T_Ptr(CL.T_Named(N.imageTy dim))              | Ty.ImageTy info => CL.T_Ptr(CL.T_Named(N.imageTy(ImageInfo.dim info)))
74              | _ => raise Fail(concat["TreeToC.trType(", Ty.toString ty, ")"])              | _ => raise Fail(concat["TreeToC.trType(", Ty.toString ty, ")"])
75            (* end case *))            (* end case *))
76    
# Line 214  Line 214 
214              | (Op.IntToReal, [a]) => CL.mkCast(!N.gRealTy, a)              | (Op.IntToReal, [a]) => CL.mkCast(!N.gRealTy, a)
215              | (Op.RealToInt 1, [a]) => CL.mkCast(!N.gIntTy, a)              | (Op.RealToInt 1, [a]) => CL.mkCast(!N.gIntTy, a)
216              | (Op.RealToInt d, args) => CL.mkApply(N.vecftoi d, args)              | (Op.RealToInt d, args) => CL.mkApply(N.vecftoi d, args)
217  (* FIXME: need type info *)              | (Op.ImageAddress info, [a]) => let
218              | (Op.ImageAddress(ImageInfo.ImgInfo{ty=(_,rTy), ...}), [a]) => let                  val cTy = CL.T_Ptr(CL.T_Num(ImageInfo.sampleTy info))
                 val cTy = CL.T_Ptr(CL.T_Num rTy)  
219                  in                  in
220                    CL.mkCast(cTy, CL.mkIndirect(a, "data"))                    CL.mkCast(cTy, CL.mkIndirect(a, "data"))
221                  end                  end
# Line 230  Line 229 
229                  end                  end
230              | (Op.LoadVoxels _, [a]) =>              | (Op.LoadVoxels _, [a]) =>
231                  raise Fail("impossible " ^ Op.toString rator)                  raise Fail("impossible " ^ Op.toString rator)
232              | (Op.PosToImgSpace(ImageInfo.ImgInfo{dim, ...}), [img, pos]) =>              | (Op.PosToImgSpace info, [img, pos]) =>
233                  CL.mkApply(N.toImageSpace dim, [img, pos])                  CL.mkApply(N.toImageSpace(ImageInfo.dim info), [img, pos])
234              | (Op.TensorToWorldSpace(info, ty), [v, x]) =>              | (Op.TensorToWorldSpace(info, ty), [v, x]) =>
235                  CL.mkApply(N.toWorldSpace ty, [v, x])                  CL.mkApply(N.toWorldSpace ty, [v, x])
236              | (Op.LoadImage info, [a]) =>              | (Op.LoadImage info, [a]) =>
237                  raise Fail("impossible " ^ Op.toString rator)                  raise Fail("impossible " ^ Op.toString rator)
238              | (Op.Inside(ImageInfo.ImgInfo{dim, ...}, s), [pos, img]) =>              | (Op.Inside(info, s), [pos, img]) =>
239                  CL.mkApply(N.inside dim, [pos, img, intExp s])                  CL.mkApply(N.inside(ImageInfo.dim info), [pos, img, intExp s])
240              | (Op.Input(ty, desc, name), []) =>              | (Op.Input(ty, desc, name), []) =>
241                  raise Fail("impossible " ^ Op.toString rator)                  raise Fail("impossible " ^ Op.toString rator)
242              | (Op.InputWithDefault(ty, desc, name), [a]) =>              | (Op.InputWithDefault(ty, desc, name), [a]) =>

Legend:
Removed from v.1754  
changed lines
  Added in v.1793

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