Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save shadeslayer/f29274858486076dd2f37d4fc1463e12 to your computer and use it in GitHub Desktop.
Save shadeslayer/f29274858486076dd2f37d4fc1463e12 to your computer and use it in GitHub Desktop.
: GLSL IR for shader 35:
(
(declare (location=2 shader_out ) vec4 gl_FragColor)
(declare (location=24 shader_in ) bool gl_FrontFacing)
(declare (location=0 shader_in ) vec4 gl_FragCoord)
(declare (location=2 shader_in ) vec4 gl_SecondaryColor)
(declare (location=1 shader_in ) vec4 gl_Color)
(declare (location=3 shader_in ) float gl_FogFragCoord)
(declare (location=4 shader_in ) (array vec4 0) gl_TexCoord)
(declare (uniform ) (array mat4 8) gl_TextureMatrixInverseTranspose)
(declare (uniform ) (array mat4 8) gl_TextureMatrixTranspose)
(declare (uniform ) mat4 gl_ModelViewProjectionMatrixInverseTranspose)
(declare (uniform ) mat4 gl_ProjectionMatrixInverseTranspose)
(declare (uniform ) mat4 gl_ModelViewMatrixInverseTranspose)
(declare (uniform ) mat4 gl_ModelViewProjectionMatrixTranspose)
(declare (uniform ) mat4 gl_ProjectionMatrixTranspose)
(declare (uniform ) mat4 gl_ModelViewMatrixTranspose)
(declare (uniform ) mat4 gl_ModelViewProjectionMatrix)
(declare (uniform ) int source_repeat_mode)
(declare (uniform ) int mask_repeat_mode)
(declare (shader_in ) vec2 source_texture)
(declare (uniform ) sampler2D source_sampler)
(declare (uniform ) vec4 source_wh)
( function rel_tex_coord
(signature vec2
(parameters
(declare (in ) vec2 texture)
(declare (in ) vec4 wh)
(declare (in ) int repeat)
)
(
(declare (temporary ) vec2 return_value)
(declare () vec2 rel_tex)
(assign (xy) (var_ref rel_tex) (expression vec2 * (var_ref texture) (swiz xy (var_ref wh) )) )
(if (expression bool == (var_ref repeat) (constant int (10)) ) (
(assign (xy) (var_ref return_value) (var_ref rel_tex) )
)
(
(if (expression bool == (var_ref repeat) (constant int (11)) ) (
(assign (xy) (var_ref rel_tex) (expression vec2 + (expression vec2 floor (var_ref rel_tex) ) (expression vec2 / (expression vec2 fract (var_ref rel_tex) ) (swiz xy (var_ref wh) )) ) )
)
(
(if (expression bool == (var_ref repeat) (constant int (12)) ) (
(if (expression bool >= (swiz x (var_ref rel_tex) )(constant float (1.000000)) ) (
(assign (x) (var_ref rel_tex) (expression float + (constant float (1.000000)) (expression float neg (expression float / (expression float * (swiz z (var_ref wh) )(swiz x (var_ref wh) )) (constant float (2.000000)) ) ) ) )
)
(
(if (expression bool < (swiz x (var_ref rel_tex) )(constant float (0.000000)) ) (
(assign (x) (var_ref rel_tex) (constant float (0.000000)) )
)
())
))
(if (expression bool >= (swiz y (var_ref rel_tex) )(constant float (1.000000)) ) (
(assign (y) (var_ref rel_tex) (expression float + (constant float (1.000000)) (expression float neg (expression float / (expression float * (swiz w (var_ref wh) )(swiz y (var_ref wh) )) (constant float (2.000000)) ) ) ) )
)
(
(if (expression bool < (swiz y (var_ref rel_tex) )(constant float (0.000000)) ) (
(assign (y) (var_ref rel_tex) (constant float (0.000000)) )
)
())
))
(assign (xy) (var_ref rel_tex) (expression vec2 / (var_ref rel_tex) (swiz xy (var_ref wh) )) )
)
(
(if (expression bool == (var_ref repeat) (constant int (13)) ) (
(declare (temporary ) float mod_retval)
(assign (x) (var_ref mod_retval) (expression float % (expression float abs (expression float floor (swiz x (var_ref rel_tex) )) ) (constant float (2.000000)) ) )
(if (expression bool < (expression float + (constant float (1.000000)) (expression float neg (var_ref mod_retval) ) ) (constant float (0.001000)) ) (
(assign (x) (var_ref rel_tex) (expression float + (constant float (2.000000)) (expression float neg (expression float / (expression float + (constant float (1.000000)) (expression float neg (expression float fract (swiz x (var_ref rel_tex) )) ) ) (swiz x (var_ref wh) )) ) ) )
)
(
(assign (x) (var_ref rel_tex) (expression float / (expression float fract (swiz x (var_ref rel_tex) )) (swiz x (var_ref wh) )) )
))
(declare (temporary ) float mod_retval@532)
(assign (x) (var_ref mod_retval@532) (expression float % (expression float abs (expression float floor (swiz y (var_ref rel_tex) )) ) (constant float (2.000000)) ) )
(if (expression bool < (expression float + (constant float (1.000000)) (expression float neg (var_ref mod_retval@532) ) ) (constant float (0.001000)) ) (
(assign (y) (var_ref rel_tex) (expression float + (constant float (2.000000)) (expression float neg (expression float / (expression float + (constant float (1.000000)) (expression float neg (expression float fract (swiz y (var_ref rel_tex) )) ) ) (swiz y (var_ref wh) )) ) ) )
)
(
(assign (y) (var_ref rel_tex) (expression float / (expression float fract (swiz y (var_ref rel_tex) )) (swiz y (var_ref wh) )) )
))
)
())
))
))
(assign (xy) (var_ref return_value) (var_ref rel_tex) )
))
(return (var_ref return_value) )
))
)
( function rel_sampler_rgba
(signature vec4
(parameters
(declare (in ) sampler2D tex_image)
(declare (in ) vec2 tex)
(declare (in ) vec4 wh)
(declare (in ) int repeat)
)
(
(declare (temporary ) bool execute_flag)
(assign (x) (var_ref execute_flag) (constant bool (1)) )
(declare (temporary ) vec4 return_value)
(if (expression bool >= (var_ref repeat) (constant int (10)) ) (
(declare (temporary ) vec2 rel_tex_coord_retval)
(call rel_tex_coord (var_ref rel_tex_coord_retval) ((var_ref tex) (var_ref wh) (var_ref repeat) ))
(assign (xy) (var_ref tex) (var_ref rel_tex_coord_retval) )
(if (expression bool == (var_ref repeat) (constant int (10)) ) (
(if (expression bool || (expression bool || (expression bool || (expression bool < (swiz x (var_ref rel_tex_coord_retval) )(constant float (0.000000)) ) (expression bool >= (swiz x (var_ref rel_tex_coord_retval) )(constant float (1.000000)) ) ) (expression bool < (swiz y (var_ref rel_tex_coord_retval) )(constant float (0.000000)) ) ) (expression bool >= (swiz y (var_ref rel_tex_coord_retval) )(constant float (1.000000)) ) ) (
(assign (xyzw) (var_ref return_value) (constant vec4 (0.000000 0.000000 0.000000 0.000000)) )
(assign (x) (var_ref execute_flag) (constant bool (0)) )
)
(
(assign (xy) (var_ref tex) (expression vec2 / (expression vec2 fract (var_ref rel_tex_coord_retval) ) (swiz xy (var_ref wh) )) )
))
)
())
)
())
(if (var_ref execute_flag) (
(assign (xyzw) (var_ref return_value) (tex vec4 (var_ref tex_image) (var_ref tex) 0 1 () ))
(assign (x) (var_ref execute_flag) (constant bool (0)) )
)
())
(return (var_ref return_value) )
))
)
( function rel_sampler_rgbx
(signature vec4
(parameters
(declare (in ) sampler2D tex_image)
(declare (in ) vec2 tex)
(declare (in ) vec4 wh)
(declare (in ) int repeat)
)
(
(declare (temporary ) bool execute_flag)
(assign (x) (var_ref execute_flag) (constant bool (1)) )
(declare (temporary ) vec4 return_value)
(if (expression bool >= (var_ref repeat) (constant int (10)) ) (
(declare (temporary ) vec2 rel_tex_coord_retval)
(call rel_tex_coord (var_ref rel_tex_coord_retval) ((var_ref tex) (var_ref wh) (var_ref repeat) ))
(assign (xy) (var_ref tex) (var_ref rel_tex_coord_retval) )
(if (expression bool == (var_ref repeat) (constant int (10)) ) (
(if (expression bool || (expression bool || (expression bool || (expression bool < (swiz x (var_ref rel_tex_coord_retval) )(constant float (0.000000)) ) (expression bool >= (swiz x (var_ref rel_tex_coord_retval) )(constant float (1.000000)) ) ) (expression bool < (swiz y (var_ref rel_tex_coord_retval) )(constant float (0.000000)) ) ) (expression bool >= (swiz y (var_ref rel_tex_coord_retval) )(constant float (1.000000)) ) ) (
(assign (xyzw) (var_ref return_value) (constant vec4 (0.000000 0.000000 0.000000 0.000000)) )
(assign (x) (var_ref execute_flag) (constant bool (0)) )
)
(
(assign (xy) (var_ref tex) (expression vec2 / (expression vec2 fract (var_ref rel_tex_coord_retval) ) (swiz xy (var_ref wh) )) )
))
)
())
)
())
(if (var_ref execute_flag) (
(declare (temporary ) vec4 vec_ctor)
(assign (w) (var_ref vec_ctor) (constant float (1.000000)) )
(assign (xyz) (var_ref vec_ctor) (swiz xyz (tex vec4 (var_ref tex_image) (var_ref tex) 0 1 () )))
(assign (xyzw) (var_ref return_value) (var_ref vec_ctor) )
(assign (x) (var_ref execute_flag) (constant bool (0)) )
)
())
(return (var_ref return_value) )
))
)
( function get_source
(signature vec4
(parameters
)
(
(declare (temporary ) vec4 rel_sampler_rgbx_retval)
(call rel_sampler_rgbx (var_ref rel_sampler_rgbx_retval) ((var_ref source_sampler) (var_ref source_texture) (var_ref source_wh) (var_ref source_repeat_mode) ))
(return (var_ref rel_sampler_rgbx_retval) )
))
)
( function get_mask
(signature vec4
(parameters
)
(
(return (constant vec4 (0.000000 0.000000 0.000000 1.000000)) )
))
)
( function dest_swizzle
(signature vec4
(parameters
(declare (in ) vec4 color)
)
(
(return (var_ref color) )
))
)
( function main
(signature void
(parameters
)
(
(declare (temporary ) vec4 get_source_retval)
(call get_source (var_ref get_source_retval) ())
(declare (temporary ) vec4 get_mask_retval)
(call get_mask (var_ref get_mask_retval) ())
(declare (temporary ) vec4 dest_swizzle_retval)
(call dest_swizzle (var_ref dest_swizzle_retval) ((expression vec4 * (var_ref get_source_retval) (swiz w (var_ref get_mask_retval) )) ))
(assign (xyzw) (var_ref gl_FragColor) (var_ref dest_swizzle_retval) )
))
)
)
:
:
: GLSL IR for linked vertex program 36:
(
(declare (location=0 shader_out ) vec4 gl_Position)
(declare (location=31 shader_out ) vec2 packed:source_texture)
(declare (location=16 shader_in ) vec4 v_position)
(declare (location=17 shader_in ) vec4 v_texcoord0)
( function main
(signature void
(parameters
)
(
(assign (xyzw) (var_ref gl_Position) (var_ref v_position) )
(assign (xy) (var_ref packed:source_texture) (swiz xy (var_ref v_texcoord0) ))
))
)
)
:
:
: GLSL IR for linked fragment program 36:
(
(declare (location=31 shader_in ) vec2 packed:source_texture)
(declare (location=2 shader_out ) vec4 gl_FragColor)
(declare (location=0 uniform ) int source_repeat_mode)
(declare (location=1 uniform ) sampler2D source_sampler)
(declare (location=2 uniform ) vec4 source_wh)
( function main
(signature void
(parameters
)
(
(declare (temporary ) vec2 tex)
(assign (xy) (var_ref tex) (var_ref packed:source_texture) )
(declare (temporary ) bool execute_flag)
(assign (x) (var_ref execute_flag) (constant bool (1)) )
(declare (temporary ) vec4 return_value)
(declare (temporary ) bool if_to_cond_assign_then)
(assign (x) (var_ref if_to_cond_assign_then) (expression bool >= (var_ref source_repeat_mode) (constant int (10)) ) )
(declare (temporary ) vec2 return_value@533)
(declare () vec2 rel_tex)
(assign (var_ref if_to_cond_assign_then) (xy) (var_ref rel_tex) (expression vec2 * (var_ref packed:source_texture) (swiz xy (var_ref source_wh) )) )
(declare (temporary ) bool if_to_cond_assign_then@534)
(assign (x) (var_ref if_to_cond_assign_then@534) (expression bool && (var_ref if_to_cond_assign_then) (expression bool == (var_ref source_repeat_mode) (constant int (10)) ) ) )
(assign (var_ref if_to_cond_assign_then@534) (xy) (var_ref return_value@533) (var_ref rel_tex) )
(declare (temporary ) bool if_to_cond_assign_else)
(assign (x) (var_ref if_to_cond_assign_else) (expression bool && (var_ref if_to_cond_assign_then) (expression bool ! (var_ref if_to_cond_assign_then@534) ) ) )
(declare (temporary ) bool if_to_cond_assign_then@535)
(assign (x) (var_ref if_to_cond_assign_then@535) (expression bool && (var_ref if_to_cond_assign_else) (expression bool == (var_ref source_repeat_mode) (constant int (11)) ) ) )
(assign (var_ref if_to_cond_assign_then@535) (xy) (var_ref rel_tex) (expression vec2 + (expression vec2 floor (var_ref rel_tex) ) (expression vec2 * (expression vec2 fract (var_ref rel_tex) ) (expression vec2 rcp (swiz xy (var_ref source_wh) )) ) ) )
(declare (temporary ) bool if_to_cond_assign_else@536)
(assign (x) (var_ref if_to_cond_assign_else@536) (expression bool && (var_ref if_to_cond_assign_else) (expression bool ! (var_ref if_to_cond_assign_then@535) ) ) )
(declare (temporary ) bool if_to_cond_assign_then@537)
(assign (x) (var_ref if_to_cond_assign_then@537) (expression bool && (var_ref if_to_cond_assign_else@536) (expression bool == (var_ref source_repeat_mode) (constant int (12)) ) ) )
(declare (temporary ) bool if_to_cond_assign_then@538)
(assign (x) (var_ref if_to_cond_assign_then@538) (expression bool && (var_ref if_to_cond_assign_then@537) (expression bool >= (swiz x (var_ref rel_tex) )(constant float (1.000000)) ) ) )
(assign (var_ref if_to_cond_assign_then@538) (x) (var_ref rel_tex) (expression float + (constant float (1.000000)) (expression float neg (expression float * (expression float * (swiz z (var_ref source_wh) )(swiz x (var_ref source_wh) )) (constant float (0.500000)) ) ) ) )
(assign (expression bool && (expression bool && (var_ref if_to_cond_assign_then@537) (expression bool ! (var_ref if_to_cond_assign_then@538) ) ) (expression bool < (swiz x (var_ref rel_tex) )(constant float (0.000000)) ) ) (x) (var_ref rel_tex) (constant float (0.000000)) )
(declare (temporary ) bool if_to_cond_assign_then@539)
(assign (x) (var_ref if_to_cond_assign_then@539) (expression bool && (var_ref if_to_cond_assign_then@537) (expression bool >= (swiz y (var_ref rel_tex) )(constant float (1.000000)) ) ) )
(assign (var_ref if_to_cond_assign_then@539) (y) (var_ref rel_tex) (expression float + (constant float (1.000000)) (expression float neg (expression float * (expression float * (swiz w (var_ref source_wh) )(swiz y (var_ref source_wh) )) (constant float (0.500000)) ) ) ) )
(assign (expression bool && (expression bool && (var_ref if_to_cond_assign_then@537) (expression bool ! (var_ref if_to_cond_assign_then@539) ) ) (expression bool < (swiz y (var_ref rel_tex) )(constant float (0.000000)) ) ) (y) (var_ref rel_tex) (constant float (0.000000)) )
(assign (var_ref if_to_cond_assign_then@537) (xy) (var_ref rel_tex) (expression vec2 * (var_ref rel_tex) (expression vec2 rcp (swiz xy (var_ref source_wh) )) ) )
(declare (temporary ) bool if_to_cond_assign_then@540)
(assign (x) (var_ref if_to_cond_assign_then@540) (expression bool && (expression bool && (var_ref if_to_cond_assign_else@536) (expression bool ! (var_ref if_to_cond_assign_then@537) ) ) (expression bool == (var_ref source_repeat_mode) (constant int (13)) ) ) )
(declare (temporary ) float mod_x)
(assign (var_ref if_to_cond_assign_then@540) (x) (var_ref mod_x) (expression float abs (expression float floor (swiz x (var_ref rel_tex) )) ) )
(declare (temporary ) bool if_to_cond_assign_then@541)
(assign (x) (var_ref if_to_cond_assign_then@541) (expression bool && (var_ref if_to_cond_assign_then@540) (expression bool < (expression float + (constant float (1.000000)) (expression float neg (expression float + (var_ref mod_x) (expression float neg (expression float * (constant float (2.000000)) (expression float floor (expression float * (var_ref mod_x) (constant float (0.500000)) ) ) ) ) ) ) ) (constant float (0.001000)) ) ) )
(assign (var_ref if_to_cond_assign_then@541) (x) (var_ref rel_tex) (expression float + (constant float (2.000000)) (expression float neg (expression float * (expression float + (constant float (1.000000)) (expression float neg (expression float fract (swiz x (var_ref rel_tex) )) ) ) (expression float rcp (swiz x (var_ref source_wh) )) ) ) ) )
(assign (expression bool && (var_ref if_to_cond_assign_then@540) (expression bool ! (var_ref if_to_cond_assign_then@541) ) ) (x) (var_ref rel_tex) (expression float * (expression float fract (swiz x (var_ref rel_tex) )) (expression float rcp (swiz x (var_ref source_wh) )) ) )
(declare (temporary ) float mod_x@542)
(assign (var_ref if_to_cond_assign_then@540) (x) (var_ref mod_x@542) (expression float abs (expression float floor (swiz y (var_ref rel_tex) )) ) )
(declare (temporary ) bool if_to_cond_assign_then@543)
(assign (x) (var_ref if_to_cond_assign_then@543) (expression bool && (var_ref if_to_cond_assign_then@540) (expression bool < (expression float + (constant float (1.000000)) (expression float neg (expression float + (var_ref mod_x@542) (expression float neg (expression float * (constant float (2.000000)) (expression float floor (expression float * (var_ref mod_x@542) (constant float (0.500000)) ) ) ) ) ) ) ) (constant float (0.001000)) ) ) )
(assign (var_ref if_to_cond_assign_then@543) (y) (var_ref rel_tex) (expression float + (constant float (2.000000)) (expression float neg (expression float * (expression float + (constant float (1.000000)) (expression float neg (expression float fract (swiz y (var_ref rel_tex) )) ) ) (expression float rcp (swiz y (var_ref source_wh) )) ) ) ) )
(assign (expression bool && (var_ref if_to_cond_assign_then@540) (expression bool ! (var_ref if_to_cond_assign_then@543) ) ) (y) (var_ref rel_tex) (expression float * (expression float fract (swiz y (var_ref rel_tex) )) (expression float rcp (swiz y (var_ref source_wh) )) ) )
(assign (var_ref if_to_cond_assign_else) (xy) (var_ref return_value@533) (var_ref rel_tex) )
(assign (var_ref if_to_cond_assign_then) (xy) (var_ref tex) (var_ref return_value@533) )
(declare (temporary ) bool if_to_cond_assign_then@544)
(assign (x) (var_ref if_to_cond_assign_then@544) (expression bool && (var_ref if_to_cond_assign_then) (expression bool == (var_ref source_repeat_mode) (constant int (10)) ) ) )
(declare (temporary ) bool if_to_cond_assign_then@545)
(assign (x) (var_ref if_to_cond_assign_then@545) (expression bool && (var_ref if_to_cond_assign_then@544) (expression bool || (expression bool || (expression bool || (expression bool < (swiz x (var_ref return_value@533) )(constant float (0.000000)) ) (expression bool >= (swiz x (var_ref return_value@533) )(constant float (1.000000)) ) ) (expression bool < (swiz y (var_ref return_value@533) )(constant float (0.000000)) ) ) (expression bool >= (swiz y (var_ref return_value@533) )(constant float (1.000000)) ) ) ) )
(assign (var_ref if_to_cond_assign_then@545) (xyzw) (var_ref return_value) (constant vec4 (0.000000 0.000000 0.000000 0.000000)) )
(assign (var_ref if_to_cond_assign_then@545) (x) (var_ref execute_flag) (constant bool (0)) )
(assign (expression bool && (var_ref if_to_cond_assign_then@544) (expression bool ! (var_ref if_to_cond_assign_then@545) ) ) (xy) (var_ref tex) (expression vec2 * (expression vec2 fract (var_ref return_value@533) ) (expression vec2 rcp (swiz xy (var_ref source_wh) )) ) )
(declare (temporary ) vec4 vec_ctor)
(assign (var_ref execute_flag) (w) (var_ref vec_ctor) (constant float (1.000000)) )
(assign (var_ref execute_flag) (xyz) (var_ref vec_ctor) (swiz xyz (tex vec4 (var_ref source_sampler) (var_ref tex) 0 1 () )))
(assign (var_ref execute_flag) (xyzw) (var_ref return_value) (var_ref vec_ctor) )
(assign (var_ref execute_flag) (x) (var_ref execute_flag) (constant bool (0)) )
(assign (xyzw) (var_ref gl_FragColor) (var_ref return_value) )
))
)
)
:
:
: NIR IR for linked vertex program 36:
shader: MESA_SHADER_VERTEX
name: GLSL36
label: composite
inputs: 0
outputs: 0
uniforms: 0
shared: 0
decl_var shader_in INTERP_MODE_NONE vec4 v_position (VERT_ATTRIB_GENERIC0, 0, 0)
decl_var shader_in INTERP_MODE_NONE vec4 v_texcoord0 (VERT_ATTRIB_GENERIC1, 0, 0)
decl_var shader_out INTERP_MODE_NONE vec4 gl_Position (VARYING_SLOT_POS, 0, 0)
decl_var shader_out INTERP_MODE_NONE vec2 packed:source_texture (VARYING_SLOT_VAR0.xy, 0, 0)
decl_function main returning void
impl main {
decl_var INTERP_MODE_NONE vec2 out@packed:source_texture-temp
decl_var INTERP_MODE_NONE vec4 in@v_texcoord0-temp
decl_var INTERP_MODE_NONE vec4 in@v_position-temp
decl_var INTERP_MODE_NONE vec4 out@gl_Position-temp
block block_0:
/* preds: */
vec4 32 ssa_2 = intrinsic load_var () (v_position) ()
vec4 32 ssa_3 = intrinsic load_var () (v_texcoord0) ()
intrinsic store_var (ssa_2) (gl_Position) (15) /* wrmask=xyzw */
vec2 32 ssa_53 = vec2 ssa_3.x, ssa_3.y
intrinsic store_var (ssa_53) (packed:source_texture) (3) /* wrmask=xy */
/* succs: block_0 */
block block_0:
}
:
:
: NIR IR for linked fragment program 36:
shader: MESA_SHADER_FRAGMENT
name: GLSL36
label: composite
inputs: 0
outputs: 0
uniforms: 0
shared: 0
decl_var uniform INTERP_MODE_NONE int source_repeat_mode (0, 0, 0)
decl_var uniform INTERP_MODE_NONE sampler2D source_sampler (1, 0, 0)
decl_var uniform INTERP_MODE_NONE vec4 source_wh (2, 0, 0)
decl_var shader_in INTERP_MODE_NONE vec2 packed:source_texture (VARYING_SLOT_VAR0.xy, 0, 0)
decl_var shader_out INTERP_MODE_NONE vec4 gl_FragColor (FRAG_RESULT_COLOR, 0, 0)
decl_function main returning void
impl main {
decl_var INTERP_MODE_NONE vec2 tex
decl_var INTERP_MODE_NONE bool execute_flag
decl_var INTERP_MODE_NONE bool const_temp
decl_var INTERP_MODE_NONE vec4 return_value
decl_var INTERP_MODE_NONE bool if_to_cond_assign_then
decl_var INTERP_MODE_NONE int const_temp@0
decl_var INTERP_MODE_NONE vec2 return_value@1
decl_var INTERP_MODE_NONE vec2 rel_tex
decl_var INTERP_MODE_NONE bool if_to_cond_assign_then@2
decl_var INTERP_MODE_NONE int const_temp@3
decl_var INTERP_MODE_NONE bool if_to_cond_assign_else
decl_var INTERP_MODE_NONE bool if_to_cond_assign_then@4
decl_var INTERP_MODE_NONE int const_temp@5
decl_var INTERP_MODE_NONE bool if_to_cond_assign_else@6
decl_var INTERP_MODE_NONE bool if_to_cond_assign_then@7
decl_var INTERP_MODE_NONE int const_temp@8
decl_var INTERP_MODE_NONE bool if_to_cond_assign_then@9
decl_var INTERP_MODE_NONE float const_temp@10
decl_var INTERP_MODE_NONE float const_temp@11
decl_var INTERP_MODE_NONE float const_temp@12
decl_var INTERP_MODE_NONE float const_temp@13
decl_var INTERP_MODE_NONE float const_temp@14
decl_var INTERP_MODE_NONE bool if_to_cond_assign_then@15
decl_var INTERP_MODE_NONE float const_temp@16
decl_var INTERP_MODE_NONE float const_temp@17
decl_var INTERP_MODE_NONE float const_temp@18
decl_var INTERP_MODE_NONE float const_temp@19
decl_var INTERP_MODE_NONE float const_temp@20
decl_var INTERP_MODE_NONE bool if_to_cond_assign_then@21
decl_var INTERP_MODE_NONE int const_temp@22
decl_var INTERP_MODE_NONE float mod_x
decl_var INTERP_MODE_NONE bool if_to_cond_assign_then@23
decl_var INTERP_MODE_NONE float const_temp@24
decl_var INTERP_MODE_NONE float const_temp@25
decl_var INTERP_MODE_NONE float const_temp@26
decl_var INTERP_MODE_NONE float const_temp@27
decl_var INTERP_MODE_NONE float const_temp@28
decl_var INTERP_MODE_NONE float const_temp@29
decl_var INTERP_MODE_NONE float mod_x@30
decl_var INTERP_MODE_NONE bool if_to_cond_assign_then@31
decl_var INTERP_MODE_NONE float const_temp@32
decl_var INTERP_MODE_NONE float const_temp@33
decl_var INTERP_MODE_NONE float const_temp@34
decl_var INTERP_MODE_NONE float const_temp@35
decl_var INTERP_MODE_NONE float const_temp@36
decl_var INTERP_MODE_NONE float const_temp@37
decl_var INTERP_MODE_NONE bool if_to_cond_assign_then@38
decl_var INTERP_MODE_NONE int const_temp@39
decl_var INTERP_MODE_NONE bool if_to_cond_assign_then@40
decl_var INTERP_MODE_NONE float const_temp@41
decl_var INTERP_MODE_NONE float const_temp@42
decl_var INTERP_MODE_NONE float const_temp@43
decl_var INTERP_MODE_NONE float const_temp@44
decl_var INTERP_MODE_NONE vec4 const_temp@45
decl_var INTERP_MODE_NONE bool const_temp@46
decl_var INTERP_MODE_NONE vec4 vec_ctor
decl_var INTERP_MODE_NONE float const_temp@47
decl_var INTERP_MODE_NONE bool const_temp@48
decl_var INTERP_MODE_NONE vec4 out@gl_FragColor-temp
block block_0:
/* preds: */
vec1 32 ssa_261 = load_const (0x0000000a /* 0.000000 */)
vec1 32 ssa_263 = load_const (0x0000000b /* 0.000000 */)
vec1 32 ssa_264 = load_const (0x0000000c /* 0.000000 */)
vec1 32 ssa_265 = load_const (0x3f800000 /* 1.000000 */)
vec1 32 ssa_267 = load_const (0x3f000000 /* 0.500000 */)
vec1 32 ssa_268 = load_const (0x00000000 /* 0.000000 */)
vec1 32 ssa_275 = load_const (0x0000000d /* 0.000000 */)
vec1 32 ssa_277 = load_const (0x40000000 /* 2.000000 */)
vec1 32 ssa_279 = load_const (0x3a83126f /* 0.001000 */)
vec2 32 ssa_297 = intrinsic load_var () (packed:source_texture) ()
vec1 32 ssa_0 = intrinsic load_var () (source_repeat_mode) ()
vec1 32 ssa_2 = sge ssa_0, ssa_261
vec2 32 ssa_3 = intrinsic load_var () (packed:source_texture) ()
vec4 32 ssa_4 = intrinsic load_var () (source_wh) ()
vec1 32 ssa_556 = fmul ssa_3.x, ssa_4.x
vec1 32 ssa_557 = fmul ssa_3.y, ssa_4.y
vec1 32 ssa_9 = intrinsic load_var () (source_repeat_mode) ()
vec1 32 ssa_11 = seq ssa_9, ssa_261
vec1 32 ssa_12 = fand ssa_2, ssa_11
vec1 32 ssa_16 = fnot ssa_12
vec1 32 ssa_17 = fand ssa_2, ssa_16
vec1 32 ssa_19 = intrinsic load_var () (source_repeat_mode) ()
vec1 32 ssa_21 = seq ssa_19, ssa_263
vec1 32 ssa_22 = fand ssa_17, ssa_21
vec1 32 ssa_571 = ffloor ssa_556
vec1 32 ssa_572 = ffloor ssa_557
vec1 32 ssa_577 = ffract ssa_556
vec1 32 ssa_578 = ffract ssa_557
vec4 32 ssa_27 = intrinsic load_var () (source_wh) ()
vec1 32 ssa_583 = frcp ssa_27.x
vec1 32 ssa_584 = frcp ssa_27.y
vec1 32 ssa_586 = fmul ssa_577, ssa_583
vec1 32 ssa_587 = fmul ssa_578, ssa_584
vec1 32 ssa_589 = fadd ssa_571, ssa_586
vec1 32 ssa_590 = fadd ssa_572, ssa_587
vec1 32 ssa_922 = bcsel ssa_22, ssa_589, ssa_556
vec1 32 ssa_923 = bcsel ssa_22, ssa_590, ssa_557
vec1 32 ssa_35 = fnot ssa_22
vec1 32 ssa_36 = fand ssa_17, ssa_35
vec1 32 ssa_38 = intrinsic load_var () (source_repeat_mode) ()
vec1 32 ssa_40 = seq ssa_38, ssa_264
vec1 32 ssa_41 = fand ssa_36, ssa_40
vec1 32 ssa_46 = sge ssa_922, ssa_265
vec1 32 ssa_47 = fand ssa_41, ssa_46
vec4 32 ssa_49 = intrinsic load_var () (source_wh) ()
vec4 32 ssa_51 = intrinsic load_var () (source_wh) ()
vec1 32 ssa_968 = fmul ssa_49.z, ssa_267
vec1 32 ssa_969 = fmul ssa_968, ssa_51.x
vec1 32 ssa_56 = fneg ssa_969
vec1 32 ssa_57 = fadd ssa_265, ssa_56
vec1 32 ssa_924 = bcsel ssa_47, ssa_57, ssa_922
vec1 32 ssa_64 = fnot ssa_47
vec1 32 ssa_65 = fand ssa_41, ssa_64
vec1 32 ssa_69 = slt ssa_924, ssa_268
vec1 32 ssa_70 = fand ssa_65, ssa_69
vec1 32 ssa_925 = bcsel ssa_70, ssa_268, ssa_924
vec1 32 ssa_75 = sge ssa_923, ssa_265
vec1 32 ssa_76 = fand ssa_41, ssa_75
vec4 32 ssa_78 = intrinsic load_var () (source_wh) ()
vec4 32 ssa_80 = intrinsic load_var () (source_wh) ()
vec1 32 ssa_965 = fmul ssa_78.w, ssa_267
vec1 32 ssa_966 = fmul ssa_965, ssa_80.y
vec1 32 ssa_85 = fneg ssa_966
vec1 32 ssa_86 = fadd ssa_265, ssa_85
vec1 32 ssa_926 = bcsel ssa_76, ssa_86, ssa_923
vec1 32 ssa_93 = fnot ssa_76
vec1 32 ssa_94 = fand ssa_41, ssa_93
vec1 32 ssa_98 = slt ssa_926, ssa_268
vec1 32 ssa_99 = fand ssa_94, ssa_98
vec1 32 ssa_927 = bcsel ssa_99, ssa_268, ssa_926
vec4 32 ssa_101 = intrinsic load_var () (source_wh) ()
vec1 32 ssa_625 = frcp ssa_101.x
vec1 32 ssa_626 = frcp ssa_101.y
vec1 32 ssa_628 = fmul ssa_925, ssa_625
vec1 32 ssa_629 = fmul ssa_927, ssa_626
vec1 32 ssa_928 = bcsel ssa_41, ssa_628, ssa_925
vec1 32 ssa_929 = bcsel ssa_41, ssa_629, ssa_927
vec1 32 ssa_108 = fnot ssa_41
vec1 32 ssa_109 = fand ssa_36, ssa_108
vec1 32 ssa_110 = intrinsic load_var () (source_repeat_mode) ()
vec1 32 ssa_112 = seq ssa_110, ssa_275
vec1 32 ssa_113 = fand ssa_109, ssa_112
vec1 32 ssa_116 = ffloor ssa_928
vec1 32 ssa_117 = fabs ssa_116
vec1 32 ssa_125 = fmul ssa_117, ssa_267
vec1 32 ssa_126 = ffloor ssa_125
vec1 32 ssa_127 = fmul ssa_277, ssa_126
vec1 32 ssa_128 = fneg ssa_127
vec1 32 ssa_129 = fadd ssa_117, ssa_128
vec1 32 ssa_130 = fneg ssa_129
vec1 32 ssa_131 = fadd ssa_265, ssa_130
vec1 32 ssa_133 = slt ssa_131, ssa_279
vec1 32 ssa_134 = fand ssa_113, ssa_133
vec1 32 ssa_139 = ffract ssa_928
vec1 32 ssa_140 = fneg ssa_139
vec1 32 ssa_141 = fadd ssa_265, ssa_140
vec4 32 ssa_142 = intrinsic load_var () (source_wh) ()
vec1 32 ssa_144 = frcp ssa_142.x
vec1 32 ssa_145 = fmul ssa_141, ssa_144
vec1 32 ssa_146 = fneg ssa_145
vec1 32 ssa_147 = fadd ssa_277, ssa_146
vec1 32 ssa_931 = bcsel ssa_134, ssa_147, ssa_928
vec1 32 ssa_152 = ffract ssa_931
vec4 32 ssa_153 = intrinsic load_var () (source_wh) ()
vec1 32 ssa_155 = frcp ssa_153.x
vec1 32 ssa_156 = fmul ssa_152, ssa_155
vec1 32 ssa_160 = fnot ssa_134
vec1 32 ssa_161 = fand ssa_113, ssa_160
vec1 32 ssa_932 = bcsel ssa_161, ssa_156, ssa_931
vec1 32 ssa_164 = ffloor ssa_929
vec1 32 ssa_165 = fabs ssa_164
vec1 32 ssa_173 = fmul ssa_165, ssa_267
vec1 32 ssa_174 = ffloor ssa_173
vec1 32 ssa_175 = fmul ssa_277, ssa_174
vec1 32 ssa_176 = fneg ssa_175
vec1 32 ssa_177 = fadd ssa_165, ssa_176
vec1 32 ssa_178 = fneg ssa_177
vec1 32 ssa_179 = fadd ssa_265, ssa_178
vec1 32 ssa_181 = slt ssa_179, ssa_279
vec1 32 ssa_182 = fand ssa_113, ssa_181
vec1 32 ssa_187 = ffract ssa_929
vec1 32 ssa_188 = fneg ssa_187
vec1 32 ssa_189 = fadd ssa_265, ssa_188
vec4 32 ssa_190 = intrinsic load_var () (source_wh) ()
vec1 32 ssa_192 = frcp ssa_190.y
vec1 32 ssa_193 = fmul ssa_189, ssa_192
vec1 32 ssa_194 = fneg ssa_193
vec1 32 ssa_195 = fadd ssa_277, ssa_194
vec1 32 ssa_934 = bcsel ssa_182, ssa_195, ssa_929
vec1 32 ssa_200 = ffract ssa_934
vec4 32 ssa_201 = intrinsic load_var () (source_wh) ()
vec1 32 ssa_203 = frcp ssa_201.y
vec1 32 ssa_204 = fmul ssa_200, ssa_203
vec1 32 ssa_208 = fnot ssa_182
vec1 32 ssa_209 = fand ssa_113, ssa_208
vec1 32 ssa_935 = bcsel ssa_209, ssa_204, ssa_934
vec1 32 ssa_936 = bcsel ssa_17, ssa_932, ssa_556
vec1 32 ssa_937 = bcsel ssa_17, ssa_935, ssa_557
vec1 32 ssa_938 = bcsel ssa_2, ssa_936, ssa_297.x
vec1 32 ssa_939 = bcsel ssa_2, ssa_937, ssa_297.y
vec1 32 ssa_213 = intrinsic load_var () (source_repeat_mode) ()
vec1 32 ssa_215 = seq ssa_213, ssa_261
vec1 32 ssa_216 = fand ssa_2, ssa_215
vec1 32 ssa_221 = slt ssa_936, ssa_268
vec1 32 ssa_225 = sge ssa_936, ssa_265
vec1 32 ssa_226 = for ssa_221, ssa_225
vec1 32 ssa_230 = slt ssa_937, ssa_268
vec1 32 ssa_231 = for ssa_226, ssa_230
vec1 32 ssa_235 = sge ssa_937, ssa_265
vec1 32 ssa_236 = for ssa_231, ssa_235
vec1 32 ssa_237 = fand ssa_216, ssa_236
vec1 32 ssa_701 = ffract ssa_936
vec1 32 ssa_702 = ffract ssa_937
vec4 32 ssa_242 = intrinsic load_var () (source_wh) ()
vec1 32 ssa_707 = frcp ssa_242.x
vec1 32 ssa_708 = frcp ssa_242.y
vec1 32 ssa_710 = fmul ssa_701, ssa_707
vec1 32 ssa_711 = fmul ssa_702, ssa_708
vec1 32 ssa_248 = fnot ssa_237
vec1 32 ssa_249 = fand ssa_216, ssa_248
vec1 32 ssa_945 = bcsel ssa_249, ssa_710, ssa_938
vec1 32 ssa_946 = bcsel ssa_249, ssa_711, ssa_939
vec2 32 ssa_723 = vec2 ssa_945, ssa_946
vec4 32 ssa_254 = tex ssa_723 (coord), source_sampler (texture)
vec1 32 ssa_993 = bcsel ssa_237, ssa_268, ssa_254.x
vec1 32 ssa_991 = bcsel ssa_237, ssa_268, ssa_254.y
vec1 32 ssa_989 = bcsel ssa_237, ssa_268, ssa_254.z
vec1 32 ssa_995 = inot ssa_237
vec1 32 ssa_996 = b2f ssa_995
vec4 32 ssa_757 = vec4 ssa_993, ssa_991, ssa_989, ssa_996
intrinsic store_var (ssa_757) (gl_FragColor) (15) /* wrmask=xyzw */
/* succs: block_0 */
block block_0:
}
:
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment