54 |
(Ty.AddrTy, List.tabulate(dim, fn _ => Ty.intTy)) |
(Ty.AddrTy, List.tabulate(dim, fn _ => Ty.intTy)) |
55 |
| Op.LoadVoxels(_, d) => (Ty.VecTy d, [Ty.AddrTy]) |
| Op.LoadVoxels(_, d) => (Ty.VecTy d, [Ty.AddrTy]) |
56 |
| Op.Transform(ImageInfo.ImgInfo{dim, ...}) => (Ty.VecTy dim, [Ty.VecTy dim]) |
| Op.Transform(ImageInfo.ImgInfo{dim, ...}) => (Ty.VecTy dim, [Ty.VecTy dim]) |
57 |
| Op.EvalKernel(d, _, _) => (Ty.realTy, [Ty.VecTy d]) |
| Op.EvalKernel(d, _, _) => (Ty.VecTy d, [Ty.VecTy d]) |
58 |
| Op.LoadImage _ => (Ty.ImageTy, []) |
| Op.LoadImage _ => (Ty.ImageTy, []) |
59 |
| Op.Inside(ImageInfo.ImgInfo{dim, ...}) => (Ty.BoolTy, [Ty.VecTy dim, Ty.ImageTy]) |
| Op.Inside(ImageInfo.ImgInfo{dim, ...}) => (Ty.BoolTy, [Ty.VecTy dim, Ty.ImageTy]) |
60 |
| Op.Input(ty, _) => (ty, []) |
| Op.Input(ty, _) => (ty, []) |