Home | History | Annotate | Download | only in ir
      1 ((function outerProduct
      2    (signature mat2
      3      (parameters
      4        (declare (in) vec2 u)
      5        (declare (in) vec2 v))
      6      ((declare () mat2 m)
      7       (assign (xy) (array_ref (var_ref m) (constant int (0))) (expression vec2 * (var_ref u) (swiz x (var_ref v))))
      8       (assign (xy) (array_ref (var_ref m) (constant int (1))) (expression vec2 * (var_ref u) (swiz y (var_ref v))))
      9       (return (var_ref m))))
     10 
     11    (signature mat2x3
     12      (parameters
     13        (declare (in) vec3 u)
     14        (declare (in) vec2 v))
     15      ((declare () mat2x3 m)
     16       (assign (xyz) (array_ref (var_ref m) (constant int (0))) (expression vec3 * (var_ref u) (swiz x (var_ref v))))
     17       (assign (xyz) (array_ref (var_ref m) (constant int (1))) (expression vec3 * (var_ref u) (swiz y (var_ref v))))
     18       (return (var_ref m))))
     19 
     20    (signature mat2x4
     21      (parameters
     22        (declare (in) vec4 u)
     23        (declare (in) vec2 v))
     24      ((declare () mat2x4 m)
     25       (assign (xyzw) (array_ref (var_ref m) (constant int (0))) (expression vec4 * (var_ref u) (swiz x (var_ref v))))
     26       (assign (xyzw) (array_ref (var_ref m) (constant int (1))) (expression vec4 * (var_ref u) (swiz y (var_ref v))))
     27       (return (var_ref m))))
     28 
     29    (signature mat3x2
     30      (parameters
     31        (declare (in) vec2 u)
     32        (declare (in) vec3 v))
     33      ((declare () mat3x2 m)
     34       (assign (xy) (array_ref (var_ref m) (constant int (0))) (expression vec2 * (var_ref u) (swiz x (var_ref v))))
     35       (assign (xy) (array_ref (var_ref m) (constant int (1))) (expression vec2 * (var_ref u) (swiz y (var_ref v))))
     36       (assign (xy) (array_ref (var_ref m) (constant int (2))) (expression vec2 * (var_ref u) (swiz z (var_ref v))))
     37       (return (var_ref m))
     38  ))
     39 
     40    (signature mat3
     41      (parameters
     42        (declare (in) vec3 u)
     43        (declare (in) vec3 v))
     44      ((declare () mat3 m)
     45       (assign (xyz) (array_ref (var_ref m) (constant int (0))) (expression vec3 * (var_ref u) (swiz x (var_ref v))))
     46       (assign (xyz) (array_ref (var_ref m) (constant int (1))) (expression vec3 * (var_ref u) (swiz y (var_ref v))))
     47       (assign (xyz) (array_ref (var_ref m) (constant int (2))) (expression vec3 * (var_ref u) (swiz z (var_ref v))))
     48       (return (var_ref m))))
     49 
     50    (signature mat3x4
     51      (parameters
     52        (declare (in) vec4 u)
     53        (declare (in) vec3 v))
     54      ((declare () mat3x4 m)
     55       (assign (xyzw) (array_ref (var_ref m) (constant int (0))) (expression vec4 * (var_ref u) (swiz x (var_ref v))))
     56       (assign (xyzw) (array_ref (var_ref m) (constant int (1))) (expression vec4 * (var_ref u) (swiz y (var_ref v))))
     57       (assign (xyzw) (array_ref (var_ref m) (constant int (2))) (expression vec4 * (var_ref u) (swiz z (var_ref v))))
     58       (return (var_ref m))))
     59 
     60    (signature mat4x2
     61      (parameters
     62        (declare (in) vec2 u)
     63        (declare (in) vec4 v))
     64      ((declare () mat4x2 m)
     65       (assign (xy) (array_ref (var_ref m) (constant int (0))) (expression vec2 * (var_ref u) (swiz x (var_ref v))))
     66       (assign (xy) (array_ref (var_ref m) (constant int (1))) (expression vec2 * (var_ref u) (swiz y (var_ref v))))
     67       (assign (xy) (array_ref (var_ref m) (constant int (2))) (expression vec2 * (var_ref u) (swiz z (var_ref v))))
     68       (assign (xy) (array_ref (var_ref m) (constant int (3))) (expression vec2 * (var_ref u) (swiz w (var_ref v))))
     69       (return (var_ref m))))
     70 
     71    (signature mat4x3
     72      (parameters
     73        (declare (in) vec3 u)
     74        (declare (in) vec4 v))
     75      ((declare () mat4x3 m)
     76       (assign (xyz) (array_ref (var_ref m) (constant int (0))) (expression vec3 * (var_ref u) (swiz x (var_ref v))))
     77       (assign (xyz) (array_ref (var_ref m) (constant int (1))) (expression vec3 * (var_ref u) (swiz y (var_ref v))))
     78       (assign (xyz) (array_ref (var_ref m) (constant int (2))) (expression vec3 * (var_ref u) (swiz z (var_ref v))))
     79       (assign (xyz) (array_ref (var_ref m) (constant int (3))) (expression vec3 * (var_ref u) (swiz w (var_ref v))))
     80       (return (var_ref m))))
     81 
     82    (signature mat4
     83      (parameters
     84        (declare (in) vec4 u)
     85        (declare (in) vec4 v))
     86      ((declare () mat4 m)
     87       (assign (xyzw) (array_ref (var_ref m) (constant int (0))) (expression vec4 * (var_ref u) (swiz x (var_ref v))))
     88       (assign (xyzw) (array_ref (var_ref m) (constant int (1))) (expression vec4 * (var_ref u) (swiz y (var_ref v))))
     89       (assign (xyzw) (array_ref (var_ref m) (constant int (2))) (expression vec4 * (var_ref u) (swiz z (var_ref v))))
     90       (assign (xyzw) (array_ref (var_ref m) (constant int (3))) (expression vec4 * (var_ref u) (swiz w (var_ref v))))
     91       (return (var_ref m))))
     92 ))
     93