NIR (SSA form) for fragment shader: decl_var shader_in vec4 gl_Color (1, 0) decl_var shader_out vec4 gl_FragColor (2, 0) decl_overload main returning void impl main { block block_0: /* preds: */ vec4 ssa_0 = intrinsic load_input () () (0) intrinsic store_output (ssa_0) () (0) /* succs: block_1 */ block block_1: } NIR (final form) for fragment shader: decl_var shader_in vec4 gl_Color (1, 0) decl_var shader_out vec4 gl_FragColor (2, 0) decl_overload main returning void impl main { decl_reg vec4 r0 block block_0: /* preds: */ r0 = intrinsic load_input () () (0) intrinsic store_output (r0) () (0) /* succs: block_1 */ block block_1: } GLSL IR for native fragment shader 0: ( (declare (location=1 shader_in ) vec4 gl_Color) (declare (location=2 shader_out ) vec4 gl_FragColor) (declare (temporary ) vec4 compiler_temp) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref compiler_temp) (var_ref gl_Color) ) (assign (xyzw) (var_ref gl_FragColor) (var_ref compiler_temp) ) )) ) ) Native code for unnamed fragment shader 0 SIMD8 shader: 5 instructions. 0 loops. 0:0 spills:fills. Promoted 0 constants. Compacted 80 to 48 bytes (40%) START B0 pln(8) g124<1>F g4<0,1,0>F g2<8,8,1>F { align1 1Q compacted }; pln(8) g125<1>F g4.4<0,1,0>F g2<8,8,1>F { align1 1Q compacted }; pln(8) g126<1>F g5<0,1,0>F g2<8,8,1>F { align1 1Q compacted }; pln(8) g127<1>F g5.4<0,1,0>F g2<8,8,1>F { align1 1Q compacted }; sendc(8) null g124<8,8,1>F render RT write SIMD8 LastRT Surface = 0 mlen 4 rlen 0 { align1 1Q EOT }; END B0 Native code for unnamed fragment shader 0 SIMD16 shader: 5 instructions. 0 loops. 0:0 spills:fills. Promoted 0 constants. Compacted 80 to 48 bytes (40%) START B0 pln(16) g120<1>F g6<0,1,0>F g2<8,8,1>F { align1 1H compacted }; pln(16) g122<1>F g6.4<0,1,0>F g2<8,8,1>F { align1 1H compacted }; pln(16) g124<1>F g7<0,1,0>F g2<8,8,1>F { align1 1H compacted }; pln(16) g126<1>F g7.4<0,1,0>F g2<8,8,1>F { align1 1H compacted }; sendc(16) null g120<8,8,1>F render RT write SIMD16 LastRT Surface = 0 mlen 8 rlen 0 { align1 1H EOT }; END B0 NIR (SSA form) for fragment shader: decl_var uniform vec4 color (4294967295, 0) decl_var shader_out vec4 gl_FragColor (2, 0) decl_overload main returning void impl main { block block_0: /* preds: */ vec4 ssa_0 = intrinsic load_uniform () () (0) intrinsic store_output (ssa_0) () (0) /* succs: block_1 */ block block_1: } NIR (final form) for fragment shader: decl_var uniform vec4 color (4294967295, 0) decl_var shader_out vec4 gl_FragColor (2, 0) decl_overload main returning void impl main { decl_reg vec4 r0 block block_0: /* preds: */ r0 = intrinsic load_uniform () () (0) intrinsic store_output (r0) () (0) /* succs: block_1 */ block block_1: } GLSL IR for native fragment shader 3: ( (declare (location=2 shader_out ) vec4 gl_FragColor) (declare (temporary ) vec4 gl_FragColor) (declare (uniform ) vec4 color) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_FragColor) (var_ref color) ) (assign (xyzw) (var_ref gl_FragColor@2) (var_ref gl_FragColor) ) )) ) ) Native code for meta clear fragment shader 3 SIMD16 shader: 2 instructions. 0 loops. 0:0 spills:fills. Promoted 0 constants. Compacted 32 to 32 bytes (0%) START B0 mov(4) g115<1>F g2<4,4,1>F { align1 WE_all compacted }; sendc(16) null g115<8,8,1>F render RT write SIMD16/RepData LastRT Surface = 0 mlen 1 rlen 0 { align1 1H EOT }; nop ; END B0 GLSL IR for native vertex shader 3: ( (declare (location=0 shader_out ) vec4 gl_Position) (declare (location=20 shader_out ) int gl_Layer) (declare (location=1 sys ) int gl_InstanceID) (declare (location=17 shader_in ) vec4 position) (function main (signature void (parameters ) ( (assign (x) (var_ref gl_Layer) (var_ref gl_InstanceID) ) (assign (xyzw) (var_ref gl_Position) (var_ref position) ) )) ) ) VS estimated execution time: 30 cycles Native code for meta clear vertex shader 3: VS vec4 shader: 6 instructions. 0 loops. Compacted 96 to 96 bytes (0%) START B0 mov(8) g114<1>UD 0x00000000UD { align16 1Q compacted }; mov(8) g115<1>F g1<4,4,1>F { align16 1Q }; mov(8) g114<1>.yD g2<4,4,1>.wD { align16 1Q }; mov(8) g113<1>UD g0<4,4,1>UD { align16 WE_all 1Q }; or(1) g113.5<1>UD g0.5<0,1,0>UD 0x0000ff00UD { align1 WE_all }; send(8) null g113<4,4,1>F urb 0 write HWord interleave complete mlen 3 rlen 0 { align16 1Q EOT }; nop ; END B0 NIR (SSA form) for fragment shader: decl_var uniform vec4 color (4294967295, 0) decl_var shader_out vec4 gl_FragColor (2, 0) decl_overload main returning void impl main { block block_0: /* preds: */ vec4 ssa_0 = intrinsic load_uniform () () (0) intrinsic store_output (ssa_0) () (0) /* succs: block_1 */ block block_1: } NIR (final form) for fragment shader: decl_var uniform vec4 color (4294967295, 0) decl_var shader_out vec4 gl_FragColor (2, 0) decl_overload main returning void impl main { decl_reg vec4 r0 block block_0: /* preds: */ r0 = intrinsic load_uniform () () (0) intrinsic store_output (r0) () (0) /* succs: block_1 */ block block_1: } GLSL IR for native fragment shader 6: ( (declare (location=2 shader_out ) vec4 gl_FragColor) (declare (temporary ) vec4 gl_FragColor) (declare (uniform ) vec4 color) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_FragColor) (var_ref color) ) (assign (xyzw) (var_ref gl_FragColor@3) (var_ref gl_FragColor) ) )) ) ) Native code for meta clear fragment shader 6 SIMD8 shader: 5 instructions. 0 loops. 0:0 spills:fills. Promoted 0 constants. Compacted 80 to 48 bytes (40%) START B0 mov(8) g124<1>F g2<0,1,0>F { align1 1Q compacted }; mov(8) g125<1>F g2.1<0,1,0>F { align1 1Q compacted }; mov(8) g126<1>F g2.2<0,1,0>F { align1 1Q compacted }; mov(8) g127<1>F g2.3<0,1,0>F { align1 1Q compacted }; sendc(8) null g124<8,8,1>F render RT write SIMD8 LastRT Surface = 0 mlen 4 rlen 0 { align1 1Q EOT }; END B0 Native code for meta clear fragment shader 6 SIMD16 shader: 5 instructions. 0 loops. 0:0 spills:fills. Promoted 0 constants. Compacted 80 to 48 bytes (40%) START B0 mov(16) g120<1>F g2<0,1,0>F { align1 1H compacted }; mov(16) g122<1>F g2.1<0,1,0>F { align1 1H compacted }; mov(16) g124<1>F g2.2<0,1,0>F { align1 1H compacted }; mov(16) g126<1>F g2.3<0,1,0>F { align1 1H compacted }; sendc(16) null g120<8,8,1>F render RT write SIMD16 LastRT Surface = 0 mlen 8 rlen 0 { align1 1H EOT }; END B0 GLSL IR for native vertex shader 6: ( (declare (location=0 shader_out ) vec4 gl_Position) (declare (location=20 shader_out ) int gl_Layer) (declare (location=1 sys ) int gl_InstanceID) (declare (location=17 shader_in ) vec4 position) (function main (signature void (parameters ) ( (assign (x) (var_ref gl_Layer) (var_ref gl_InstanceID) ) (assign (xyzw) (var_ref gl_Position) (var_ref position) ) )) ) ) VS estimated execution time: 30 cycles Native code for meta clear vertex shader 6: VS vec4 shader: 6 instructions. 0 loops. Compacted 96 to 96 bytes (0%) START B0 mov(8) g114<1>UD 0x00000000UD { align16 1Q compacted }; mov(8) g115<1>F g1<4,4,1>F { align16 1Q }; mov(8) g114<1>.yD g2<4,4,1>.wD { align16 1Q }; mov(8) g113<1>UD g0<4,4,1>UD { align16 WE_all 1Q }; or(1) g113.5<1>UD g0.5<0,1,0>UD 0x0000ff00UD { align1 WE_all }; send(8) null g113<4,4,1>F urb 0 write HWord interleave complete mlen 3 rlen 0 { align16 1Q EOT }; nop ; END B0 NIR (SSA form) for fragment shader: decl_var uniform ivec4 color (4294967295, 0) decl_var shader_out ivec4 out_color (4, 0) decl_overload main returning void impl main { block block_0: /* preds: */ vec4 ssa_0 = intrinsic load_uniform () () (0) intrinsic store_output (ssa_0) () (0) /* succs: block_1 */ block block_1: } NIR (final form) for fragment shader: decl_var uniform ivec4 color (4294967295, 0) decl_var shader_out ivec4 out_color (4, 0) decl_overload main returning void impl main { decl_reg vec4 r0 block block_0: /* preds: */ r0 = intrinsic load_uniform () () (0) intrinsic store_output (r0) () (0) /* succs: block_1 */ block block_1: } GLSL IR for native fragment shader 9: ( (declare (uniform ) ivec4 color) (declare (location=4 shader_out ) ivec4 out_color) (declare (temporary ) ivec4 out_color) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref out_color) (var_ref color) ) (assign (xyzw) (var_ref out_color@4) (var_ref out_color) ) )) ) ) Native code for integer clear fragment shader 9 SIMD8 shader: 5 instructions. 0 loops. 0:0 spills:fills. Promoted 0 constants. Compacted 80 to 48 bytes (40%) START B0 mov(8) g124<1>F g2<0,1,0>F { align1 1Q compacted }; mov(8) g125<1>F g2.1<0,1,0>F { align1 1Q compacted }; mov(8) g126<1>F g2.2<0,1,0>F { align1 1Q compacted }; mov(8) g127<1>F g2.3<0,1,0>F { align1 1Q compacted }; sendc(8) null g124<8,8,1>F render RT write SIMD8 LastRT Surface = 0 mlen 4 rlen 0 { align1 1Q EOT }; END B0 Native code for integer clear fragment shader 9 SIMD16 shader: 5 instructions. 0 loops. 0:0 spills:fills. Promoted 0 constants. Compacted 80 to 48 bytes (40%) START B0 mov(16) g120<1>F g2<0,1,0>F { align1 1H compacted }; mov(16) g122<1>F g2.1<0,1,0>F { align1 1H compacted }; mov(16) g124<1>F g2.2<0,1,0>F { align1 1H compacted }; mov(16) g126<1>F g2.3<0,1,0>F { align1 1H compacted }; sendc(16) null g120<8,8,1>F render RT write SIMD16 LastRT Surface = 0 mlen 8 rlen 0 { align1 1H EOT }; END B0 GLSL IR for native vertex shader 9: ( (declare (location=0 shader_out ) vec4 gl_Position) (declare (location=20 shader_out ) int gl_Layer) (declare (location=1 sys ) int gl_InstanceID) (declare (location=17 shader_in ) vec4 position) (function main (signature void (parameters ) ( (assign (x) (var_ref gl_Layer) (var_ref gl_InstanceID) ) (assign (xyzw) (var_ref gl_Position) (var_ref position) ) )) ) ) VS estimated execution time: 30 cycles Native code for integer clear vertex shader 9: VS vec4 shader: 6 instructions. 0 loops. Compacted 96 to 96 bytes (0%) START B0 mov(8) g114<1>UD 0x00000000UD { align16 1Q compacted }; mov(8) g115<1>F g1<4,4,1>F { align16 1Q }; mov(8) g114<1>.yD g2<4,4,1>.wD { align16 1Q }; mov(8) g113<1>UD g0<4,4,1>UD { align16 WE_all 1Q }; or(1) g113.5<1>UD g0.5<0,1,0>UD 0x0000ff00UD { align1 WE_all }; send(8) null g113<4,4,1>F urb 0 write HWord interleave complete mlen 3 rlen 0 { align16 1Q EOT }; nop ; END B0 NIR (SSA form) for fragment shader: decl_var shader_in vec4 fColor (24, 0) decl_var shader_out vec4 color (4, 0) decl_overload main returning void impl main { block block_0: /* preds: */ vec4 ssa_0 = intrinsic load_input () () (0) intrinsic store_output (ssa_0) () (0) /* succs: block_1 */ block block_1: } NIR (final form) for fragment shader: decl_var shader_in vec4 fColor (24, 0) decl_var shader_out vec4 color (4, 0) decl_overload main returning void impl main { decl_reg vec4 r0 block block_0: /* preds: */ r0 = intrinsic load_input () () (0) intrinsic store_output (r0) () (0) /* succs: block_1 */ block block_1: } GLSL IR for native fragment shader 10: ( (declare (location=24 shader_in ) vec4 fColor) (declare (location=4 shader_out ) vec4 color) (declare (temporary ) vec4 color) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref color) (var_ref fColor) ) (assign (xyzw) (var_ref color@5) (var_ref color) ) )) ) ) Native code for unnamed fragment shader 10 SIMD8 shader: 5 instructions. 0 loops. 0:0 spills:fills. Promoted 0 constants. Compacted 80 to 48 bytes (40%) START B0 pln(8) g124<1>F g4<0,1,0>F g2<8,8,1>F { align1 1Q compacted }; pln(8) g125<1>F g4.4<0,1,0>F g2<8,8,1>F { align1 1Q compacted }; pln(8) g126<1>F g5<0,1,0>F g2<8,8,1>F { align1 1Q compacted }; pln(8) g127<1>F g5.4<0,1,0>F g2<8,8,1>F { align1 1Q compacted }; sendc(8) null g124<8,8,1>F render RT write SIMD8 LastRT Surface = 0 mlen 4 rlen 0 { align1 1Q EOT }; END B0 Native code for unnamed fragment shader 10 SIMD16 shader: 5 instructions. 0 loops. 0:0 spills:fills. Promoted 0 constants. Compacted 80 to 48 bytes (40%) START B0 pln(16) g120<1>F g6<0,1,0>F g2<8,8,1>F { align1 1H compacted }; pln(16) g122<1>F g6.4<0,1,0>F g2<8,8,1>F { align1 1H compacted }; pln(16) g124<1>F g7<0,1,0>F g2<8,8,1>F { align1 1H compacted }; pln(16) g126<1>F g7.4<0,1,0>F g2<8,8,1>F { align1 1H compacted }; sendc(16) null g120<8,8,1>F render RT write SIMD16 LastRT Surface = 0 mlen 8 rlen 0 { align1 1H EOT }; END B0 GLSL IR for native vertex shader 10: ( (declare (location=0 shader_out ) vec4 gl_Position) (declare (location=24 shader_out ) vec4 fColor) (declare (location=17 shader_in ) vec4 pos) (declare (location=18 shader_in ) vec2 UV) (declare (uniform ) sampler2DShadow sampler) (declare (uniform ) int funct) (function main (signature void (parameters ) ( (declare () vec4 P4b) (declare () vec4 P4) (declare () vec3 P3b) (declare () vec3 P3) (declare (temporary ) float assignment_tmp) (assign (x) (var_ref assignment_tmp) (expression float + (expression float * (swiz y (var_ref UV) )(constant float (1.500000)) ) (constant float (-0.250000)) ) ) (declare (temporary ) vec3 vec_ctor) (assign (xy) (var_ref vec_ctor) (var_ref UV) ) (assign (z) (var_ref vec_ctor) (var_ref assignment_tmp) ) (assign (xyz) (var_ref P3) (var_ref vec_ctor) ) (declare (temporary ) vec3 vec_ctor@6) (declare (temporary ) vec2 cse) (assign (xy) (var_ref cse) (expression vec2 neg (var_ref UV) ) ) (assign (xy) (var_ref vec_ctor@6) (expression vec2 + (constant float (1.000000)) (var_ref cse) ) ) (assign (z) (var_ref vec_ctor@6) (var_ref assignment_tmp) ) (assign (xyz) (var_ref P3b) (var_ref vec_ctor@6) ) (declare (temporary ) vec4 vec_ctor@7) (assign (w) (var_ref vec_ctor@7) (constant float (1.000000)) ) (assign (xy) (var_ref vec_ctor@7) (var_ref UV) ) (assign (z) (var_ref vec_ctor@7) (var_ref assignment_tmp) ) (assign (xyzw) (var_ref P4) (var_ref vec_ctor@7) ) (declare (temporary ) vec4 vec_ctor@8) (assign (w) (var_ref vec_ctor@8) (constant float (1.000000)) ) (assign (xy) (var_ref vec_ctor@8) (expression vec2 + (constant float (1.000000)) (var_ref cse) ) ) (assign (z) (var_ref vec_ctor@8) (var_ref assignment_tmp) ) (assign (xyzw) (var_ref P4b) (var_ref vec_ctor@8) ) (declare (temporary ) bool switch_is_fallthru_tmp) (assign (x) (var_ref switch_is_fallthru_tmp) (constant bool (0)) ) (loop ( (assign (expression bool == (constant int (0)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( (declare (temporary ) vec4 vec_ctor@9) (assign (yzw) (var_ref vec_ctor@9) (constant vec3 (0.000000 0.000000 1.000000)) ) (assign (x) (var_ref vec_ctor@9) (tex float (var_ref sampler) (swiz xy (var_ref P3) ) 0 1 (swiz z (var_ref P3) ) )) (assign (xyzw) (var_ref fColor) (var_ref vec_ctor@9) ) break ) ()) (assign (expression bool == (constant int (2)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( (declare (temporary ) vec4 vec_ctor@10) (assign (yzw) (var_ref vec_ctor@10) (constant vec3 (0.000000 0.000000 1.000000)) ) (declare (temporary ) float projector) (assign (x) (var_ref projector) (expression float rcp (swiz w (var_ref P4) )) ) (assign (x) (var_ref vec_ctor@10) (tex float (var_ref sampler) (expression vec2 * (swiz xy (var_ref P4) )(var_ref projector) ) 0 1 (expression float * (swiz z (var_ref P4) )(var_ref projector) ) )) (assign (xyzw) (var_ref fColor) (var_ref vec_ctor@10) ) break ) ()) (assign (expression bool == (constant int (4)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( (declare (temporary ) vec4 vec_ctor@11) (assign (zw) (var_ref vec_ctor@11) (constant vec2 (0.000000 1.000000)) ) (assign (x) (var_ref vec_ctor@11) (txl float (var_ref sampler) (swiz xy (var_ref P3) ) 0 1 (swiz z (var_ref P3) ) (constant float (0.000000)) )) (assign (y) (var_ref vec_ctor@11) (txl float (var_ref sampler) (swiz xy (var_ref P3b) ) 0 1 (swiz z (var_ref P3b) ) (constant float (1.000000)) )) (assign (xyzw) (var_ref fColor) (var_ref vec_ctor@11) ) break ) ()) (assign (expression bool == (constant int (5)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( (declare (temporary ) vec4 vec_ctor@12) (assign (zw) (var_ref vec_ctor@12) (constant vec2 (0.000000 1.000000)) ) (declare (temporary ) float projector@13) (assign (x) (var_ref projector@13) (expression float rcp (swiz w (var_ref P4) )) ) (assign (x) (var_ref vec_ctor@12) (txl float (var_ref sampler) (expression vec2 * (swiz xy (var_ref P4) )(var_ref projector@13) ) 0 1 (expression float * (swiz z (var_ref P4) )(var_ref projector@13) ) (constant float (0.000000)) )) (declare (temporary ) float projector@14) (assign (x) (var_ref projector@14) (expression float rcp (swiz w (var_ref P4b) )) ) (assign (y) (var_ref vec_ctor@12) (txl float (var_ref sampler) (expression vec2 * (swiz xy (var_ref P4b) )(var_ref projector@14) ) 0 1 (expression float * (swiz z (var_ref P4b) )(var_ref projector@14) ) (constant float (1.000000)) )) (assign (xyzw) (var_ref fColor) (var_ref vec_ctor@12) ) break ) ()) (assign (expression bool == (constant int (6)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( (declare (temporary ) vec4 vec_ctor@15) (assign (zw) (var_ref vec_ctor@15) (constant vec2 (0.000000 1.000000)) ) (assign (x) (var_ref vec_ctor@15) (txd float (var_ref sampler) (swiz xy (var_ref P3) ) 0 1 (swiz z (var_ref P3) ) ((constant vec2 (0.007812 0.000000)) (constant vec2 (0.000000 0.007812)) ))) (assign (y) (var_ref vec_ctor@15) (txd float (var_ref sampler) (swiz xy (var_ref P3b) ) 0 1 (swiz z (var_ref P3b) ) ((constant vec2 (0.015625 0.000000)) (constant vec2 (0.000000 0.015625)) ))) (assign (xyzw) (var_ref fColor) (var_ref vec_ctor@15) ) break ) ()) (assign (expression bool == (constant int (7)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( (declare (temporary ) vec4 vec_ctor@16) (assign (zw) (var_ref vec_ctor@16) (constant vec2 (0.000000 1.000000)) ) (declare (temporary ) float projector@17) (assign (x) (var_ref projector@17) (expression float rcp (swiz w (var_ref P4) )) ) (assign (x) (var_ref vec_ctor@16) (txd float (var_ref sampler) (expression vec2 * (swiz xy (var_ref P4) )(var_ref projector@17) ) 0 1 (expression float * (swiz z (var_ref P4) )(var_ref projector@17) ) ((constant vec2 (0.007812 0.000000)) (constant vec2 (0.000000 0.007812)) ))) (declare (temporary ) float projector@18) (assign (x) (var_ref projector@18) (expression float rcp (swiz w (var_ref P4b) )) ) (assign (y) (var_ref vec_ctor@16) (txd float (var_ref sampler) (expression vec2 * (swiz xy (var_ref P4b) )(var_ref projector@18) ) 0 1 (expression float * (swiz z (var_ref P4b) )(var_ref projector@18) ) ((constant vec2 (0.015625 0.000000)) (constant vec2 (0.000000 0.015625)) ))) (assign (xyzw) (var_ref fColor) (var_ref vec_ctor@16) ) break ) ()) (assign (expression bool == (constant int (8)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( (declare (temporary ) vec4 vec_ctor@19) (assign (yzw) (var_ref vec_ctor@19) (constant vec3 (0.000000 0.000000 1.000000)) ) (assign (x) (var_ref vec_ctor@19) (tex float (var_ref sampler) (swiz xy (var_ref P3) ) (constant ivec2 (1 1)) 1 (swiz z (var_ref P3) ) )) (assign (xyzw) (var_ref fColor) (var_ref vec_ctor@19) ) break ) ()) (assign (expression bool == (constant int (10)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( (declare (temporary ) vec4 vec_ctor@20) (assign (yzw) (var_ref vec_ctor@20) (constant vec3 (0.000000 0.000000 1.000000)) ) (declare (temporary ) float projector@21) (assign (x) (var_ref projector@21) (expression float rcp (swiz w (var_ref P4) )) ) (assign (x) (var_ref vec_ctor@20) (tex float (var_ref sampler) (expression vec2 * (swiz xy (var_ref P4) )(var_ref projector@21) ) (constant ivec2 (1 1)) 1 (expression float * (swiz z (var_ref P4) )(var_ref projector@21) ) )) (assign (xyzw) (var_ref fColor) (var_ref vec_ctor@20) ) break ) ()) (assign (expression bool == (constant int (12)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( (declare (temporary ) vec4 vec_ctor@22) (assign (zw) (var_ref vec_ctor@22) (constant vec2 (0.000000 1.000000)) ) (assign (x) (var_ref vec_ctor@22) (txl float (var_ref sampler) (swiz xy (var_ref P3) ) (constant ivec2 (1 1)) 1 (swiz z (var_ref P3) ) (constant float (0.000000)) )) (assign (y) (var_ref vec_ctor@22) (txl float (var_ref sampler) (swiz xy (var_ref P3b) ) (constant ivec2 (1 1)) 1 (swiz z (var_ref P3b) ) (constant float (1.000000)) )) (assign (xyzw) (var_ref fColor) (var_ref vec_ctor@22) ) break ) ()) (assign (expression bool == (constant int (13)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( (declare (temporary ) vec4 vec_ctor@23) (assign (zw) (var_ref vec_ctor@23) (constant vec2 (0.000000 1.000000)) ) (declare (temporary ) float projector@24) (assign (x) (var_ref projector@24) (expression float rcp (swiz w (var_ref P4) )) ) (assign (x) (var_ref vec_ctor@23) (txl float (var_ref sampler) (expression vec2 * (swiz xy (var_ref P4) )(var_ref projector@24) ) (constant ivec2 (1 1)) 1 (expression float * (swiz z (var_ref P4) )(var_ref projector@24) ) (constant float (0.000000)) )) (declare (temporary ) float projector@25) (assign (x) (var_ref projector@25) (expression float rcp (swiz w (var_ref P4b) )) ) (assign (y) (var_ref vec_ctor@23) (txl float (var_ref sampler) (expression vec2 * (swiz xy (var_ref P4b) )(var_ref projector@25) ) (constant ivec2 (1 1)) 1 (expression float * (swiz z (var_ref P4b) )(var_ref projector@25) ) (constant float (1.000000)) )) (assign (xyzw) (var_ref fColor) (var_ref vec_ctor@23) ) break ) ()) (assign (expression bool == (constant int (14)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( (declare (temporary ) vec4 vec_ctor@26) (assign (zw) (var_ref vec_ctor@26) (constant vec2 (0.000000 1.000000)) ) (assign (x) (var_ref vec_ctor@26) (txd float (var_ref sampler) (swiz xy (var_ref P3) ) (constant ivec2 (1 1)) 1 (swiz z (var_ref P3) ) ((constant vec2 (0.007812 0.000000)) (constant vec2 (0.000000 0.007812)) ))) (assign (y) (var_ref vec_ctor@26) (txd float (var_ref sampler) (swiz xy (var_ref P3b) ) (constant ivec2 (1 1)) 1 (swiz z (var_ref P3b) ) ((constant vec2 (0.015625 0.000000)) (constant vec2 (0.000000 0.015625)) ))) (assign (xyzw) (var_ref fColor) (var_ref vec_ctor@26) ) break ) ()) (assign (expression bool == (constant int (15)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( (declare (temporary ) vec4 vec_ctor@27) (assign (zw) (var_ref vec_ctor@27) (constant vec2 (0.000000 1.000000)) ) (declare (temporary ) float projector@28) (assign (x) (var_ref projector@28) (expression float rcp (swiz w (var_ref P4) )) ) (assign (x) (var_ref vec_ctor@27) (txd float (var_ref sampler) (expression vec2 * (swiz xy (var_ref P4) )(var_ref projector@28) ) (constant ivec2 (1 1)) 1 (expression float * (swiz z (var_ref P4) )(var_ref projector@28) ) ((constant vec2 (0.007812 0.000000)) (constant vec2 (0.000000 0.007812)) ))) (declare (temporary ) float projector@29) (assign (x) (var_ref projector@29) (expression float rcp (swiz w (var_ref P4b) )) ) (assign (y) (var_ref vec_ctor@27) (txd float (var_ref sampler) (expression vec2 * (swiz xy (var_ref P4b) )(var_ref projector@29) ) (constant ivec2 (1 1)) 1 (expression float * (swiz z (var_ref P4b) )(var_ref projector@29) ) ((constant vec2 (0.015625 0.000000)) (constant vec2 (0.000000 0.015625)) ))) (assign (xyzw) (var_ref fColor) (var_ref vec_ctor@27) ) break ) ()) (assign (expression bool == (constant int (-1)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( break ) ()) (assign (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (assign (xyzw) (var_ref fColor) (constant vec4 (1.000000 1.000000 1.000000 1.000000)) ) break )) (assign (xyzw) (var_ref gl_Position) (var_ref pos) ) )) ) ) VS estimated execution time: 20 cycles Native code for unnamed vertex shader 10: VS vec4 shader: 336 instructions. 1 loops. Compacted 5376 to 5024 bytes (7%) START B0 mov(8) g11<1>.xF -0.25F { align16 1Q }; mov(8) g12<1>.xF 1.5F { align16 1Q }; mov(8) g9<1>.xyF g3<4,4,1>.xyyyF { align16 1Q }; add(8) g84<1>.xyF -g3<4,4,1>.xyyyF 1F { align16 1Q }; mov(8) g7<1>.wF 1F { align16 1Q }; mov(8) g6<1>.wF 1F { align16 1Q }; mad(8) g10<1>.xF g11<4,4,1>.xF g3<4,4,1>.yF g12<4,4,1>.xF { align16 1Q }; mov(8) g8<1>.xyF g84<4,4,1>.xyyyF { align16 1Q }; mov(8) g7<1>.xyF g3<4,4,1>.xyyyF { align16 NoDDClr 1Q }; mov(8) g6<1>.xyF g84<4,4,1>.xyyyF { align16 NoDDClr 1Q }; mov(8) g9<1>.zF g10<4,4,1>.xF { align16 1Q }; mov(8) g8<1>.zF g10<4,4,1>.xF { align16 1Q }; mov(8) g7<1>.zF g10<4,4,1>.xF { align16 NoDDChk 1Q }; mov(8) g6<1>.zF g10<4,4,1>.xF { align16 NoDDChk 1Q }; mov(8) g26<1>.xUD 0x00000000UD { align16 1Q compacted }; END B0 ->B1 START B1 <-B0 <-B28 cmp.z.f0(8) null g1<0,4,1>.xD 0D { align16 1Q switch }; (+f0) mov(8) g26<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g26<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 19 UIP: 19 { align16 1Q }; END B1 ->B2 ->B3 START B2 <-B1 mov(8) g5<1>.yzF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q }; mov(8) g114<1>.xyF g9<4,4,1>.xyyyF { align16 NoDDClr 1Q }; mov(8) g115<1>.xF g9<4,4,1>.zF { align16 NoDDClr 1Q }; mov(8) g5<1>.wF 1F { align16 NoDDChk 1Q }; mov(8) g114<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g115<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; send(8) g32<1>F g114<4,4,1>F sampler sample_l_c SIMD4x2 Surface = 0 Sampler = 0 mlen 2 rlen 1 { align16 1Q }; mov(8) g5<1>.xF g32<4,4,1>.xF { align16 1Q compacted }; break(8) JIP: 2 UIP: 563 { align16 1Q }; END B2 ->B29 START B3 <-B1 endif(8) JIP: 28 { align16 1Q }; cmp.z.f0(8) null g1<0,4,1>.xD 2D { align16 1Q switch }; (+f0) mov(8) g26<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g26<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 21 UIP: 21 { align16 1Q }; END B3 ->B4 ->B5 START B4 <-B3 mov(8) g5<1>.yzF [0F, 0F, 0F, 0F]VF { align16 1Q }; math inv(8) g38<1>.xF g7<4,4,1>.wF null { align16 1Q }; mov(8) g5<1>.wF 1F { align16 1Q }; mul(8) g114<1>.xyF g7<4,4,1>.xyyyF g38<4,4,1>.xF { align16 NoDDClr 1Q }; mul(8) g115<1>.xF g7<4,4,1>.zF g38<4,4,1>.xF { align16 NoDDClr 1Q }; mov(8) g114<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g115<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; send(8) g42<1>F g114<4,4,1>F sampler sample_l_c SIMD4x2 Surface = 0 Sampler = 0 mlen 2 rlen 1 { align16 1Q }; mov(8) g5<1>.xF g42<4,4,1>.xF { align16 1Q compacted }; break(8) JIP: 2 UIP: 535 { align16 1Q }; END B4 ->B29 START B5 <-B3 endif(8) JIP: 38 { align16 1Q }; cmp.z.f0(8) null g1<0,4,1>.xD 4D { align16 1Q switch }; (+f0) mov(8) g26<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g26<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 31 UIP: 31 { align16 1Q }; END B5 ->B6 ->B7 START B6 <-B5 mov(8) g5<1>.zF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q }; mov(8) g114<1>.xyF g9<4,4,1>.xyyyF { align16 NoDDClr 1Q }; mov(8) g115<1>.xF g9<4,4,1>.zF { align16 NoDDClr 1Q }; mov(8) g5<1>.wF 1F { align16 NoDDChk 1Q }; mov(8) g114<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g115<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; send(8) g49<1>F g114<4,4,1>F sampler sample_l_c SIMD4x2 Surface = 0 Sampler = 0 mlen 2 rlen 1 { align16 1Q }; mov(8) g114<1>.xyF g8<4,4,1>.xyyyF { align16 NoDDClr 1Q }; mov(8) g115<1>.xF g8<4,4,1>.zF { align16 NoDDClr 1Q }; mov(8) g114<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g115<1>.yF 1F { align16 NoDDChk 1Q }; send(8) g52<1>F g114<4,4,1>F sampler sample_l_c SIMD4x2 Surface = 0 Sampler = 0 mlen 2 rlen 1 { align16 1Q }; mov(8) g5<1>.xF g49<4,4,1>.xF { align16 NoDDClr 1Q compacted }; mov(8) g5<1>.yF g52<4,4,1>.xF { align16 NoDDChk 1Q }; break(8) JIP: 2 UIP: 497 { align16 1Q }; END B6 ->B29 START B7 <-B5 endif(8) JIP: 42 { align16 1Q }; cmp.z.f0(8) null g1<0,4,1>.xD 5D { align16 1Q switch }; (+f0) mov(8) g26<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g26<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 35 UIP: 35 { align16 1Q }; END B7 ->B8 ->B9 START B8 <-B7 mov(8) g5<1>.zF [0F, 0F, 0F, 0F]VF { align16 1Q }; math inv(8) g58<1>.xF g7<4,4,1>.wF null { align16 1Q }; math inv(8) g65<1>.xF g6<4,4,1>.wF null { align16 1Q }; mov(8) g5<1>.wF 1F { align16 1Q }; mul(8) g114<1>.xyF g7<4,4,1>.xyyyF g58<4,4,1>.xF { align16 NoDDClr 1Q }; mul(8) g115<1>.xF g7<4,4,1>.zF g58<4,4,1>.xF { align16 NoDDClr 1Q }; mov(8) g114<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g115<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; send(8) g63<1>F g114<4,4,1>F sampler sample_l_c SIMD4x2 Surface = 0 Sampler = 0 mlen 2 rlen 1 { align16 1Q }; mul(8) g114<1>.xyF g6<4,4,1>.xyyyF g65<4,4,1>.xF { align16 NoDDClr 1Q }; mul(8) g115<1>.xF g6<4,4,1>.zF g65<4,4,1>.xF { align16 NoDDClr 1Q }; mov(8) g114<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g115<1>.yF 1F { align16 NoDDChk 1Q }; send(8) g70<1>F g114<4,4,1>F sampler sample_l_c SIMD4x2 Surface = 0 Sampler = 0 mlen 2 rlen 1 { align16 1Q }; mov(8) g5<1>.xF g63<4,4,1>.xF { align16 NoDDClr 1Q compacted }; mov(8) g5<1>.yF g70<4,4,1>.xF { align16 NoDDChk 1Q }; break(8) JIP: 2 UIP: 455 { align16 1Q }; END B8 ->B29 START B9 <-B7 endif(8) JIP: 64 { align16 1Q }; cmp.z.f0(8) null g1<0,4,1>.xD 6D { align16 1Q switch }; (+f0) mov(8) g26<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g26<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 57 UIP: 57 { align16 1Q }; END B9 ->B10 ->B11 START B10 <-B9 mov(8) g5<1>.zF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q }; mov(8) g76<1>.xF 0.0078125F { align16 NoDDClr 1Q }; mov(8) g77<1>.xF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q compacted }; mov(8) g114<1>.xyF g9<4,4,1>.xyyyF { align16 NoDDClr 1Q }; mov(8) g80<1>.xF 0.015625F { align16 NoDDClr 1Q }; mov(8) g81<1>.xF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q compacted }; mov(8) g5<1>.wF 1F { align16 NoDDChk 1Q }; mov(8) g76<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; mov(8) g77<1>.yF 0.0078125F { align16 NoDDChk 1Q }; mov(8) g114<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g80<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; mov(8) g81<1>.yF 0.015625F { align16 NoDDChk 1Q }; mov(8) g115<1>.xzF g76<4,4,1>.xxyyF { align16 NoDDClr 1Q }; mov(8) g116<1>.xF g76<4,4,1>.zF { align16 NoDDClr 1Q }; mov(8) g115<1>.ywF g77<4,4,1>.xxxyF { align16 NoDDChk 1Q }; mov(8) g116<1>.yF g77<4,4,1>.zF { align16 NoDDClr,NoDDChk 1Q }; mov(8) g116<1>.zF g9<4,4,1>.zF { align16 NoDDChk 1Q }; send(8) g78<1>F g114<4,4,1>F sampler sample_d_c SIMD4x2 Surface = 0 Sampler = 0 mlen 3 rlen 1 { align16 1Q }; mov(8) g114<1>.xyF g8<4,4,1>.xyyyF { align16 NoDDClr 1Q }; mov(8) g115<1>.xzF g80<4,4,1>.xxyyF { align16 NoDDClr 1Q }; mov(8) g116<1>.xF g80<4,4,1>.zF { align16 NoDDClr 1Q }; mov(8) g114<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g115<1>.ywF g81<4,4,1>.xxxyF { align16 NoDDChk 1Q }; mov(8) g116<1>.yF g81<4,4,1>.zF { align16 NoDDClr,NoDDChk 1Q }; mov(8) g116<1>.zF g8<4,4,1>.zF { align16 NoDDChk 1Q }; send(8) g82<1>F g114<4,4,1>F sampler sample_d_c SIMD4x2 Surface = 0 Sampler = 0 mlen 3 rlen 1 { align16 1Q }; mov(8) g5<1>.xF g78<4,4,1>.xF { align16 NoDDClr 1Q compacted }; mov(8) g5<1>.yF g82<4,4,1>.xF { align16 NoDDChk 1Q }; break(8) JIP: 2 UIP: 391 { align16 1Q }; END B10 ->B29 START B11 <-B9 endif(8) JIP: 72 { align16 1Q }; cmp.z.f0(8) null g1<0,4,1>.xD 7D { align16 1Q switch }; (+f0) mov(8) g26<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g26<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 65 UIP: 65 { align16 1Q }; END B11 ->B12 ->B13 START B12 <-B11 mov(8) g5<1>.zF [0F, 0F, 0F, 0F]VF { align16 1Q }; math inv(8) g88<1>.xF g7<4,4,1>.wF null { align16 1Q }; mov(8) g92<1>.xF 0.0078125F { align16 1Q }; mov(8) g93<1>.xF [0F, 0F, 0F, 0F]VF { align16 1Q compacted }; math inv(8) g96<1>.xF g6<4,4,1>.wF null { align16 1Q }; mov(8) g100<1>.xF 0.015625F { align16 NoDDClr 1Q }; mov(8) g101<1>.xF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q compacted }; mov(8) g5<1>.wF 1F { align16 1Q }; mul(8) g114<1>.xyF g7<4,4,1>.xyyyF g88<4,4,1>.xF { align16 NoDDClr 1Q }; mul(8) g91<1>.xF g7<4,4,1>.zF g88<4,4,1>.xF { align16 1Q }; mov(8) g92<1>.yF [0F, 0F, 0F, 0F]VF { align16 1Q }; mov(8) g93<1>.yF 0.0078125F { align16 1Q }; mul(8) g99<1>.xF g6<4,4,1>.zF g96<4,4,1>.xF { align16 1Q }; mov(8) g100<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; mov(8) g101<1>.yF 0.015625F { align16 NoDDChk 1Q }; mov(8) g114<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g115<1>.xzF g92<4,4,1>.xxyyF { align16 NoDDClr 1Q }; mov(8) g116<1>.xF g92<4,4,1>.zF { align16 NoDDClr 1Q }; mov(8) g115<1>.ywF g93<4,4,1>.xxxyF { align16 NoDDChk 1Q }; mov(8) g116<1>.yF g93<4,4,1>.zF { align16 NoDDClr,NoDDChk 1Q }; mov(8) g116<1>.zF g91<4,4,1>.xF { align16 NoDDChk 1Q }; send(8) g94<1>F g114<4,4,1>F sampler sample_d_c SIMD4x2 Surface = 0 Sampler = 0 mlen 3 rlen 1 { align16 1Q }; mul(8) g114<1>.xyF g6<4,4,1>.xyyyF g96<4,4,1>.xF { align16 NoDDClr 1Q }; mov(8) g115<1>.xzF g100<4,4,1>.xxyyF { align16 NoDDClr 1Q }; mov(8) g116<1>.xF g100<4,4,1>.zF { align16 NoDDClr 1Q }; mov(8) g114<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g115<1>.ywF g101<4,4,1>.xxxyF { align16 NoDDChk 1Q }; mov(8) g116<1>.yF g101<4,4,1>.zF { align16 NoDDClr,NoDDChk 1Q }; mov(8) g116<1>.zF g99<4,4,1>.xF { align16 NoDDChk 1Q }; send(8) g102<1>F g114<4,4,1>F sampler sample_d_c SIMD4x2 Surface = 0 Sampler = 0 mlen 3 rlen 1 { align16 1Q }; mov(8) g5<1>.xF g94<4,4,1>.xF { align16 NoDDClr 1Q compacted }; mov(8) g5<1>.yF g102<4,4,1>.xF { align16 NoDDChk 1Q }; break(8) JIP: 2 UIP: 319 { align16 1Q }; END B12 ->B29 START B13 <-B11 endif(8) JIP: 29 { align16 1Q }; cmp.z.f0(8) null g1<0,4,1>.xD 8D { align16 1Q switch }; (+f0) mov(8) g26<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g26<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 22 UIP: 22 { align16 1Q }; END B13 ->B14 ->B15 START B14 <-B13 mov(8) g5<1>.yzF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q }; mov(8) g115<1>.xyF g9<4,4,1>.xyyyF { align16 NoDDClr 1Q }; mov(8) g116<1>.xF g9<4,4,1>.zF { align16 NoDDClr 1Q }; mov(8) g5<1>.wF 1F { align16 NoDDChk 1Q }; mov(8) g115<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g116<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; mov(8) g114<1>UD g0<4,4,1>UD { align16 WE_all 1Q }; mov(1) g114.2<1>UD 0x00000110UD { align1 WE_all compacted }; send(8) g108<1>F g114<4,4,1>F sampler sample_l_c SIMD4x2 Surface = 0 Sampler = 0 mlen 3 rlen 1 { align16 1Q }; mov(8) g5<1>.xF g108<4,4,1>.xF { align16 1Q compacted }; break(8) JIP: 2 UIP: 290 { align16 1Q }; END B14 ->B29 START B15 <-B13 endif(8) JIP: 31 { align16 1Q }; cmp.z.f0(8) null g1<0,4,1>.xD 10D { align16 1Q switch }; (+f0) mov(8) g26<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g26<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 24 UIP: 24 { align16 1Q }; END B15 ->B16 ->B17 START B16 <-B15 mov(8) g5<1>.yzF [0F, 0F, 0F, 0F]VF { align16 1Q }; math inv(8) g10<1>.xF g7<4,4,1>.wF null { align16 1Q }; mov(8) g5<1>.wF 1F { align16 1Q }; mul(8) g115<1>.xyF g7<4,4,1>.xyyyF g10<4,4,1>.xF { align16 NoDDClr 1Q }; mul(8) g116<1>.xF g7<4,4,1>.zF g10<4,4,1>.xF { align16 NoDDClr 1Q }; mov(8) g115<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g116<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; mov(8) g114<1>UD g0<4,4,1>UD { align16 WE_all 1Q }; mov(1) g114.2<1>UD 0x00000110UD { align1 WE_all compacted }; send(8) g14<1>F g114<4,4,1>F sampler sample_l_c SIMD4x2 Surface = 0 Sampler = 0 mlen 3 rlen 1 { align16 1Q }; mov(8) g5<1>.xF g14<4,4,1>.xF { align16 1Q compacted }; break(8) JIP: 2 UIP: 259 { align16 1Q }; END B16 ->B29 START B17 <-B15 endif(8) JIP: 44 { align16 1Q }; cmp.z.f0(8) null g1<0,4,1>.xD 12D { align16 1Q switch }; (+f0) mov(8) g26<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g26<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 37 UIP: 37 { align16 1Q }; END B17 ->B18 ->B19 START B18 <-B17 mov(8) g5<1>.zF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q }; mov(8) g115<1>.xyF g9<4,4,1>.xyyyF { align16 NoDDClr 1Q }; mov(8) g116<1>.xF g9<4,4,1>.zF { align16 NoDDClr 1Q }; mov(8) g5<1>.wF 1F { align16 NoDDChk 1Q }; mov(8) g115<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g116<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; mov(8) g114<1>UD g0<4,4,1>UD { align16 WE_all 1Q }; mov(1) g114.2<1>UD 0x00000110UD { align1 WE_all compacted }; send(8) g21<1>F g114<4,4,1>F sampler sample_l_c SIMD4x2 Surface = 0 Sampler = 0 mlen 3 rlen 1 { align16 1Q }; mov(8) g115<1>.xyF g8<4,4,1>.xyyyF { align16 NoDDClr 1Q }; mov(8) g116<1>.xF g8<4,4,1>.zF { align16 NoDDClr 1Q }; mov(8) g115<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g116<1>.yF 1F { align16 NoDDChk 1Q }; mov(8) g114<1>UD g0<4,4,1>UD { align16 WE_all 1Q }; mov(1) g114.2<1>UD 0x00000110UD { align1 WE_all compacted }; send(8) g24<1>F g114<4,4,1>F sampler sample_l_c SIMD4x2 Surface = 0 Sampler = 0 mlen 3 rlen 1 { align16 1Q }; mov(8) g5<1>.xF g21<4,4,1>.xF { align16 NoDDClr 1Q compacted }; mov(8) g5<1>.yF g24<4,4,1>.xF { align16 NoDDChk 1Q }; break(8) JIP: 2 UIP: 215 { align16 1Q }; END B18 ->B29 START B19 <-B17 endif(8) JIP: 48 { align16 1Q }; cmp.z.f0(8) null g1<0,4,1>.xD 13D { align16 1Q switch }; (+f0) mov(8) g26<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g26<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 41 UIP: 41 { align16 1Q }; END B19 ->B20 ->B21 START B20 <-B19 mov(8) g5<1>.zF [0F, 0F, 0F, 0F]VF { align16 1Q }; math inv(8) g30<1>.xF g7<4,4,1>.wF null { align16 1Q }; math inv(8) g37<1>.xF g6<4,4,1>.wF null { align16 1Q }; mov(8) g5<1>.wF 1F { align16 1Q }; mul(8) g115<1>.xyF g7<4,4,1>.xyyyF g30<4,4,1>.xF { align16 NoDDClr 1Q }; mul(8) g116<1>.xF g7<4,4,1>.zF g30<4,4,1>.xF { align16 NoDDClr 1Q }; mov(8) g115<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g116<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; mov(8) g114<1>UD g0<4,4,1>UD { align16 WE_all 1Q }; mov(1) g114.2<1>UD 0x00000110UD { align1 WE_all compacted }; send(8) g35<1>F g114<4,4,1>F sampler sample_l_c SIMD4x2 Surface = 0 Sampler = 0 mlen 3 rlen 1 { align16 1Q }; mul(8) g115<1>.xyF g6<4,4,1>.xyyyF g37<4,4,1>.xF { align16 NoDDClr 1Q }; mul(8) g116<1>.xF g6<4,4,1>.zF g37<4,4,1>.xF { align16 NoDDClr 1Q }; mov(8) g115<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g116<1>.yF 1F { align16 NoDDChk 1Q }; mov(8) g114<1>UD g0<4,4,1>UD { align16 WE_all 1Q }; mov(1) g114.2<1>UD 0x00000110UD { align1 WE_all compacted }; send(8) g42<1>F g114<4,4,1>F sampler sample_l_c SIMD4x2 Surface = 0 Sampler = 0 mlen 3 rlen 1 { align16 1Q }; mov(8) g5<1>.xF g35<4,4,1>.xF { align16 NoDDClr 1Q compacted }; mov(8) g5<1>.yF g42<4,4,1>.xF { align16 NoDDChk 1Q }; break(8) JIP: 2 UIP: 167 { align16 1Q }; END B20 ->B29 START B21 <-B19 endif(8) JIP: 70 { align16 1Q }; cmp.z.f0(8) null g1<0,4,1>.xD 14D { align16 1Q switch }; (+f0) mov(8) g26<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g26<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 63 UIP: 63 { align16 1Q }; END B21 ->B22 ->B23 START B22 <-B21 mov(8) g5<1>.zF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q }; mov(8) g48<1>.xF 0.0078125F { align16 NoDDClr 1Q }; mov(8) g50<1>.xF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q compacted }; mov(8) g115<1>.xyF g9<4,4,1>.xyyyF { align16 NoDDClr 1Q }; mov(8) g53<1>.xF 0.015625F { align16 NoDDClr 1Q }; mov(8) g54<1>.xF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q compacted }; mov(8) g5<1>.wF 1F { align16 NoDDChk 1Q }; mov(8) g48<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; mov(8) g50<1>.yF 0.0078125F { align16 NoDDChk 1Q }; mov(8) g115<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g53<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; mov(8) g54<1>.yF 0.015625F { align16 NoDDChk 1Q }; mov(8) g116<1>.xzF g48<4,4,1>.xxyyF { align16 NoDDClr 1Q }; mov(8) g117<1>.xF g48<4,4,1>.zF { align16 NoDDClr 1Q }; mov(8) g116<1>.ywF g50<4,4,1>.xxxyF { align16 NoDDChk 1Q }; mov(8) g117<1>.yF g50<4,4,1>.zF { align16 NoDDClr,NoDDChk 1Q }; mov(8) g117<1>.zF g9<4,4,1>.zF { align16 NoDDChk 1Q }; mov(8) g114<1>UD g0<4,4,1>UD { align16 WE_all 1Q }; mov(1) g114.2<1>UD 0x00000110UD { align1 WE_all compacted }; send(8) g51<1>F g114<4,4,1>F sampler sample_d_c SIMD4x2 Surface = 0 Sampler = 0 mlen 4 rlen 1 { align16 1Q }; mov(8) g115<1>.xyF g8<4,4,1>.xyyyF { align16 NoDDClr 1Q }; mov(8) g116<1>.xzF g53<4,4,1>.xxyyF { align16 NoDDClr 1Q }; mov(8) g117<1>.xF g53<4,4,1>.zF { align16 NoDDClr 1Q }; mov(8) g115<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g116<1>.ywF g54<4,4,1>.xxxyF { align16 NoDDChk 1Q }; mov(8) g117<1>.yF g54<4,4,1>.zF { align16 NoDDClr,NoDDChk 1Q }; mov(8) g117<1>.zF g8<4,4,1>.zF { align16 NoDDChk 1Q }; mov(8) g114<1>UD g0<4,4,1>UD { align16 WE_all 1Q }; mov(1) g114.2<1>UD 0x00000110UD { align1 WE_all compacted }; send(8) g55<1>F g114<4,4,1>F sampler sample_d_c SIMD4x2 Surface = 0 Sampler = 0 mlen 4 rlen 1 { align16 1Q }; mov(8) g5<1>.xF g51<4,4,1>.xF { align16 NoDDClr 1Q compacted }; mov(8) g5<1>.yF g55<4,4,1>.xF { align16 NoDDChk 1Q }; break(8) JIP: 2 UIP: 97 { align16 1Q }; END B22 ->B29 START B23 <-B21 endif(8) JIP: 78 { align16 1Q }; cmp.z.f0(8) null g1<0,4,1>.xD 15D { align16 1Q switch }; (+f0) mov(8) g26<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g26<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 71 UIP: 71 { align16 1Q }; END B23 ->B24 ->B25 START B24 <-B23 mov(8) g5<1>.zF [0F, 0F, 0F, 0F]VF { align16 1Q }; math inv(8) g61<1>.xF g7<4,4,1>.wF null { align16 1Q }; mov(8) g66<1>.xF 0.0078125F { align16 1Q }; mov(8) g67<1>.xF [0F, 0F, 0F, 0F]VF { align16 1Q compacted }; math inv(8) g70<1>.xF g6<4,4,1>.wF null { align16 1Q }; mov(8) g74<1>.xF 0.015625F { align16 NoDDClr 1Q }; mov(8) g75<1>.xF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q compacted }; mov(8) g5<1>.wF 1F { align16 1Q }; mul(8) g115<1>.xyF g7<4,4,1>.xyyyF g61<4,4,1>.xF { align16 NoDDClr 1Q }; mul(8) g64<1>.xF g7<4,4,1>.zF g61<4,4,1>.xF { align16 1Q }; mov(8) g66<1>.yF [0F, 0F, 0F, 0F]VF { align16 1Q }; mov(8) g67<1>.yF 0.0078125F { align16 1Q }; mul(8) g73<1>.xF g6<4,4,1>.zF g70<4,4,1>.xF { align16 1Q }; mov(8) g74<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; mov(8) g75<1>.yF 0.015625F { align16 NoDDChk 1Q }; mov(8) g115<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g116<1>.xzF g66<4,4,1>.xxyyF { align16 NoDDClr 1Q }; mov(8) g117<1>.xF g66<4,4,1>.zF { align16 NoDDClr 1Q }; mov(8) g116<1>.ywF g67<4,4,1>.xxxyF { align16 NoDDChk 1Q }; mov(8) g117<1>.yF g67<4,4,1>.zF { align16 NoDDClr,NoDDChk 1Q }; mov(8) g117<1>.zF g64<4,4,1>.xF { align16 NoDDChk 1Q }; mov(8) g114<1>UD g0<4,4,1>UD { align16 WE_all 1Q }; mov(1) g114.2<1>UD 0x00000110UD { align1 WE_all compacted }; send(8) g68<1>F g114<4,4,1>F sampler sample_d_c SIMD4x2 Surface = 0 Sampler = 0 mlen 4 rlen 1 { align16 1Q }; mul(8) g115<1>.xyF g6<4,4,1>.xyyyF g70<4,4,1>.xF { align16 NoDDClr 1Q }; mov(8) g116<1>.xzF g74<4,4,1>.xxyyF { align16 NoDDClr 1Q }; mov(8) g117<1>.xF g74<4,4,1>.zF { align16 NoDDClr 1Q }; mov(8) g115<1>.zwF 0D { align16 NoDDChk 1Q }; mov(8) g116<1>.ywF g75<4,4,1>.xxxyF { align16 NoDDChk 1Q }; mov(8) g117<1>.yF g75<4,4,1>.zF { align16 NoDDClr,NoDDChk 1Q }; mov(8) g117<1>.zF g73<4,4,1>.xF { align16 NoDDChk 1Q }; mov(8) g114<1>UD g0<4,4,1>UD { align16 WE_all 1Q }; mov(1) g114.2<1>UD 0x00000110UD { align1 WE_all compacted }; send(8) g78<1>F g114<4,4,1>F sampler sample_d_c SIMD4x2 Surface = 0 Sampler = 0 mlen 4 rlen 1 { align16 1Q }; mov(8) g5<1>.xF g68<4,4,1>.xF { align16 NoDDClr 1Q compacted }; mov(8) g5<1>.yF g78<4,4,1>.xF { align16 NoDDChk 1Q }; break(8) JIP: 2 UIP: 19 { align16 1Q }; END B24 ->B29 START B25 <-B23 endif(8) JIP: 11 { align16 1Q }; cmp.z.f0(8) null g1<0,4,1>.xD -1D { align16 1Q switch }; (+f0) mov(8) g26<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g26<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 4 UIP: 4 { align16 1Q }; END B25 ->B26 ->B27 START B26 <-B25 break(8) JIP: 2 UIP: 8 { align16 1Q }; END B26 ->B29 START B27 <-B25 endif(8) JIP: 6 { align16 1Q }; mov(8) g5<1>F 1F { align16 1Q }; break(8) JIP: 2 UIP: 2 { align16 1Q }; END B27 ->B29 START B28 while(8) JIP: -585 { align16 1Q }; END B28 ->B1 START B29 <-B2 <-B4 <-B6 <-B8 <-B10 <-B12 <-B14 <-B16 <-B18 <-B20 <-B22 <-B24 <-B26 <-B27 mov(8) g114<1>UD 0x00000000UD { align16 1Q compacted }; mov(8) g115<1>F g2<4,4,1>F { align16 1Q }; mov(8) g116<1>F g5<4,4,1>F { align16 1Q }; mov(8) g113<1>UD g0<4,4,1>UD { align16 WE_all 1Q }; or(1) g113.5<1>UD g0.5<0,1,0>UD 0x0000ff00UD { align1 WE_all }; send(8) null g113<4,4,1>F urb 0 write HWord interleave complete mlen 5 rlen 0 { align16 1Q EOT }; nop ; END B29 NIR (SSA form) for fragment shader: decl_var shader_in vec4 fColor (24, 0) decl_var shader_out vec4 color (4, 0) decl_overload main returning void impl main { block block_0: /* preds: */ vec4 ssa_0 = intrinsic load_input () () (0) intrinsic store_output (ssa_0) () (0) /* succs: block_1 */ block block_1: } NIR (final form) for fragment shader: decl_var shader_in vec4 fColor (24, 0) decl_var shader_out vec4 color (4, 0) decl_overload main returning void impl main { decl_reg vec4 r0 block block_0: /* preds: */ r0 = intrinsic load_input () () (0) intrinsic store_output (r0) () (0) /* succs: block_1 */ block block_1: } GLSL IR for native fragment shader 13: ( (declare (location=24 shader_in ) vec4 fColor) (declare (location=4 shader_out ) vec4 color) (declare (temporary ) vec4 color) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref color) (var_ref fColor) ) (assign (xyzw) (var_ref color@30) (var_ref color) ) )) ) ) Native code for unnamed fragment shader 13 SIMD8 shader: 5 instructions. 0 loops. 0:0 spills:fills. Promoted 0 constants. Compacted 80 to 48 bytes (40%) START B0 pln(8) g124<1>F g4<0,1,0>F g2<8,8,1>F { align1 1Q compacted }; pln(8) g125<1>F g4.4<0,1,0>F g2<8,8,1>F { align1 1Q compacted }; pln(8) g126<1>F g5<0,1,0>F g2<8,8,1>F { align1 1Q compacted }; pln(8) g127<1>F g5.4<0,1,0>F g2<8,8,1>F { align1 1Q compacted }; sendc(8) null g124<8,8,1>F render RT write SIMD8 LastRT Surface = 0 mlen 4 rlen 0 { align1 1Q EOT }; END B0 Native code for unnamed fragment shader 13 SIMD16 shader: 5 instructions. 0 loops. 0:0 spills:fills. Promoted 0 constants. Compacted 80 to 48 bytes (40%) START B0 pln(16) g120<1>F g6<0,1,0>F g2<8,8,1>F { align1 1H compacted }; pln(16) g122<1>F g6.4<0,1,0>F g2<8,8,1>F { align1 1H compacted }; pln(16) g124<1>F g7<0,1,0>F g2<8,8,1>F { align1 1H compacted }; pln(16) g126<1>F g7.4<0,1,0>F g2<8,8,1>F { align1 1H compacted }; sendc(16) null g120<8,8,1>F render RT write SIMD16 LastRT Surface = 0 mlen 8 rlen 0 { align1 1H EOT }; END B0 GLSL IR for native vertex shader 13: ( (declare (location=0 shader_out ) vec4 gl_Position) (declare (location=24 shader_out ) vec4 fColor) (declare (location=17 shader_in ) vec4 pos) (declare (location=18 shader_in ) vec2 UV) (declare (uniform ) sampler2DArrayShadow sampler) (declare (uniform ) int funct) (function main (signature void (parameters ) ( (declare () vec4 P4_2b) (declare () vec4 P4b) (declare () vec4 P4) (declare (temporary ) float assignment_tmp) (assign (x) (var_ref assignment_tmp) (expression float + (expression float * (swiz y (var_ref UV) )(constant float (1.500000)) ) (constant float (-0.250000)) ) ) (declare (temporary ) vec2 cse) (assign (xy) (var_ref cse) (expression vec2 neg (var_ref UV) ) ) (declare (temporary ) vec4 vec_ctor) (assign (z) (var_ref vec_ctor) (constant float (0.000000)) ) (assign (xy) (var_ref vec_ctor) (var_ref UV) ) (assign (w) (var_ref vec_ctor) (var_ref assignment_tmp) ) (assign (xyzw) (var_ref P4) (var_ref vec_ctor) ) (declare (temporary ) vec4 vec_ctor@31) (assign (z) (var_ref vec_ctor@31) (constant float (0.000000)) ) (assign (xy) (var_ref vec_ctor@31) (expression vec2 + (constant float (1.000000)) (var_ref cse) ) ) (assign (w) (var_ref vec_ctor@31) (var_ref assignment_tmp) ) (assign (xyzw) (var_ref P4b) (var_ref vec_ctor@31) ) (declare (temporary ) vec4 vec_ctor@32) (assign (z) (var_ref vec_ctor@32) (constant float (1.000000)) ) (assign (xy) (var_ref vec_ctor@32) (expression vec2 + (constant float (1.000000)) (var_ref cse) ) ) (assign (w) (var_ref vec_ctor@32) (var_ref assignment_tmp) ) (assign (xyzw) (var_ref P4_2b) (var_ref vec_ctor@32) ) (declare (temporary ) bool switch_is_fallthru_tmp) (assign (x) (var_ref switch_is_fallthru_tmp) (constant bool (0)) ) (loop ( (assign (expression bool == (constant int (0)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( (declare (temporary ) vec4 vec_ctor@33) (assign (zw) (var_ref vec_ctor@33) (constant vec2 (0.000000 1.000000)) ) (assign (x) (var_ref vec_ctor@33) (tex float (var_ref sampler) (swiz xyz (var_ref P4) ) 0 1 (swiz w (var_ref P4) ) )) (assign (y) (var_ref vec_ctor@33) (tex float (var_ref sampler) (swiz xyz (var_ref P4_2b) ) 0 1 (swiz w (var_ref P4_2b) ) )) (assign (xyzw) (var_ref fColor) (var_ref vec_ctor@33) ) break ) ()) (assign (expression bool == (constant int (6)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( (declare (temporary ) vec4 vec_ctor@34) (assign (zw) (var_ref vec_ctor@34) (constant vec2 (0.000000 1.000000)) ) (assign (x) (var_ref vec_ctor@34) (txd float (var_ref sampler) (swiz xyz (var_ref P4) ) 0 1 (swiz w (var_ref P4) ) ((constant vec2 (0.007812 0.000000)) (constant vec2 (0.000000 0.007812)) ))) (assign (y) (var_ref vec_ctor@34) (txd float (var_ref sampler) (swiz xyz (var_ref P4b) ) 0 1 (swiz w (var_ref P4b) ) ((constant vec2 (0.015625 0.000000)) (constant vec2 (0.000000 0.015625)) ))) (assign (xyzw) (var_ref fColor) (var_ref vec_ctor@34) ) break ) ()) (assign (expression bool == (constant int (14)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( (declare (temporary ) vec4 vec_ctor@35) (assign (zw) (var_ref vec_ctor@35) (constant vec2 (0.000000 1.000000)) ) (assign (x) (var_ref vec_ctor@35) (txd float (var_ref sampler) (swiz xyz (var_ref P4) ) (constant ivec2 (1 1)) 1 (swiz w (var_ref P4) ) ((constant vec2 (0.007812 0.000000)) (constant vec2 (0.000000 0.007812)) ))) (assign (y) (var_ref vec_ctor@35) (txd float (var_ref sampler) (swiz xyz (var_ref P4b) ) (constant ivec2 (1 1)) 1 (swiz w (var_ref P4b) ) ((constant vec2 (0.015625 0.000000)) (constant vec2 (0.000000 0.015625)) ))) (assign (xyzw) (var_ref fColor) (var_ref vec_ctor@35) ) break ) ()) (assign (expression bool == (constant int (-1)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( break ) ()) (assign (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (assign (xyzw) (var_ref fColor) (constant vec4 (1.000000 1.000000 1.000000 1.000000)) ) break )) (assign (xyzw) (var_ref gl_Position) (var_ref pos) ) )) ) ) VS estimated execution time: 20 cycles Native code for unnamed vertex shader 13: VS vec4 shader: 121 instructions. 1 loops. Compacted 1936 to 1792 bytes (7%) START B0 mov(8) g10<1>.xF -0.25F { align16 1Q }; mov(8) g11<1>.xF 1.5F { align16 1Q }; mov(8) g8<1>.zF [0F, 0F, 0F, 0F]VF { align16 1Q }; mov(8) g7<1>.zF [0F, 0F, 0F, 0F]VF { align16 1Q }; add(8) g63<1>.xyF -g3<4,4,1>.xyyyF 1F { align16 1Q }; mov(8) g6<1>.zF 1F { align16 1Q }; mad(8) g9<1>.xF g10<4,4,1>.xF g3<4,4,1>.yF g11<4,4,1>.xF { align16 1Q }; mov(8) g8<1>.xyF g3<4,4,1>.xyyyF { align16 NoDDClr 1Q }; mov(8) g7<1>.xyF g63<4,4,1>.xyyyF { align16 NoDDClr 1Q }; mov(8) g6<1>.xyF g63<4,4,1>.xyyyF { align16 NoDDClr 1Q }; mov(8) g8<1>.wF g9<4,4,1>.xF { align16 NoDDChk 1Q compacted }; mov(8) g7<1>.wF g9<4,4,1>.xF { align16 NoDDChk 1Q compacted }; mov(8) g6<1>.wF g9<4,4,1>.xF { align16 NoDDChk 1Q compacted }; mov(8) g25<1>.xUD 0x00000000UD { align16 1Q compacted }; END B0 ->B1 START B1 <-B0 <-B10 cmp.z.f0(8) null g1<0,4,1>.xD 0D { align16 1Q switch }; (+f0) mov(8) g25<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g25<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 31 UIP: 31 { align16 1Q }; END B1 ->B2 ->B3 START B2 <-B1 mov(8) g5<1>.zF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q }; mov(8) g114<1>.xyzF g8<4,4,1>.xyzzF { align16 NoDDClr 1Q }; mov(8) g115<1>.xF g8<4,4,1>.wF { align16 NoDDClr 1Q }; mov(8) g5<1>.wF 1F { align16 NoDDChk 1Q }; mov(8) g114<1>.wF 0D { align16 NoDDChk 1Q }; mov(8) g115<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; send(8) g31<1>F g114<4,4,1>F sampler sample_l_c SIMD4x2 Surface = 0 Sampler = 0 mlen 2 rlen 1 { align16 1Q }; mov(8) g114<1>.xyzF g6<4,4,1>.xyzzF { align16 NoDDClr 1Q }; mov(8) g115<1>.xF g6<4,4,1>.wF { align16 NoDDClr 1Q }; mov(8) g114<1>.wF 0D { align16 NoDDChk 1Q }; mov(8) g115<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; send(8) g33<1>F g114<4,4,1>F sampler sample_l_c SIMD4x2 Surface = 0 Sampler = 0 mlen 2 rlen 1 { align16 1Q }; mov(8) g5<1>.xF g31<4,4,1>.xF { align16 NoDDClr 1Q compacted }; mov(8) g5<1>.yF g33<4,4,1>.xF { align16 NoDDChk 1Q }; break(8) JIP: 2 UIP: 153 { align16 1Q }; END B2 ->B11 START B3 <-B1 endif(8) JIP: 64 { align16 1Q }; cmp.z.f0(8) null g1<0,4,1>.xD 6D { align16 1Q switch }; (+f0) mov(8) g25<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g25<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 57 UIP: 57 { align16 1Q }; END B3 ->B4 ->B5 START B4 <-B3 mov(8) g5<1>.zF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q }; mov(8) g39<1>.xF 0.0078125F { align16 NoDDClr 1Q }; mov(8) g40<1>.xF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q compacted }; mov(8) g114<1>.xyzF g8<4,4,1>.xyzzF { align16 NoDDClr 1Q }; mov(8) g43<1>.xF 0.015625F { align16 NoDDClr 1Q }; mov(8) g44<1>.xF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q compacted }; mov(8) g5<1>.wF 1F { align16 NoDDChk 1Q }; mov(8) g39<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; mov(8) g40<1>.yF 0.0078125F { align16 NoDDChk 1Q }; mov(8) g114<1>.wF 0D { align16 NoDDChk 1Q }; mov(8) g43<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; mov(8) g44<1>.yF 0.015625F { align16 NoDDChk 1Q }; mov(8) g115<1>.xzF g39<4,4,1>.xxyyF { align16 NoDDClr 1Q }; mov(8) g116<1>.xF g39<4,4,1>.zF { align16 NoDDClr 1Q }; mov(8) g115<1>.ywF g40<4,4,1>.xxxyF { align16 NoDDChk 1Q }; mov(8) g116<1>.yF g40<4,4,1>.zF { align16 NoDDClr,NoDDChk 1Q }; mov(8) g116<1>.zF g8<4,4,1>.wF { align16 NoDDChk 1Q }; send(8) g41<1>F g114<4,4,1>F sampler sample_d_c SIMD4x2 Surface = 0 Sampler = 0 mlen 3 rlen 1 { align16 1Q }; mov(8) g114<1>.xyzF g7<4,4,1>.xyzzF { align16 NoDDClr 1Q }; mov(8) g115<1>.xzF g43<4,4,1>.xxyyF { align16 NoDDClr 1Q }; mov(8) g116<1>.xF g43<4,4,1>.zF { align16 NoDDClr 1Q }; mov(8) g114<1>.wF 0D { align16 NoDDChk 1Q }; mov(8) g115<1>.ywF g44<4,4,1>.xxxyF { align16 NoDDChk 1Q }; mov(8) g116<1>.yF g44<4,4,1>.zF { align16 NoDDClr,NoDDChk 1Q }; mov(8) g116<1>.zF g7<4,4,1>.wF { align16 NoDDChk 1Q }; send(8) g45<1>F g114<4,4,1>F sampler sample_d_c SIMD4x2 Surface = 0 Sampler = 0 mlen 3 rlen 1 { align16 1Q }; mov(8) g5<1>.xF g41<4,4,1>.xF { align16 NoDDClr 1Q compacted }; mov(8) g5<1>.yF g45<4,4,1>.xF { align16 NoDDChk 1Q }; break(8) JIP: 2 UIP: 89 { align16 1Q }; END B4 ->B11 START B5 <-B3 endif(8) JIP: 70 { align16 1Q }; cmp.z.f0(8) null g1<0,4,1>.xD 14D { align16 1Q switch }; (+f0) mov(8) g25<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g25<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 63 UIP: 63 { align16 1Q }; END B5 ->B6 ->B7 START B6 <-B5 mov(8) g5<1>.zF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q }; mov(8) g51<1>.xF 0.0078125F { align16 NoDDClr 1Q }; mov(8) g52<1>.xF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q compacted }; mov(8) g115<1>.xyzF g8<4,4,1>.xyzzF { align16 NoDDClr 1Q }; mov(8) g55<1>.xF 0.015625F { align16 NoDDClr 1Q }; mov(8) g56<1>.xF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q compacted }; mov(8) g5<1>.wF 1F { align16 NoDDChk 1Q }; mov(8) g51<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; mov(8) g52<1>.yF 0.0078125F { align16 NoDDChk 1Q }; mov(8) g115<1>.wF 0D { align16 NoDDChk 1Q }; mov(8) g55<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; mov(8) g56<1>.yF 0.015625F { align16 NoDDChk 1Q }; mov(8) g116<1>.xzF g51<4,4,1>.xxyyF { align16 NoDDClr 1Q }; mov(8) g117<1>.xF g51<4,4,1>.zF { align16 NoDDClr 1Q }; mov(8) g116<1>.ywF g52<4,4,1>.xxxyF { align16 NoDDChk 1Q }; mov(8) g117<1>.yF g52<4,4,1>.zF { align16 NoDDClr,NoDDChk 1Q }; mov(8) g117<1>.zF g8<4,4,1>.wF { align16 NoDDChk 1Q }; mov(8) g114<1>UD g0<4,4,1>UD { align16 WE_all 1Q }; mov(1) g114.2<1>UD 0x00000110UD { align1 WE_all compacted }; send(8) g53<1>F g114<4,4,1>F sampler sample_d_c SIMD4x2 Surface = 0 Sampler = 0 mlen 4 rlen 1 { align16 1Q }; mov(8) g115<1>.xyzF g7<4,4,1>.xyzzF { align16 NoDDClr 1Q }; mov(8) g116<1>.xzF g55<4,4,1>.xxyyF { align16 NoDDClr 1Q }; mov(8) g117<1>.xF g55<4,4,1>.zF { align16 NoDDClr 1Q }; mov(8) g115<1>.wF 0D { align16 NoDDChk 1Q }; mov(8) g116<1>.ywF g56<4,4,1>.xxxyF { align16 NoDDChk 1Q }; mov(8) g117<1>.yF g56<4,4,1>.zF { align16 NoDDClr,NoDDChk 1Q }; mov(8) g117<1>.zF g7<4,4,1>.wF { align16 NoDDChk 1Q }; mov(8) g114<1>UD g0<4,4,1>UD { align16 WE_all 1Q }; mov(1) g114.2<1>UD 0x00000110UD { align1 WE_all compacted }; send(8) g57<1>F g114<4,4,1>F sampler sample_d_c SIMD4x2 Surface = 0 Sampler = 0 mlen 4 rlen 1 { align16 1Q }; mov(8) g5<1>.xF g53<4,4,1>.xF { align16 NoDDClr 1Q compacted }; mov(8) g5<1>.yF g57<4,4,1>.xF { align16 NoDDChk 1Q }; break(8) JIP: 2 UIP: 19 { align16 1Q }; END B6 ->B11 START B7 <-B5 endif(8) JIP: 11 { align16 1Q }; cmp.z.f0(8) null g1<0,4,1>.xD -1D { align16 1Q switch }; (+f0) mov(8) g25<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g25<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 4 UIP: 4 { align16 1Q }; END B7 ->B8 ->B9 START B8 <-B7 break(8) JIP: 2 UIP: 8 { align16 1Q }; END B8 ->B11 START B9 <-B7 endif(8) JIP: 6 { align16 1Q }; mov(8) g5<1>F 1F { align16 1Q }; break(8) JIP: 2 UIP: 2 { align16 1Q }; END B9 ->B11 START B10 while(8) JIP: -187 { align16 1Q }; END B10 ->B1 START B11 <-B2 <-B4 <-B6 <-B8 <-B9 mov(8) g114<1>UD 0x00000000UD { align16 1Q compacted }; mov(8) g115<1>F g2<4,4,1>F { align16 1Q }; mov(8) g116<1>F g5<4,4,1>F { align16 1Q }; mov(8) g113<1>UD g0<4,4,1>UD { align16 WE_all 1Q }; or(1) g113.5<1>UD g0.5<0,1,0>UD 0x0000ff00UD { align1 WE_all }; send(8) null g113<4,4,1>F urb 0 write HWord interleave complete mlen 5 rlen 0 { align16 1Q EOT }; END B11 NIR (SSA form) for fragment shader: decl_var shader_in vec4 fColor (24, 0) decl_var shader_out vec4 color (4, 0) decl_overload main returning void impl main { block block_0: /* preds: */ vec4 ssa_0 = intrinsic load_input () () (0) intrinsic store_output (ssa_0) () (0) /* succs: block_1 */ block block_1: } NIR (final form) for fragment shader: decl_var shader_in vec4 fColor (24, 0) decl_var shader_out vec4 color (4, 0) decl_overload main returning void impl main { decl_reg vec4 r0 block block_0: /* preds: */ r0 = intrinsic load_input () () (0) intrinsic store_output (r0) () (0) /* succs: block_1 */ block block_1: } GLSL IR for native fragment shader 16: ( (declare (location=24 shader_in ) vec4 fColor) (declare (location=4 shader_out ) vec4 color) (declare (temporary ) vec4 color) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref color) (var_ref fColor) ) (assign (xyzw) (var_ref color@36) (var_ref color) ) )) ) ) Native code for unnamed fragment shader 16 SIMD8 shader: 5 instructions. 0 loops. 0:0 spills:fills. Promoted 0 constants. Compacted 80 to 48 bytes (40%) START B0 pln(8) g124<1>F g4<0,1,0>F g2<8,8,1>F { align1 1Q compacted }; pln(8) g125<1>F g4.4<0,1,0>F g2<8,8,1>F { align1 1Q compacted }; pln(8) g126<1>F g5<0,1,0>F g2<8,8,1>F { align1 1Q compacted }; pln(8) g127<1>F g5.4<0,1,0>F g2<8,8,1>F { align1 1Q compacted }; sendc(8) null g124<8,8,1>F render RT write SIMD8 LastRT Surface = 0 mlen 4 rlen 0 { align1 1Q EOT }; END B0 Native code for unnamed fragment shader 16 SIMD16 shader: 5 instructions. 0 loops. 0:0 spills:fills. Promoted 0 constants. Compacted 80 to 48 bytes (40%) START B0 pln(16) g120<1>F g6<0,1,0>F g2<8,8,1>F { align1 1H compacted }; pln(16) g122<1>F g6.4<0,1,0>F g2<8,8,1>F { align1 1H compacted }; pln(16) g124<1>F g7<0,1,0>F g2<8,8,1>F { align1 1H compacted }; pln(16) g126<1>F g7.4<0,1,0>F g2<8,8,1>F { align1 1H compacted }; sendc(16) null g120<8,8,1>F render RT write SIMD16 LastRT Surface = 0 mlen 8 rlen 0 { align1 1H EOT }; END B0 GLSL IR for native vertex shader 16: ( (declare (location=0 shader_out ) vec4 gl_Position) (declare (location=24 shader_out ) vec4 fColor) (declare (location=17 shader_in ) vec4 pos) (declare (location=18 shader_in ) vec2 UV) (declare (uniform ) samplerCubeShadow sampler) (declare (uniform ) int funct) (function main (signature void (parameters ) ( (declare () vec4 P4b) (declare () vec4 P4) (declare (temporary ) float assignment_tmp) (assign (x) (var_ref assignment_tmp) (expression float + (expression float * (swiz y (var_ref UV) )(constant float (1.500000)) ) (constant float (-0.250000)) ) ) (declare (temporary ) vec2 cse) (assign (xy) (var_ref cse) (expression vec2 + (var_ref UV) (constant float (-0.500000)) ) ) (declare (temporary ) vec4 vec_ctor) (assign (z) (var_ref vec_ctor) (constant float (0.500000)) ) (assign (xy) (var_ref vec_ctor) (var_ref cse) ) (assign (w) (var_ref vec_ctor) (var_ref assignment_tmp) ) (assign (xyzw) (var_ref P4) (var_ref vec_ctor) ) (declare (temporary ) vec4 vec_ctor@37) (assign (z) (var_ref vec_ctor@37) (constant float (0.500000)) ) (assign (xy) (var_ref vec_ctor@37) (expression vec2 neg (var_ref cse) ) ) (assign (w) (var_ref vec_ctor@37) (var_ref assignment_tmp) ) (assign (xyzw) (var_ref P4b) (var_ref vec_ctor@37) ) (declare (temporary ) bool switch_is_fallthru_tmp) (assign (x) (var_ref switch_is_fallthru_tmp) (constant bool (0)) ) (loop ( (assign (expression bool == (constant int (0)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( (declare (temporary ) vec4 vec_ctor@38) (assign (yzw) (var_ref vec_ctor@38) (constant vec3 (0.000000 0.000000 1.000000)) ) (assign (x) (var_ref vec_ctor@38) (tex float (var_ref sampler) (expression vec3 * (swiz xyz (var_ref P4) )(expression float rcp (expression float max (expression float max (expression float abs (swiz x (var_ref P4) )) (expression float abs (swiz y (var_ref P4) )) ) (expression float abs (swiz z (var_ref P4) )) ) ) ) 0 1 (swiz w (var_ref P4) ) )) (assign (xyzw) (var_ref fColor) (var_ref vec_ctor@38) ) break ) ()) (assign (expression bool == (constant int (6)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( (declare (temporary ) vec4 vec_ctor@39) (assign (zw) (var_ref vec_ctor@39) (constant vec2 (0.000000 1.000000)) ) (declare (temporary ) vec3 size) (declare (temporary ) ivec2 cse@40) (assign (xy) (var_ref cse@40) (txs ivec2 (var_ref sampler) (constant int (0)) )) (assign (xy) (var_ref size) (expression vec2 i2f (var_ref cse@40) ) ) (assign (z) (var_ref size) (constant float (1.000000)) ) (declare (temporary ) vec3 dPdx) (assign (xyz) (var_ref dPdx) (expression vec3 * (var_ref size) (constant vec3 (0.007812 0.000000 0.000000)) ) ) (declare (temporary ) vec3 dPdy) (assign (xyz) (var_ref dPdy) (expression vec3 * (var_ref size) (constant vec3 (0.000000 0.007812 0.000000)) ) ) (assign (x) (var_ref vec_ctor@39) (txl float (var_ref sampler) (expression vec3 * (swiz xyz (var_ref P4) )(expression float rcp (expression float max (expression float max (expression float abs (swiz x (var_ref P4) )) (expression float abs (swiz y (var_ref P4) )) ) (expression float abs (swiz z (var_ref P4) )) ) ) ) 0 1 (swiz w (var_ref P4) ) (expression float log2 (expression float max (expression float sqrt (expression float dot (var_ref dPdx) (var_ref dPdx) ) ) (expression float sqrt (expression float dot (var_ref dPdy) (var_ref dPdy) ) ) ) ) )) (declare (temporary ) vec3 size@41) (assign (xy) (var_ref size@41) (expression vec2 i2f (var_ref cse@40) ) ) (assign (z) (var_ref size@41) (constant float (1.000000)) ) (declare (temporary ) vec3 dPdx@42) (assign (xyz) (var_ref dPdx@42) (expression vec3 * (var_ref size@41) (constant vec3 (0.015625 0.000000 0.000000)) ) ) (declare (temporary ) vec3 dPdy@43) (assign (xyz) (var_ref dPdy@43) (expression vec3 * (var_ref size@41) (constant vec3 (0.000000 0.015625 0.000000)) ) ) (assign (y) (var_ref vec_ctor@39) (txl float (var_ref sampler) (expression vec3 * (swiz xyz (var_ref P4b) )(expression float rcp (expression float max (expression float max (expression float abs (swiz x (var_ref P4b) )) (expression float abs (swiz y (var_ref P4b) )) ) (expression float abs (swiz z (var_ref P4b) )) ) ) ) 0 1 (swiz w (var_ref P4b) ) (expression float log2 (expression float max (expression float sqrt (expression float dot (var_ref dPdx@42) (var_ref dPdx@42) ) ) (expression float sqrt (expression float dot (var_ref dPdy@43) (var_ref dPdy@43) ) ) ) ) )) (assign (xyzw) (var_ref fColor) (var_ref vec_ctor@39) ) break ) ()) (assign (expression bool == (constant int (-1)) (var_ref funct) ) (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (if (var_ref switch_is_fallthru_tmp) ( break ) ()) (assign (x) (var_ref switch_is_fallthru_tmp) (constant bool (1)) ) (assign (xyzw) (var_ref fColor) (constant vec4 (1.000000 1.000000 1.000000 1.000000)) ) break )) (assign (xyzw) (var_ref gl_Position) (var_ref pos) ) )) ) ) VS estimated execution time: 20 cycles Native code for unnamed vertex shader 16: VS vec4 shader: 99 instructions. 1 loops. Compacted 1584 to 1360 bytes (14%) START B0 mov(8) g9<1>.xF -0.25F { align16 1Q }; mov(8) g10<1>.xF 1.5F { align16 1Q }; add(8) g12<1>.xyF g3<4,4,1>.xyyyF -0.5F { align16 1Q }; mov(8) g7<1>.zF 0.5F { align16 1Q }; mov(8) g6<1>.zF 0.5F { align16 1Q }; mad(8) g8<1>.xF g9<4,4,1>.xF g3<4,4,1>.yF g10<4,4,1>.xF { align16 1Q }; mov(8) g7<1>.xyF g12<4,4,1>.xyyyF { align16 NoDDClr 1Q }; mov(8) g6<1>.xyF -g12<4,4,1>.xyyyF { align16 NoDDClr 1Q }; mov(8) g7<1>.wF g8<4,4,1>.xF { align16 NoDDChk 1Q compacted }; mov(8) g6<1>.wF g8<4,4,1>.xF { align16 NoDDChk 1Q compacted }; mov(8) g20<1>.xUD 0x00000000UD { align16 1Q compacted }; END B0 ->B1 START B1 <-B0 <-B8 cmp.z.f0(8) null g1<0,4,1>.xD 0D { align16 1Q switch }; (+f0) mov(8) g20<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g20<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 24 UIP: 24 { align16 1Q }; END B1 ->B2 ->B3 START B2 <-B1 mov(8) g5<1>.yzF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q }; sel.ge(8) g29<1>.xF (abs)g7<4,4,1>.xF (abs)g7<4,4,1>.yF { align16 1Q }; mov(8) g115<1>.xF g7<4,4,1>.wF { align16 NoDDClr 1Q }; mov(8) g5<1>.wF 1F { align16 NoDDChk 1Q }; sel.ge(8) g28<1>.xF g29<4,4,1>.xF (abs)g7<4,4,1>.zF { align16 1Q }; mov(8) g115<1>.yF [0F, 0F, 0F, 0F]VF { align16 NoDDChk 1Q }; math inv(8) g27<1>.xF g28<4,4,1>.xF null { align16 1Q compacted }; mul(8) g114<1>.xyzF g7<4,4,1>.xyzzF g27<4,4,1>.xF { align16 NoDDClr 1Q }; mov(8) g114<1>.wF 0D { align16 NoDDChk 1Q }; send(8) g33<1>F g114<4,4,1>F sampler sample_l_c SIMD4x2 Surface = 0 Sampler = 0 mlen 2 rlen 1 { align16 1Q }; mov(8) g5<1>.xF g33<4,4,1>.xF { align16 1Q compacted }; break(8) JIP: 2 UIP: 110 { align16 1Q }; END B2 ->B9 START B3 <-B1 endif(8) JIP: 91 { align16 1Q }; cmp.z.f0(8) null g1<0,4,1>.xD 6D { align16 1Q switch }; (+f0) mov(8) g20<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g20<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 84 UIP: 84 { align16 1Q }; END B3 ->B4 ->B5 START B4 <-B3 mov(8) g5<1>.zF [0F, 0F, 0F, 0F]VF { align16 NoDDClr 1Q }; mov(8) g114<1>.xUD 0x00000000UD { align16 1Q compacted }; mov(8) g48<1>.xF 0.0078125F { align16 1Q }; mov(8) g51<1>.xzF [0F, 0F, 0F, 0F]VF { align16 1Q }; sel.ge(8) g55<1>.xF (abs)g7<4,4,1>.xF (abs)g7<4,4,1>.yF { align16 1Q }; mov(8) g115<1>.xF g7<4,4,1>.wF { align16 1Q }; mov(8) g72<1>.xF 0.015625F { align16 1Q }; mov(8) g75<1>.xzF [0F, 0F, 0F, 0F]VF { align16 1Q }; sel.ge(8) g79<1>.xF (abs)g6<4,4,1>.xF (abs)g6<4,4,1>.yF { align16 1Q }; mov(8) g5<1>.wF 1F { align16 NoDDChk 1Q }; send(8) g42<1>D g114<4,4,1>F sampler resinfo SIMD4x2 Surface = 0 Sampler = 0 mlen 1 rlen 1 { align16 1Q }; mov(8) g48<1>.yzF [0F, 0F, 0F, 0F]VF { align16 1Q }; mov(8) g51<1>.yF 0.0078125F { align16 1Q }; sel.ge(8) g54<1>.xF g55<4,4,1>.xF (abs)g7<4,4,1>.zF { align16 1Q }; mov(8) g72<1>.yzF [0F, 0F, 0F, 0F]VF { align16 1Q }; mov(8) g75<1>.yF 0.015625F { align16 1Q }; sel.ge(8) g78<1>.xF g79<4,4,1>.xF (abs)g6<4,4,1>.zF { align16 1Q }; math inv(8) g53<1>.xF g54<4,4,1>.xF null { align16 1Q compacted }; math inv(8) g77<1>.xF g78<4,4,1>.xF null { align16 1Q compacted }; mul(8) g114<1>.xyzF g7<4,4,1>.xyzzF g53<4,4,1>.xF { align16 NoDDClr 1Q }; mov(8) g114<1>.wF 0D { align16 NoDDChk 1Q }; mov(8) g39<1>.xyF g42<4,4,1>.xyyyD { align16 NoDDClr 1Q }; mov(8) g67<1>.xyF g42<4,4,1>.xyyyD { align16 NoDDClr 1Q }; mov(8) g39<1>.zF 1F { align16 NoDDChk 1Q }; mov(8) g67<1>.zF 1F { align16 NoDDChk 1Q }; mul(8) g46<1>.xyzF g39<4,4,1>.xyzzF g48<4,4,1>.xyzzF { align16 1Q compacted }; mul(8) g49<1>.xyzF g39<4,4,1>.xyzzF g51<4,4,1>.xyzzF { align16 1Q compacted }; mul(8) g70<1>.xyzF g67<4,4,1>.xyzzF g72<4,4,1>.xyzzF { align16 1Q compacted }; mul(8) g73<1>.xyzF g67<4,4,1>.xyzzF g75<4,4,1>.xyzzF { align16 1Q compacted }; dp3(8) g62<1>.xF g46<4,4,1>.xyzzF g46<4,4,1>.xyzzF { align16 1Q compacted }; dp3(8) g64<1>.xF g49<4,4,1>.xyzzF g49<4,4,1>.xyzzF { align16 1Q compacted }; dp3(8) g86<1>.xF g70<4,4,1>.xyzzF g70<4,4,1>.xyzzF { align16 1Q compacted }; dp3(8) g88<1>.xF g73<4,4,1>.xyzzF g73<4,4,1>.xyzzF { align16 1Q compacted }; math sqrt(8) g61<1>.xF g62<4,4,1>.xF null { align16 1Q compacted }; math sqrt(8) g63<1>.xF g64<4,4,1>.xF null { align16 1Q compacted }; math sqrt(8) g85<1>.xF g86<4,4,1>.xF null { align16 1Q compacted }; math sqrt(8) g87<1>.xF g88<4,4,1>.xF null { align16 1Q compacted }; sel.ge(8) g60<1>.xF g61<4,4,1>.xF g63<4,4,1>.xF { align16 1Q compacted }; sel.ge(8) g84<1>.xF g85<4,4,1>.xF g87<4,4,1>.xF { align16 1Q compacted }; math log(8) g59<1>.xF g60<4,4,1>.xF null { align16 1Q compacted }; math log(8) g83<1>.xF g84<4,4,1>.xF null { align16 1Q compacted }; mov(8) g115<1>.yF g59<4,4,1>.xF { align16 1Q }; send(8) g65<1>F g114<4,4,1>F sampler sample_l_c SIMD4x2 Surface = 0 Sampler = 0 mlen 2 rlen 1 { align16 1Q }; mul(8) g114<1>.xyzF g6<4,4,1>.xyzzF g77<4,4,1>.xF { align16 NoDDClr 1Q }; mov(8) g115<1>.xF g6<4,4,1>.wF { align16 NoDDClr 1Q }; mov(8) g114<1>.wF 0D { align16 NoDDChk 1Q }; mov(8) g115<1>.yF g83<4,4,1>.xF { align16 NoDDChk 1Q }; send(8) g89<1>F g114<4,4,1>F sampler sample_l_c SIMD4x2 Surface = 0 Sampler = 0 mlen 2 rlen 1 { align16 1Q }; mov(8) g5<1>.xF g65<4,4,1>.xF { align16 NoDDClr 1Q compacted }; mov(8) g5<1>.yF g89<4,4,1>.xF { align16 NoDDChk 1Q }; break(8) JIP: 2 UIP: 19 { align16 1Q }; END B4 ->B9 START B5 <-B3 endif(8) JIP: 11 { align16 1Q }; cmp.z.f0(8) null g1<0,4,1>.xD -1D { align16 1Q switch }; (+f0) mov(8) g20<1>.xUD 0xffffffffUD { align16 1Q }; and.nz.f0(8) null g20<4,4,1>.xD 1D { align16 1Q compacted }; (+f0) if(8) JIP: 4 UIP: 4 { align16 1Q }; END B5 ->B6 ->B7 START B6 <-B5 break(8) JIP: 2 UIP: 8 { align16 1Q }; END B6 ->B9 START B7 <-B5 endif(8) JIP: 6 { align16 1Q }; mov(8) g5<1>F 1F { align16 1Q }; break(8) JIP: 2 UIP: 2 { align16 1Q }; END B7 ->B9 START B8 while(8) JIP: -137 { align16 1Q }; END B8 ->B1 START B9 <-B2 <-B4 <-B6 <-B7 mov(8) g114<1>UD 0x00000000UD { align16 1Q compacted }; mov(8) g115<1>F g2<4,4,1>F { align16 1Q }; mov(8) g116<1>F g5<4,4,1>F { align16 1Q }; mov(8) g113<1>UD g0<4,4,1>UD { align16 WE_all 1Q }; or(1) g113.5<1>UD g0.5<0,1,0>UD 0x0000ff00UD { align1 WE_all }; send(8) null g113<4,4,1>F urb 0 write HWord interleave complete mlen 5 rlen 0 { align16 1Q EOT }; nop ; END B9