NIR (SSA form) for vertex shader: shader: MESA_SHADER_VERTEX decl_var shader_in INTERP_QUALIFIER_NONE vec4 gl_Vertex (VERT_ATTRIB_POS, 0) decl_var shader_out INTERP_QUALIFIER_NONE vec4 gl_Position (VARYING_SLOT_POS, 0) decl_var shader_out INTERP_QUALIFIER_NONE vec4 gl_FrontColor (VARYING_SLOT_COL0, 1) decl_overload main returning void impl main { block block_0: /* preds: */ vec4 ssa_0 = load_const (0x00000000 /* 0.000000 */, 0x3f800000 /* 1.000000 */, 0x00000000 /* 0.000000 */, 0x3f800000 /* 1.000000 */) vec4 ssa_1 = load_const (0x3f800000 /* 1.000000 */, 0x00000000 /* 0.000000 */, 0x00000000 /* 0.000000 */, 0x3f800000 /* 1.000000 */) vec1 ssa_2 = load_const (0xffffffff /* -nan */) vec1 ssa_3 = load_const (0x0000000d /* 0.000000 */) vec1 ssa_4 = load_const (0x00000000 /* 0.000000 */) vec1 ssa_5 = load_const (0x0000002e /* 0.000000 */) vec1 ssa_6 = load_const (0x00000009 /* 0.000000 */) vec1 ssa_7 = load_const (0x0000000a /* 0.000000 */) vec1 ssa_8 = load_const (0x00000001 /* 0.000000 */) vec1 ssa_9 = load_const (0x0000000e /* 0.000000 */) vec4 ssa_10 = intrinsic load_input () () (0) /* gl_Vertex */ /* succs: block_1 */ loop { block block_1: /* preds: block_0 block_4 */ vec1 ssa_11 = phi block_0: ssa_7, block_4: ssa_15 vec1 ssa_12 = phi block_0: ssa_4, block_4: ssa_14 vec1 ssa_13 = ieq ssa_11, ssa_9 /* succs: block_2 block_3 */ if ssa_13 { block block_2: /* preds: block_1 */ break /* succs: block_5 */ } else { block block_3: /* preds: block_1 */ /* succs: block_4 */ } block block_4: /* preds: block_3 */ vec1 ssa_14 = iadd ssa_12, ssa_11 vec1 ssa_15 = iadd ssa_11, ssa_8 /* succs: block_1 */ } block block_5: /* preds: block_2 */ vec1 ssa_16 = ine ssa_12, ssa_5 /* succs: block_6 */ loop { block block_6: /* preds: block_5 block_9 */ vec1 ssa_17 = phi block_5: ssa_7, block_9: ssa_21 vec1 ssa_18 = phi block_5: ssa_4, block_9: ssa_20 vec1 ssa_19 = ieq ssa_9, ssa_17 /* succs: block_7 block_8 */ if ssa_19 { block block_7: /* preds: block_6 */ break /* succs: block_10 */ } else { block block_8: /* preds: block_6 */ /* succs: block_9 */ } block block_9: /* preds: block_8 */ vec1 ssa_20 = iadd ssa_18, ssa_17 vec1 ssa_21 = iadd ssa_17, ssa_8 /* succs: block_6 */ } block block_10: /* preds: block_7 */ vec1 ssa_22 = ine ssa_18, ssa_5 vec1 ssa_23 = bcsel ssa_22, ssa_2, ssa_16 /* succs: block_11 */ loop { block block_11: /* preds: block_10 block_14 */ vec1 ssa_24 = phi block_10: ssa_7, block_14: ssa_28 vec1 ssa_25 = phi block_10: ssa_4, block_14: ssa_27 vec1 ssa_26 = ine ssa_24, ssa_7 /* succs: block_12 block_13 */ if ssa_26 { block block_12: /* preds: block_11 */ break /* succs: block_15 */ } else { block block_13: /* preds: block_11 */ /* succs: block_14 */ } block block_14: /* preds: block_13 */ vec1 ssa_27 = iadd ssa_25, ssa_24 vec1 ssa_28 = iadd ssa_24, ssa_8 /* succs: block_11 */ } block block_15: /* preds: block_12 */ vec1 ssa_29 = ine ssa_25, ssa_7 vec1 ssa_30 = bcsel ssa_29, ssa_2, ssa_23 /* succs: block_16 */ loop { block block_16: /* preds: block_15 block_19 */ vec1 ssa_31 = phi block_15: ssa_7, block_19: ssa_35 vec1 ssa_32 = phi block_15: ssa_4, block_19: ssa_34 vec1 ssa_33 = ine ssa_7, ssa_31 /* succs: block_17 block_18 */ if ssa_33 { block block_17: /* preds: block_16 */ break /* succs: block_20 */ } else { block block_18: /* preds: block_16 */ /* succs: block_19 */ } block block_19: /* preds: block_18 */ vec1 ssa_34 = iadd ssa_32, ssa_31 vec1 ssa_35 = iadd ssa_31, ssa_8 /* succs: block_16 */ } block block_20: /* preds: block_17 */ vec1 ssa_36 = ine ssa_32, ssa_7 vec1 ssa_37 = bcsel ssa_36, ssa_2, ssa_30 /* succs: block_21 */ loop { block block_21: /* preds: block_20 block_24 */ vec1 ssa_38 = phi block_20: ssa_3, block_24: ssa_42 vec1 ssa_39 = phi block_20: ssa_4, block_24: ssa_41 vec1 ssa_40 = ieq ssa_38, ssa_6 /* succs: block_22 block_23 */ if ssa_40 { block block_22: /* preds: block_21 */ break /* succs: block_25 */ } else { block block_23: /* preds: block_21 */ /* succs: block_24 */ } block block_24: /* preds: block_23 */ vec1 ssa_41 = iadd ssa_39, ssa_38 vec1 ssa_42 = iadd ssa_38, ssa_2 /* succs: block_21 */ } block block_25: /* preds: block_22 */ vec1 ssa_43 = ine ssa_39, ssa_5 vec1 ssa_44 = bcsel ssa_43, ssa_2, ssa_37 /* succs: block_26 */ loop { block block_26: /* preds: block_25 block_29 */ vec1 ssa_45 = phi block_25: ssa_3, block_29: ssa_49 vec1 ssa_46 = phi block_25: ssa_4, block_29: ssa_48 vec1 ssa_47 = ieq ssa_6, ssa_45 /* succs: block_27 block_28 */ if ssa_47 { block block_27: /* preds: block_26 */ break /* succs: block_30 */ } else { block block_28: /* preds: block_26 */ /* succs: block_29 */ } block block_29: /* preds: block_28 */ vec1 ssa_48 = iadd ssa_46, ssa_45 vec1 ssa_49 = iadd ssa_45, ssa_2 /* succs: block_26 */ } block block_30: /* preds: block_27 */ vec1 ssa_50 = ine ssa_46, ssa_5 vec1 ssa_51 = bcsel ssa_50, ssa_2, ssa_44 /* succs: block_31 */ loop { block block_31: /* preds: block_30 block_34 */ vec1 ssa_52 = phi block_30: ssa_3, block_34: ssa_56 vec1 ssa_53 = phi block_30: ssa_4, block_34: ssa_55 vec1 ssa_54 = ine ssa_52, ssa_3 /* succs: block_32 block_33 */ if ssa_54 { block block_32: /* preds: block_31 */ break /* succs: block_35 */ } else { block block_33: /* preds: block_31 */ /* succs: block_34 */ } block block_34: /* preds: block_33 */ vec1 ssa_55 = iadd ssa_53, ssa_52 vec1 ssa_56 = iadd ssa_52, ssa_2 /* succs: block_31 */ } block block_35: /* preds: block_32 */ vec1 ssa_57 = ine ssa_53, ssa_3 vec1 ssa_58 = bcsel ssa_57, ssa_2, ssa_51 /* succs: block_36 */ loop { block block_36: /* preds: block_35 block_39 */ vec1 ssa_59 = phi block_35: ssa_3, block_39: ssa_63 vec1 ssa_60 = phi block_35: ssa_4, block_39: ssa_62 vec1 ssa_61 = ine ssa_3, ssa_59 /* succs: block_37 block_38 */ if ssa_61 { block block_37: /* preds: block_36 */ break /* succs: block_40 */ } else { block block_38: /* preds: block_36 */ /* succs: block_39 */ } block block_39: /* preds: block_38 */ vec1 ssa_62 = iadd ssa_60, ssa_59 vec1 ssa_63 = iadd ssa_59, ssa_2 /* succs: block_36 */ } block block_40: /* preds: block_37 */ vec1 ssa_64 = ine ssa_60, ssa_3 vec1 ssa_65 = bcsel ssa_64, ssa_2, ssa_58 vec4 ssa_66 = bcsel ssa_65.xxxx, ssa_1, ssa_0 intrinsic store_output (ssa_10) () (0) /* gl_Position */ intrinsic store_output (ssa_66) () (1) /* gl_FrontColor */ /* succs: block_41 */ block block_41: } NIR (final form) for vertex shader: shader: MESA_SHADER_VERTEX decl_var shader_in INTERP_QUALIFIER_NONE vec4 gl_Vertex (VERT_ATTRIB_POS, 0) decl_var shader_out INTERP_QUALIFIER_NONE vec4 gl_Position (VARYING_SLOT_POS, 0) decl_var shader_out INTERP_QUALIFIER_NONE vec4 gl_FrontColor (VARYING_SLOT_COL0, 1) decl_overload main returning void impl main { decl_reg vec1 r0 decl_reg vec1 r1 decl_reg vec1 r2 decl_reg vec1 r3 decl_reg vec1 r4 decl_reg vec1 r5 decl_reg vec1 r6 decl_reg vec1 r7 decl_reg vec1 r8 decl_reg vec1 r9 decl_reg vec1 r10 decl_reg vec1 r11 decl_reg vec1 r12 decl_reg vec1 r13 decl_reg vec1 r14 decl_reg vec1 r15 block block_0: /* preds: */ vec4 ssa_0 = load_const (0x00000000 /* 0.000000 */, 0x3f800000 /* 1.000000 */, 0x00000000 /* 0.000000 */, 0x3f800000 /* 1.000000 */) vec4 ssa_1 = load_const (0x3f800000 /* 1.000000 */, 0x00000000 /* 0.000000 */, 0x00000000 /* 0.000000 */, 0x3f800000 /* 1.000000 */) vec1 ssa_2 = load_const (0xffffffff /* -nan */) vec1 ssa_3 = load_const (0x0000000d /* 0.000000 */) vec1 ssa_4 = load_const (0x00000000 /* 0.000000 */) vec1 ssa_5 = load_const (0x0000002e /* 0.000000 */) vec1 ssa_6 = load_const (0x00000009 /* 0.000000 */) vec1 ssa_7 = load_const (0x0000000a /* 0.000000 */) vec1 ssa_8 = load_const (0x00000001 /* 0.000000 */) vec1 ssa_9 = load_const (0x0000000e /* 0.000000 */) vec4 ssa_10 = intrinsic load_input () () (0) /* gl_Vertex */ r1 = imov ssa_4 r0 = imov ssa_7 /* succs: block_1 */ loop { block block_1: /* preds: block_0 block_4 */ vec1 ssa_13 = ieq r0, ssa_9 /* succs: block_2 block_3 */ if ssa_13 { block block_2: /* preds: block_1 */ break /* succs: block_5 */ } else { block block_3: /* preds: block_1 */ /* succs: block_4 */ } block block_4: /* preds: block_3 */ r1 = iadd r1, r0 r0 = iadd r0, ssa_8 /* succs: block_1 */ } block block_5: /* preds: block_2 */ vec1 ssa_16 = ine r1, ssa_5 r3 = imov ssa_4 r2 = imov ssa_7 /* succs: block_6 */ loop { block block_6: /* preds: block_5 block_9 */ vec1 ssa_19 = ieq ssa_9, r2 /* succs: block_7 block_8 */ if ssa_19 { block block_7: /* preds: block_6 */ break /* succs: block_10 */ } else { block block_8: /* preds: block_6 */ /* succs: block_9 */ } block block_9: /* preds: block_8 */ r3 = iadd r3, r2 r2 = iadd r2, ssa_8 /* succs: block_6 */ } block block_10: /* preds: block_7 */ vec1 ssa_22 = ine r3, ssa_5 vec1 ssa_23 = bcsel ssa_22, ssa_2, ssa_16 r5 = imov ssa_4 r4 = imov ssa_7 /* succs: block_11 */ loop { block block_11: /* preds: block_10 block_14 */ vec1 ssa_26 = ine r4, ssa_7 /* succs: block_12 block_13 */ if ssa_26 { block block_12: /* preds: block_11 */ break /* succs: block_15 */ } else { block block_13: /* preds: block_11 */ /* succs: block_14 */ } block block_14: /* preds: block_13 */ r5 = iadd r5, r4 r4 = iadd r4, ssa_8 /* succs: block_11 */ } block block_15: /* preds: block_12 */ vec1 ssa_29 = ine r5, ssa_7 vec1 ssa_30 = bcsel ssa_29, ssa_2, ssa_23 r7 = imov ssa_4 r6 = imov ssa_7 /* succs: block_16 */ loop { block block_16: /* preds: block_15 block_19 */ vec1 ssa_33 = ine ssa_7, r6 /* succs: block_17 block_18 */ if ssa_33 { block block_17: /* preds: block_16 */ break /* succs: block_20 */ } else { block block_18: /* preds: block_16 */ /* succs: block_19 */ } block block_19: /* preds: block_18 */ r7 = iadd r7, r6 r6 = iadd r6, ssa_8 /* succs: block_16 */ } block block_20: /* preds: block_17 */ vec1 ssa_36 = ine r7, ssa_7 vec1 ssa_37 = bcsel ssa_36, ssa_2, ssa_30 r9 = imov ssa_4 r8 = imov ssa_3 /* succs: block_21 */ loop { block block_21: /* preds: block_20 block_24 */ vec1 ssa_40 = ieq r8, ssa_6 /* succs: block_22 block_23 */ if ssa_40 { block block_22: /* preds: block_21 */ break /* succs: block_25 */ } else { block block_23: /* preds: block_21 */ /* succs: block_24 */ } block block_24: /* preds: block_23 */ r9 = iadd r9, r8 r8 = iadd r8, ssa_2 /* succs: block_21 */ } block block_25: /* preds: block_22 */ vec1 ssa_43 = ine r9, ssa_5 vec1 ssa_44 = bcsel ssa_43, ssa_2, ssa_37 r11 = imov ssa_4 r10 = imov ssa_3 /* succs: block_26 */ loop { block block_26: /* preds: block_25 block_29 */ vec1 ssa_47 = ieq ssa_6, r10 /* succs: block_27 block_28 */ if ssa_47 { block block_27: /* preds: block_26 */ break /* succs: block_30 */ } else { block block_28: /* preds: block_26 */ /* succs: block_29 */ } block block_29: /* preds: block_28 */ r11 = iadd r11, r10 r10 = iadd r10, ssa_2 /* succs: block_26 */ } block block_30: /* preds: block_27 */ vec1 ssa_50 = ine r11, ssa_5 vec1 ssa_51 = bcsel ssa_50, ssa_2, ssa_44 r13 = imov ssa_4 r12 = imov ssa_3 /* succs: block_31 */ loop { block block_31: /* preds: block_30 block_34 */ vec1 ssa_54 = ine r12, ssa_3 /* succs: block_32 block_33 */ if ssa_54 { block block_32: /* preds: block_31 */ break /* succs: block_35 */ } else { block block_33: /* preds: block_31 */ /* succs: block_34 */ } block block_34: /* preds: block_33 */ r13 = iadd r13, r12 r12 = iadd r12, ssa_2 /* succs: block_31 */ } block block_35: /* preds: block_32 */ vec1 ssa_57 = ine r13, ssa_3 vec1 ssa_58 = bcsel ssa_57, ssa_2, ssa_51 r15 = imov ssa_4 r14 = imov ssa_3 /* succs: block_36 */ loop { block block_36: /* preds: block_35 block_39 */ vec1 ssa_61 = ine ssa_3, r14 /* succs: block_37 block_38 */ if ssa_61 { block block_37: /* preds: block_36 */ break /* succs: block_40 */ } else { block block_38: /* preds: block_36 */ /* succs: block_39 */ } block block_39: /* preds: block_38 */ r15 = iadd r15, r14 r14 = iadd r14, ssa_2 /* succs: block_36 */ } block block_40: /* preds: block_37 */ vec1 ssa_64 = ine r15, ssa_3 vec1 ssa_65 = bcsel ssa_64, ssa_2, ssa_58 vec4 ssa_66 = bcsel ssa_65.xxxx, ssa_1, ssa_0 intrinsic store_output (ssa_10) () (0) /* gl_Position */ intrinsic store_output (ssa_66) () (1) /* gl_FrontColor */ /* succs: block_41 */ block block_41: } GLSL IR for native vertex shader 3: ( (declare (location=0 shader_out ) vec4 gl_Position) (declare (location=1 shader_out ) vec4 gl_FrontColor) (declare (location=0 shader_in ) vec4 gl_Vertex) ( function main (signature void (parameters ) ( (declare () bool failed) (declare () int i) (declare () int sum) (assign (xyzw) (var_ref gl_Position) (var_ref gl_Vertex) ) (assign (x) (var_ref failed) (constant bool (0)) ) (assign (x) (var_ref sum) (constant int (0)) ) (assign (x) (var_ref i) (constant int (10)) ) (loop ( (if (expression bool == (var_ref i) (constant int (14)) ) ( break ) ()) (assign (x) (var_ref sum) (expression int + (var_ref sum) (var_ref i) ) ) (assign (x) (var_ref i) (expression int + (var_ref i) (constant int (1)) ) ) )) (if (expression bool != (var_ref sum) (constant int (46)) ) ( (assign (x) (var_ref failed) (constant bool (1)) ) ) ()) (assign (x) (var_ref sum) (constant int (0)) ) (assign (x) (var_ref i) (constant int (10)) ) (loop ( (if (expression bool == (constant int (14)) (var_ref i) ) ( break ) ()) (assign (x) (var_ref sum) (expression int + (var_ref sum) (var_ref i) ) ) (assign (x) (var_ref i) (expression int + (var_ref i) (constant int (1)) ) ) )) (if (expression bool != (var_ref sum) (constant int (46)) ) ( (assign (x) (var_ref failed) (constant bool (1)) ) ) ()) (assign (x) (var_ref sum) (constant int (0)) ) (assign (x) (var_ref i) (constant int (10)) ) (loop ( (if (expression bool != (var_ref i) (constant int (10)) ) ( break ) ()) (assign (x) (var_ref sum) (expression int + (var_ref sum) (var_ref i) ) ) (assign (x) (var_ref i) (expression int + (var_ref i) (constant int (1)) ) ) )) (if (expression bool != (var_ref sum) (constant int (10)) ) ( (assign (x) (var_ref failed) (constant bool (1)) ) ) ()) (assign (x) (var_ref sum) (constant int (0)) ) (assign (x) (var_ref i) (constant int (10)) ) (loop ( (if (expression bool != (constant int (10)) (var_ref i) ) ( break ) ()) (assign (x) (var_ref sum) (expression int + (var_ref sum) (var_ref i) ) ) (assign (x) (var_ref i) (expression int + (var_ref i) (constant int (1)) ) ) )) (if (expression bool != (var_ref sum) (constant int (10)) ) ( (assign (x) (var_ref failed) (constant bool (1)) ) ) ()) (assign (x) (var_ref sum) (constant int (0)) ) (assign (x) (var_ref i) (constant int (13)) ) (loop ( (if (expression bool == (var_ref i) (constant int (9)) ) ( break ) ()) (assign (x) (var_ref sum) (expression int + (var_ref sum) (var_ref i) ) ) (assign (x) (var_ref i) (expression int + (var_ref i) (constant int (-1)) ) ) )) (if (expression bool != (var_ref sum) (constant int (46)) ) ( (assign (x) (var_ref failed) (constant bool (1)) ) ) ()) (assign (x) (var_ref sum) (constant int (0)) ) (assign (x) (var_ref i) (constant int (13)) ) (loop ( (if (expression bool == (constant int (9)) (var_ref i) ) ( break ) ()) (assign (x) (var_ref sum) (expression int + (var_ref sum) (var_ref i) ) ) (assign (x) (var_ref i) (expression int + (var_ref i) (constant int (-1)) ) ) )) (if (expression bool != (var_ref sum) (constant int (46)) ) ( (assign (x) (var_ref failed) (constant bool (1)) ) ) ()) (assign (x) (var_ref sum) (constant int (0)) ) (assign (x) (var_ref i) (constant int (13)) ) (loop ( (if (expression bool != (var_ref i) (constant int (13)) ) ( break ) ()) (assign (x) (var_ref sum) (expression int + (var_ref sum) (var_ref i) ) ) (assign (x) (var_ref i) (expression int + (var_ref i) (constant int (-1)) ) ) )) (if (expression bool != (var_ref sum) (constant int (13)) ) ( (assign (x) (var_ref failed) (constant bool (1)) ) ) ()) (assign (x) (var_ref sum) (constant int (0)) ) (assign (x) (var_ref i) (constant int (13)) ) (loop ( (if (expression bool != (constant int (13)) (var_ref i) ) ( break ) ()) (assign (x) (var_ref sum) (expression int + (var_ref sum) (var_ref i) ) ) (assign (x) (var_ref i) (expression int + (var_ref i) (constant int (-1)) ) ) )) (if (expression bool != (var_ref sum) (constant int (13)) ) ( (assign (x) (var_ref failed) (constant bool (1)) ) ) ()) (declare (temporary ) vec4 conditional_tmp) (if (var_ref failed) ( (assign (xyzw) (var_ref conditional_tmp) (constant vec4 (1.000000 0.000000 0.000000 1.000000)) ) ) ( (assign (xyzw) (var_ref conditional_tmp) (constant vec4 (0.000000 1.000000 0.000000 1.000000)) ) )) (assign (xyzw) (var_ref gl_FrontColor) (var_ref conditional_tmp) ) )) ) ) VS estimated execution time: 232 cycles Native code for unnamed vertex shader 3: VS vec4 shader: 761 instructions. 8 loops. Compacted 12176 to 12176 bytes (0%) START B0 mov(8) g3<1>F [0F, 1F, 0F, 1F]VF { align16 }; mov(1) m14<1>UD 0x00000200UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000210UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>D { align16 }; send(8) 13 g0<1>F g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(8) g3<1>F [1F, 0F, 0F, 1F]VF { align16 }; mov(1) m14<1>UD 0x00000220UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000230UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>D { align16 }; send(8) 13 g0<1>F g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(8) g3<1>.xUD 0xffffffffUD { align16 }; mov(1) m14<1>UD 0x00000240UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000250UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(8) g3<1>.xUD 0x0000000dUD { align16 }; mov(1) m14<1>UD 0x00000260UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000270UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(8) g3<1>.xUD 0x00000000UD { align16 }; mov(1) m14<1>UD 0x00000280UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000290UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(8) g3<1>.xUD 0x0000002eUD { align16 }; mov(1) m14<1>UD 0x000002a0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000002b0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(8) g3<1>.xUD 0x00000009UD { align16 }; mov(1) m14<1>UD 0x000002c0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000002d0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(8) g3<1>.xUD 0x0000000aUD { align16 }; mov(1) m14<1>UD 0x000002e0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000002f0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(8) g3<1>.xUD 0x00000001UD { align16 }; mov(1) m14<1>UD 0x00000300UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000310UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(8) g3<1>.xUD 0x0000000eUD { align16 }; mov(1) m14<1>UD 0x00000320UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000330UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(8) g3<1>F g2<4,4,1>F { align16 }; mov(1) m14<1>UD 0x00000340UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000350UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>D { align16 }; send(8) 13 g0<1>F g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(8) g3<1>.xUD 0x00000000UD { align16 }; mov(1) m14<1>UD 0x00000020UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000030UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(8) g3<1>.xUD 0x0000000aUD { align16 }; mov(1) m14<1>UD 0x00000000UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000010UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; END B0 ->B1 START B1 <-B0 <-B3 do(8) { align16 }; mov(1) m15<1>UD 0x00000000UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000010UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000320UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000330UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; cmp.z.f0(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000360UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000370UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; and(8) g3<1>.xD g3<4,4,1>.xD 1D { align16 }; mov(1) m14<1>UD 0x00000380UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000390UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov.nz.f0(8) null -g3<4,4,1>.xD { align16 }; (+f0) iff(8) Jump: 6 { align16 switch }; END B1 ->B2 ->B3 START B2 <-B1 break(8) Jump: 44 Pop: 1 { align16 }; END B2 ->B4 START B3 <-B1 endif(8) Pop: 1 { align16 switch }; mov(1) m15<1>UD 0x00000000UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000010UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000020UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000030UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; add(8) g4<1>.xD g4<4,4,1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000020UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000030UD { align1 nomask }; mov(8) m15<1>D g4<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000300UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000310UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; add(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000000UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000010UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; while(8) ip 65458D { align16 }; END B3 ->B1 START B4 <-B2 mov(1) m15<1>UD 0x00000020UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000030UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x000002a0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000002b0UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; cmp.nz.f0(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000003a0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000003b0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; and(8) g3<1>.xD g3<4,4,1>.xD 1D { align16 }; mov(1) m14<1>UD 0x000003c0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000003d0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(8) g3<1>.xD -g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000003a0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000003b0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000280UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000290UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(8) g3<1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000060UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000070UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x000002e0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000002f0UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(8) g3<1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000040UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000050UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; END B4 ->B5 START B5 <-B4 <-B7 do(8) { align16 }; mov(1) m15<1>UD 0x00000040UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000050UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000320UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000330UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; cmp.z.f0(8) g3<1>.xD g4<4,4,1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000003e0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000003f0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; and(8) g3<1>.xD g3<4,4,1>.xD 1D { align16 }; mov(1) m14<1>UD 0x00000400UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000410UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov.nz.f0(8) null -g3<4,4,1>.xD { align16 }; (+f0) iff(8) Jump: 6 { align16 switch }; END B5 ->B6 ->B7 START B6 <-B5 break(8) Jump: 44 Pop: 1 { align16 }; END B6 ->B8 START B7 <-B5 endif(8) Pop: 1 { align16 switch }; mov(1) m15<1>UD 0x00000040UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000050UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000060UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000070UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; add(8) g4<1>.xD g4<4,4,1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000060UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000070UD { align1 nomask }; mov(8) m15<1>D g4<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000300UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000310UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; add(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000040UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000050UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; while(8) ip 65458D { align16 }; END B7 ->B5 START B8 <-B6 mov(1) m15<1>UD 0x00000060UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000070UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x000002a0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000002b0UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; cmp.nz.f0(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000420UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000430UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; and(8) g3<1>.xD g3<4,4,1>.xD 1D { align16 }; mov(1) m14<1>UD 0x00000440UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000450UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; cmp.nz.f0(8) null -g3<4,4,1>.xD 0D { align16 }; mov(1) m15<1>UD 0x00000240UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000250UD { align1 nomask }; send(8) 14 g3<1>UD g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x000003a0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000003b0UD { align1 nomask }; send(8) 14 g4<1>UD g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; (+f0) sel(8) g3<1>.xUD g3<4,4,1>.xUD g4<4,4,1>.xUD { align16 }; mov(1) m14<1>UD 0x00000460UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000470UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000280UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000290UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(8) g3<1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000000a0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000000b0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x000002e0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000002f0UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(8) g3<1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000080UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000090UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; END B8 ->B9 START B9 <-B8 <-B11 do(8) { align16 }; mov(1) m15<1>UD 0x00000080UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000090UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x000002e0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000002f0UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; cmp.nz.f0(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000480UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000490UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; and(8) g3<1>.xD g3<4,4,1>.xD 1D { align16 }; mov(1) m14<1>UD 0x000004a0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000004b0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov.nz.f0(8) null -g3<4,4,1>.xD { align16 }; (+f0) iff(8) Jump: 6 { align16 switch }; END B9 ->B10 ->B11 START B10 <-B9 break(8) Jump: 44 Pop: 1 { align16 }; END B10 ->B12 START B11 <-B9 endif(8) Pop: 1 { align16 switch }; mov(1) m15<1>UD 0x00000080UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000090UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x000000a0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000000b0UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; add(8) g4<1>.xD g4<4,4,1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000000a0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000000b0UD { align1 nomask }; mov(8) m15<1>D g4<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000300UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000310UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; add(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000080UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000090UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; while(8) ip 65458D { align16 }; END B11 ->B9 START B12 <-B10 mov(1) m15<1>UD 0x000000a0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000000b0UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x000002e0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000002f0UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; cmp.nz.f0(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000004c0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000004d0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; and(8) g3<1>.xD g3<4,4,1>.xD 1D { align16 }; mov(1) m14<1>UD 0x000004e0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000004f0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; cmp.nz.f0(8) null -g3<4,4,1>.xD 0D { align16 }; mov(1) m15<1>UD 0x00000240UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000250UD { align1 nomask }; send(8) 14 g3<1>UD g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000460UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000470UD { align1 nomask }; send(8) 14 g4<1>UD g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; (+f0) sel(8) g3<1>.xUD g3<4,4,1>.xUD g4<4,4,1>.xUD { align16 }; mov(1) m14<1>UD 0x00000500UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000510UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000280UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000290UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(8) g3<1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000000e0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000000f0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x000002e0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000002f0UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(8) g3<1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000000c0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000000d0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; END B12 ->B13 START B13 <-B12 <-B15 do(8) { align16 }; mov(1) m15<1>UD 0x000000c0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000000d0UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x000002e0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000002f0UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; cmp.nz.f0(8) g3<1>.xD g4<4,4,1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000520UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000530UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; and(8) g3<1>.xD g3<4,4,1>.xD 1D { align16 }; mov(1) m14<1>UD 0x00000540UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000550UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov.nz.f0(8) null -g3<4,4,1>.xD { align16 }; (+f0) iff(8) Jump: 6 { align16 switch }; END B13 ->B14 ->B15 START B14 <-B13 break(8) Jump: 44 Pop: 1 { align16 }; END B14 ->B16 START B15 <-B13 endif(8) Pop: 1 { align16 switch }; mov(1) m15<1>UD 0x000000c0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000000d0UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x000000e0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000000f0UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; add(8) g4<1>.xD g4<4,4,1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000000e0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000000f0UD { align1 nomask }; mov(8) m15<1>D g4<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000300UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000310UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; add(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000000c0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000000d0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; while(8) ip 65458D { align16 }; END B15 ->B13 START B16 <-B14 mov(1) m15<1>UD 0x000000e0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000000f0UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x000002e0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000002f0UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; cmp.nz.f0(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000560UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000570UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; and(8) g3<1>.xD g3<4,4,1>.xD 1D { align16 }; mov(1) m14<1>UD 0x00000580UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000590UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; cmp.nz.f0(8) null -g3<4,4,1>.xD 0D { align16 }; mov(1) m15<1>UD 0x00000240UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000250UD { align1 nomask }; send(8) 14 g3<1>UD g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000500UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000510UD { align1 nomask }; send(8) 14 g4<1>UD g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; (+f0) sel(8) g3<1>.xUD g3<4,4,1>.xUD g4<4,4,1>.xUD { align16 }; mov(1) m14<1>UD 0x000005a0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000005b0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000280UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000290UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(8) g3<1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000120UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000130UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000260UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000270UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(8) g3<1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000100UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000110UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; END B16 ->B17 START B17 <-B16 <-B19 do(8) { align16 }; mov(1) m15<1>UD 0x00000100UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000110UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x000002c0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000002d0UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; cmp.z.f0(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000005c0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000005d0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; and(8) g3<1>.xD g3<4,4,1>.xD 1D { align16 }; mov(1) m14<1>UD 0x000005e0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000005f0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov.nz.f0(8) null -g3<4,4,1>.xD { align16 }; (+f0) iff(8) Jump: 6 { align16 switch }; END B17 ->B18 ->B19 START B18 <-B17 break(8) Jump: 44 Pop: 1 { align16 }; END B18 ->B20 START B19 <-B17 endif(8) Pop: 1 { align16 switch }; mov(1) m15<1>UD 0x00000100UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000110UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000120UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000130UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; add(8) g4<1>.xD g4<4,4,1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000120UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000130UD { align1 nomask }; mov(8) m15<1>D g4<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000240UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000250UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; add(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000100UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000110UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; while(8) ip 65458D { align16 }; END B19 ->B17 START B20 <-B18 mov(1) m15<1>UD 0x00000120UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000130UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x000002a0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000002b0UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; cmp.nz.f0(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000600UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000610UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; and(8) g3<1>.xD g3<4,4,1>.xD 1D { align16 }; mov(1) m14<1>UD 0x00000620UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000630UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; cmp.nz.f0(8) null -g3<4,4,1>.xD 0D { align16 }; mov(1) m15<1>UD 0x00000240UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000250UD { align1 nomask }; send(8) 14 g3<1>UD g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x000005a0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000005b0UD { align1 nomask }; send(8) 14 g4<1>UD g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; (+f0) sel(8) g3<1>.xUD g3<4,4,1>.xUD g4<4,4,1>.xUD { align16 }; mov(1) m14<1>UD 0x00000640UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000650UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000280UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000290UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(8) g3<1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000160UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000170UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000260UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000270UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(8) g3<1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000140UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000150UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; END B20 ->B21 START B21 <-B20 <-B23 do(8) { align16 }; mov(1) m15<1>UD 0x00000140UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000150UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x000002c0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000002d0UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; cmp.z.f0(8) g3<1>.xD g4<4,4,1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000660UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000670UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; and(8) g3<1>.xD g3<4,4,1>.xD 1D { align16 }; mov(1) m14<1>UD 0x00000680UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000690UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov.nz.f0(8) null -g3<4,4,1>.xD { align16 }; (+f0) iff(8) Jump: 6 { align16 switch }; END B21 ->B22 ->B23 START B22 <-B21 break(8) Jump: 44 Pop: 1 { align16 }; END B22 ->B24 START B23 <-B21 endif(8) Pop: 1 { align16 switch }; mov(1) m15<1>UD 0x00000140UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000150UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000160UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000170UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; add(8) g4<1>.xD g4<4,4,1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000160UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000170UD { align1 nomask }; mov(8) m15<1>D g4<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000240UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000250UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; add(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000140UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000150UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; while(8) ip 65458D { align16 }; END B23 ->B21 START B24 <-B22 mov(1) m15<1>UD 0x00000160UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000170UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x000002a0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000002b0UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; cmp.nz.f0(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000006a0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000006b0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; and(8) g3<1>.xD g3<4,4,1>.xD 1D { align16 }; mov(1) m14<1>UD 0x000006c0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000006d0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; cmp.nz.f0(8) null -g3<4,4,1>.xD 0D { align16 }; mov(1) m15<1>UD 0x00000240UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000250UD { align1 nomask }; send(8) 14 g3<1>UD g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000640UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000650UD { align1 nomask }; send(8) 14 g4<1>UD g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; (+f0) sel(8) g3<1>.xUD g3<4,4,1>.xUD g4<4,4,1>.xUD { align16 }; mov(1) m14<1>UD 0x000006e0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000006f0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000280UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000290UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(8) g3<1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000001a0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000001b0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000260UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000270UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(8) g3<1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000180UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000190UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; END B24 ->B25 START B25 <-B24 <-B27 do(8) { align16 }; mov(1) m15<1>UD 0x00000180UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000190UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000260UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000270UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; cmp.nz.f0(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000700UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000710UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; and(8) g3<1>.xD g3<4,4,1>.xD 1D { align16 }; mov(1) m14<1>UD 0x00000720UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000730UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov.nz.f0(8) null -g3<4,4,1>.xD { align16 }; (+f0) iff(8) Jump: 6 { align16 switch }; END B25 ->B26 ->B27 START B26 <-B25 break(8) Jump: 44 Pop: 1 { align16 }; END B26 ->B28 START B27 <-B25 endif(8) Pop: 1 { align16 switch }; mov(1) m15<1>UD 0x00000180UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000190UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x000001a0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000001b0UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; add(8) g4<1>.xD g4<4,4,1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000001a0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000001b0UD { align1 nomask }; mov(8) m15<1>D g4<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000240UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000250UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; add(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000180UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000190UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; while(8) ip 65458D { align16 }; END B27 ->B25 START B28 <-B26 mov(1) m15<1>UD 0x000001a0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000001b0UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000260UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000270UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; cmp.nz.f0(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x00000740UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000750UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; and(8) g3<1>.xD g3<4,4,1>.xD 1D { align16 }; mov(1) m14<1>UD 0x00000760UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000770UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; cmp.nz.f0(8) null -g3<4,4,1>.xD 0D { align16 }; mov(1) m15<1>UD 0x00000240UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000250UD { align1 nomask }; send(8) 14 g3<1>UD g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x000006e0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000006f0UD { align1 nomask }; send(8) 14 g4<1>UD g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; (+f0) sel(8) g3<1>.xUD g3<4,4,1>.xUD g4<4,4,1>.xUD { align16 }; mov(1) m14<1>UD 0x00000780UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000790UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000280UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000290UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(8) g3<1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000001e0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000001f0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000260UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000270UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(8) g3<1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000001c0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000001d0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; END B28 ->B29 START B29 <-B28 <-B31 do(8) { align16 }; mov(1) m15<1>UD 0x000001c0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000001d0UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000260UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000270UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; cmp.nz.f0(8) g3<1>.xD g4<4,4,1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000007a0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000007b0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; and(8) g3<1>.xD g3<4,4,1>.xD 1D { align16 }; mov(1) m14<1>UD 0x000007c0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000007d0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov.nz.f0(8) null -g3<4,4,1>.xD { align16 }; (+f0) iff(8) Jump: 6 { align16 switch }; END B29 ->B30 ->B31 START B30 <-B29 break(8) Jump: 44 Pop: 1 { align16 }; END B30 ->B32 START B31 <-B29 endif(8) Pop: 1 { align16 switch }; mov(1) m15<1>UD 0x000001c0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000001d0UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x000001e0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000001f0UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; add(8) g4<1>.xD g4<4,4,1>.xD g3<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000001e0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000001f0UD { align1 nomask }; mov(8) m15<1>D g4<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000240UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000250UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; add(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000001c0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000001d0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; while(8) ip 65458D { align16 }; END B31 ->B29 START B32 <-B30 mov(1) m15<1>UD 0x000001e0UD { align1 nomask }; mov(1) m15.4<1>UD 0x000001f0UD { align1 nomask }; send(8) 14 g3<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000260UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000270UD { align1 nomask }; send(8) 14 g4<1>D g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; cmp.nz.f0(8) g3<1>.xD g3<4,4,1>.xD g4<4,4,1>.xD { align16 }; mov(1) m14<1>UD 0x000007e0UD { align1 nomask }; mov(1) m14.4<1>UD 0x000007f0UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; and(8) g3<1>.xD g3<4,4,1>.xD 1D { align16 }; mov(1) m14<1>UD 0x00000800UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000810UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; cmp.nz.f0(8) null -g3<4,4,1>.xD 0D { align16 }; mov(1) m15<1>UD 0x00000240UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000250UD { align1 nomask }; send(8) 14 g3<1>UD g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000780UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000790UD { align1 nomask }; send(8) 14 g4<1>UD g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; (+f0) sel(8) g3<1>.xUD g3<4,4,1>.xUD g4<4,4,1>.xUD { align16 }; mov(1) m14<1>UD 0x00000820UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000830UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xD { align16 }; send(8) 13 g0<1>.xF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; cmp.nz.f0(8) null g3<4,4,1>.xD 0D { align16 }; mov(1) m15<1>UD 0x00000200UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000210UD { align1 nomask }; send(8) 14 g3<1>UD g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000220UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000230UD { align1 nomask }; send(8) 14 g4<1>UD g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; (+f0) sel(8) g3<1>UD g4<4,4,1>UD g3<4,4,1>UD { align16 }; mov(1) m14<1>UD 0x00000840UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000850UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>D { align16 }; send(8) 13 g0<1>F g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(1) m15<1>UD 0x00000340UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000350UD { align1 nomask }; send(8) 14 g3<1>F g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; send(8) 1 g4<1>.wF g3<4,4,1>.wF math inv mlen 1 rlen 1 { align16 }; mov(1) m14<1>UD 0x00000860UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000870UD { align1 nomask }; mov(8) m15<1>D g4<4,4,1>.wD { align16 }; send(8) 13 g0<1>.wF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mul(8) g3<1>.xyzF g3<4,4,1>.xyzzF g4<4,4,1>.wF { align16 }; mov(1) m14<1>UD 0x00000860UD { align1 nomask }; mov(1) m14.4<1>UD 0x00000870UD { align1 nomask }; mov(8) m15<1>D g3<4,4,1>.xyzzD { align16 }; send(8) 13 g0<1>.xyzF g0<4,4,1>F write OWord dual block write MsgCtrl = 0x0 Surface = 255 mlen 3 rlen 1 { align16 }; mov(8) m2<1>UD 0x00000000UD { align16 }; mov(1) m15<1>UD 0x00000860UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000870UD { align1 nomask }; send(8) 14 g3<1>F g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(8) m3<1>F g3<4,4,1>F { align16 }; mov(1) m15<1>UD 0x00000340UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000350UD { align1 nomask }; send(8) 14 g3<1>F g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov(8) m4<1>F g3<4,4,1>F { align16 }; mov(1) m15<1>UD 0x00000840UD { align1 nomask }; mov(1) m15.4<1>UD 0x00000850UD { align1 nomask }; send(8) 14 g3<1>F g0<4,4,1>F read OWord Dual Block Read MsgCtrl = 0x0 Surface = 255 mlen 2 rlen 1 { align16 }; mov.sat(8) m5<1>F g3<4,4,1>F { align16 }; send(8) 1 null g0<4,4,1>F urb 0 urb_write interleave used complete mlen 5 rlen 0 { align16 EOT }; END B32