Home My Page Projects Code Snippets Project Openings diderot

# SCM Repository

[diderot] Diff of /trunk/src/compiler/IL/gen/mid-il.spec
 [diderot] / trunk / src / compiler / IL / gen / mid-il.spec

# Diff of /trunk/src/compiler/IL/gen/mid-il.spec

revision 348, Wed Sep 22 15:52:48 2010 UTC revision 349, Fri Sep 24 00:24:20 2010 UTC
# Line 25  Line 25
25  Pow : : 2 :  Pow : : 2 :
26  #  #
27  ### vector operations  ### vector operations
28  # Dot<ty>(u, v) -- computes dot product of u and v; ty specifies u and v's type  # Dot<n>(u, v)  -- computes dot product of u and v; n specifies u and v's arity
29  Dot : ty : 2 :  Dot : int : 2 :
30  # Cross(u, v)   -- computes cross product of u and v  # Cross(u, v)   -- computes cross product of u and v
31  Cross : : 2 :  Cross : : 2 :
32  # Select<i>(u)  -- select ith element of vector u  # Select<n,i>(u)  -- select ith element of vector u; n specifies u's arity
33  Select : int : 1 :  Select : int * int : 1 :
34  # Norm<ty>(u)   -- computes length of vector u; ty specifies u's type  # Norm<n>(u)   -- computes length of vector u; n specifies u's arity
35  Norm : ty : 1 :  Norm : int : 1 :
36  # Scale<ty>(s,u) -- multiply scalar s time vector u; ty specifies u's type  # Scale<n>(s,u) -- multiply scalar s time vector u; n specifies u's arity
37  Scale : ty : 2 : scalar*vector multiplication  Scale : int : 2 : scalar*vector multiplication
38  # IncScale<ty>(s,u) -- divide vector u by scalar s; ty specifies u's type  # InvScale<n>(s,u) -- divide vector u by scalar s; n specifies u's arity
39  InvScale : ty : 2 : vector/scalar division  InvScale : int : 2 : vector/scalar division
40  CL : : 1 : linear anisotropy measures  CL : : 1 : linear anisotropy measures
41  PrincipleEvec : ty : 2 : principle eigenvector; ty is result vector type  PrincipleEvec : ty : 2 : principle eigenvector; ty is result vector type
42  Subscript : ty : 2 :  Subscript : ty : 2 :
# Line 50  Line 50
50  FloorToInt : int : 1 :  FloorToInt : int : 1 :
51  #  #
52  ### image/kernel operations  ### image/kernel operations
53    # VoxelAddress<V>(i, j, ...) -- compute the address of the voxel data indexed by i, j, ...
54  VoxelAddress : ImageInfo.info : * : compute the address of a voxel  VoxelAddress : ImageInfo.info : * : compute the address of a voxel
55  LoadVoxels : RawTypes.ty * int : 1 : load a vector of voxel values from an address  LoadVoxels : RawTypes.ty * int : 1 : load a vector of voxel values from an address
56    # Transform<V>(u) -- transforms the world-space vector u into the image-space specified by V.
57  Transform : ImageInfo.info : 1 : transform a position to image-space  Transform : ImageInfo.info : 1 : transform a position to image-space
58  # EvalKernel<i,h,k>(u)  # EvalKernel<i,h,k>(u) -- computes (D^k h)(u), where i is the size of vector u.
59  EvalKernel : int * Kernel.kernel * int : 1 : apply a kernel function to a scalar or vector of arguments  EvalKernel : int * Kernel.kernel * int : 1 : apply a kernel function to a scalar or vector of arguments
61  Inside : : 2 :  # ImageInfo<V>(u) -- tests to see if world-space position u is inside the volume occupied by the image V.
62    Inside : ImageInfo.info : 1 :
63  #  #
64  # inputs  # inputs
65  Input : string : 0 :  Input : string : 0 :

Legend:
 Removed from v.348 changed lines Added in v.349