freedreno: add CI for envytools tools
[mesa.git] / src / freedreno / .gitlab-ci / reference / glxgears-a420.log
diff --git a/src/freedreno/.gitlab-ci/reference/glxgears-a420.log b/src/freedreno/.gitlab-ci/reference/glxgears-a420.log
new file mode 100644 (file)
index 0000000..78930e4
--- /dev/null
@@ -0,0 +1,5664 @@
+Reading src/freedreno/.gitlab-ci/traces/glxgears-a420.rd.gz...
+gpu_id: 420
+cmd: X/23360: fence=1029603
+cmd: glxgears/23375: fence=1029604
+############################################################
+cmdstream: 414 dwords
+t0             write RBBM_PERFCTR_CTL (0170)
+                       RBBM_PERFCTR_CTL: 0x1
+108ce000:              0000: 00000170 00000001
+t0             write GRAS_DEBUG_ECO_CONTROL (0c81)
+                       GRAS_DEBUG_ECO_CONTROL: 0
+108ce008:              0000: 00000c81 00000000
+t0             write SP_MODE_CONTROL (0ec3)
+                       SP_MODE_CONTROL: 0x6
+108ce010:              0000: 00000ec3 00000006
+t0             write TPL1_TP_MODE_CONTROL (0f03)
+                       TPL1_TP_MODE_CONTROL: 0x3a
+108ce018:              0000: 00000f03 0000003a
+t0             write UNKNOWN_0D01 (0d01)
+                       UNKNOWN_0D01: 0x1
+108ce020:              0000: 00000d01 00000001
+t0             write UNKNOWN_0E42 (0e42)
+                       UNKNOWN_0E42: 0
+108ce028:              0000: 00000e42 00000000
+t0             write UCHE_CACHE_WAYS_VFD (0e8c)
+                       UCHE_CACHE_WAYS_VFD: 0x7
+108ce030:              0000: 00000e8c 00000007
+t0             write UCHE_CACHE_MODE_CONTROL (0e80)
+                       UCHE_CACHE_MODE_CONTROL: 0
+108ce038:              0000: 00000e80 00000000
+t0             write UCHE_INVALIDATE0 (0e8a)
+                       UCHE_INVALIDATE0: 0
+                       UCHE_INVALIDATE1: 0x12
+108ce040:              0000: 00010e8a 00000000 00000012
+t0             write HLSQ_MODE_CONTROL (0e05)
+                       HLSQ_MODE_CONTROL: 0
+108ce04c:              0000: 00000e05 00000000
+t0             write UNKNOWN_0CC5 (0cc5)
+                       UNKNOWN_0CC5: 0x6
+108ce054:              0000: 00000cc5 00000006
+t0             write UNKNOWN_0CC6 (0cc6)
+                       UNKNOWN_0CC6: 0
+108ce05c:              0000: 00000cc6 00000000
+t0             write UNKNOWN_0EC2 (0ec2)
+                       UNKNOWN_0EC2: 0x40000
+108ce064:              0000: 00000ec2 00040000
+t0             write UNKNOWN_2001 (2001)
+                       UNKNOWN_2001: 0
+108ce06c:              0000: 00002001 00000000
+t3             opcode: CP_INVALIDATE_STATE (3b) (2 dwords)
+108ce074:              0000: c0003b00 00001000
+t0             write UNKNOWN_20EF (20ef)
+                       UNKNOWN_20EF: 0
+108ce07c:              0000: 000020ef 00000000
+t0             write RB_BLEND_RED (20f0)
+                       RB_BLEND_RED: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
+                       RB_BLEND_RED_F32: 0.000000
+                       RB_BLEND_GREEN: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
+                       RB_BLEND_GREEN_F32: 0.007813
+108ce084:              0000: 000320f0 00000000 00000000 00000000 3c0000ff
+t0             write UNKNOWN_2152 (2152)
+                       UNKNOWN_2152: 0
+108ce098:              0000: 00002152 00000000
+t0             write UNKNOWN_2153 (2153)
+                       UNKNOWN_2153: 0
+108ce0a0:              0000: 00002153 00000000
+t0             write UNKNOWN_2154 (2154)
+                       UNKNOWN_2154: 0
+108ce0a8:              0000: 00002154 00000000
+t0             write UNKNOWN_2155 (2155)
+                       UNKNOWN_2155: 0
+108ce0b0:              0000: 00002155 00000000
+t0             write UNKNOWN_2156 (2156)
+                       UNKNOWN_2156: 0
+108ce0b8:              0000: 00002156 00000000
+t0             write UNKNOWN_2157 (2157)
+                       UNKNOWN_2157: 0
+108ce0c0:              0000: 00002157 00000000
+t0             write UNKNOWN_21C3 (21c3)
+                       UNKNOWN_21C3: 0x1d
+108ce0c8:              0000: 000021c3 0000001d
+t0             write PC_GS_PARAM (21e5)
+                       PC_GS_PARAM: { MAX_VERTICES = 0 | INVOCATIONS = 0 | PRIMTYPE = PC_DRAW_POINTS }
+108ce0d0:              0000: 000021e5 00000000
+t0             write UNKNOWN_21E6 (21e6)
+                       UNKNOWN_21E6: 0x1
+108ce0d8:              0000: 000021e6 00000001
+t0             write PC_HS_PARAM (21e7)
+                       PC_HS_PARAM: { VERTICES_OUT = 0 | SPACING = EQUAL_SPACING }
+108ce0e0:              0000: 000021e7 00000000
+t0             write UNKNOWN_22D7 (22d7)
+                       UNKNOWN_22D7: 0
+108ce0e8:              0000: 000022d7 00000000
+t0             write TPL1_TP_TEX_OFFSET (2380)
+                       TPL1_TP_TEX_OFFSET: 0
+108ce0f0:              0000: 00002380 00000000
+t0             write TPL1_TP_TEX_COUNT (2381)
+                       TPL1_TP_TEX_COUNT: { VS = 16 | HS = 0 | DS = 0 | GS = 0 }
+108ce0f8:              0000: 00002381 00000010
+t0             write TPL1_TP_FS_TEX_COUNT (23a0)
+                       TPL1_TP_FS_TEX_COUNT: 0x10
+108ce100:              0000: 000023a0 00000010
+t3             opcode: CP_SET_DRAW_STATE (43) (3 dwords)
+                       { COUNT = 0 | DISABLE_ALL_GROUPS | GROUP_ID = 0 }
+                       { ADDR_LO = 0 }
+108ce108:              0000: c0014300 00040000 00000000
+t0             write SP_VS_PVT_MEM_PARAM (22e2)
+                       SP_VS_PVT_MEM_PARAM: 0x8000001
+                       SP_VS_PVT_MEM_ADDR: 0x10cd7000
+108ce114:              0000: 000122e2 08000001 10cd7000
+t0             write SP_FS_PVT_MEM_PARAM (22ec)
+                       SP_FS_PVT_MEM_PARAM: 0x8000001
+                       SP_FS_PVT_MEM_ADDR: 0x10cd9000
+108ce120:              0000: 000122ec 08000001 10cd9000
+t0             write GRAS_SC_CONTROL (207b)
+                       GRAS_SC_CONTROL: { RENDER_MODE = RB_RENDERING_PASS | MSAA_SAMPLES = 0 | MSAA_DISABLE | RASTER_MODE = 0 }
+108ce12c:              0000: 0000207b 00000800
+t0             write RB_MSAA_CONTROL (20a2)
+                       RB_MSAA_CONTROL: { DISABLE | SAMPLES = 0 }
+108ce134:              0000: 000020a2 00001000
+t0             write GRAS_CL_GB_CLIP_ADJ (2004)
+                       GRAS_CL_GB_CLIP_ADJ: { HORZ = 0 | VERT = 0 }
+108ce13c:              0000: 00002004 00000000
+t0             write RB_ALPHA_CONTROL (20f8)
+                       RB_ALPHA_CONTROL: { ALPHA_REF = 0 | ALPHA_TEST_FUNC = FUNC_ALWAYS }
+108ce144:              0000: 000020f8 00000e00
+t0             write RB_FS_OUTPUT (20f9)
+                       RB_FS_OUTPUT: { ENABLE_BLEND = 0 | SAMPLE_MASK = 0xffff }
+108ce14c:              0000: 000020f9 ffff0000
+t0             write GRAS_ALPHA_CONTROL (2073)
+                       GRAS_ALPHA_CONTROL: { 0 }
+108ce154:              0000: 00002073 00000000
+t0             write VSC_BIN_SIZE (0c00)
+                       VSC_BIN_SIZE: { WIDTH = 320 | HEIGHT = 320 }
+108ce15c:              0000: 00000c00 0000014a
+t0             write VSC_SIZE_ADDRESS (0c01)
+                       VSC_SIZE_ADDRESS: 0x10cdb000
+108ce164:              0000: 00000c01 10cdb000
+t0             write VSC_PIPE_CONFIG[0].REG (0c08)
+                       VSC_PIPE_CONFIG[0].REG: { X = 0 | Y = 0 | W = 1 | H = 1 }
+                       VSC_PIPE_CONFIG[0x1].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
+                       VSC_PIPE_CONFIG[0x2].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
+                       VSC_PIPE_CONFIG[0x3].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
+                       VSC_PIPE_CONFIG[0x4].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
+                       VSC_PIPE_CONFIG[0x5].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
+                       VSC_PIPE_CONFIG[0x6].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
+                       VSC_PIPE_CONFIG[0x7].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
+108ce16c:              0000: 00070c08 01100000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0             write VSC_PIPE_DATA_ADDRESS[0].REG (0c10)
+                       VSC_PIPE_DATA_ADDRESS[0].REG: 0x10cdc000
+                       VSC_PIPE_DATA_ADDRESS[0x1].REG: 0x10d1c000
+                       VSC_PIPE_DATA_ADDRESS[0x2].REG: 0x10d5c000
+                       VSC_PIPE_DATA_ADDRESS[0x3].REG: 0x10d9c000
+                       VSC_PIPE_DATA_ADDRESS[0x4].REG: 0x10ddc000
+                       VSC_PIPE_DATA_ADDRESS[0x5].REG: 0x10e1c000
+                       VSC_PIPE_DATA_ADDRESS[0x6].REG: 0x10e5c000
+                       VSC_PIPE_DATA_ADDRESS[0x7].REG: 0x10e9c000
+108ce190:              0000: 00070c10 10cdc000 10d1c000 10d5c000 10d9c000 10ddc000 10e1c000 10e5c000
+108ce1b0:              0020: 10e9c000
+t0             write VSC_PIPE_DATA_LENGTH[0].REG (0c18)
+                       VSC_PIPE_DATA_LENGTH[0].REG: 0x3ffe0
+                       VSC_PIPE_DATA_LENGTH[0x1].REG: 0x3ffe0
+                       VSC_PIPE_DATA_LENGTH[0x2].REG: 0x3ffe0
+                       VSC_PIPE_DATA_LENGTH[0x3].REG: 0x3ffe0
+                       VSC_PIPE_DATA_LENGTH[0x4].REG: 0x3ffe0
+                       VSC_PIPE_DATA_LENGTH[0x5].REG: 0x3ffe0
+                       VSC_PIPE_DATA_LENGTH[0x6].REG: 0x3ffe0
+                       VSC_PIPE_DATA_LENGTH[0x7].REG: 0x3ffe0
+108ce1b4:              0000: 00070c18 0003ffe0 0003ffe0 0003ffe0 0003ffe0 0003ffe0 0003ffe0 0003ffe0
+108ce1d4:              0020: 0003ffe0
+t3             opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
+108ce1d8:              0000: c0002600 00000000
+t0             write RB_FRAME_BUFFER_DIMENSION (0ce0)
+                       RB_FRAME_BUFFER_DIMENSION: { WIDTH = 300 | HEIGHT = 300 }
+108ce1e0:              0000: 00000ce0 012c012c
+t0             write RB_MODE_CONTROL (20a0)
+                       RB_MODE_CONTROL: { WIDTH = 320 | HEIGHT = 320 | ENABLE_GMEM }
+108ce1e8:              0000: 000020a0 00010a0a
+t0             write RB_DEPTH_INFO (2103)
+                       RB_DEPTH_INFO: { DEPTH_FORMAT = DEPTH4_24_8 | DEPTH_BASE = 0x64000 }
+                       RB_DEPTH_PITCH: 1280
+                       RB_DEPTH_PITCH2: 1280
+108ce1f0:              0000: 00022103 00064002 00000028 00000028
+t0             write RB_STENCIL_INFO (2108)
+                       RB_STENCIL_INFO: { STENCIL_BASE = 0 }
+                       RB_STENCIL_PITCH: 0
+108ce200:              0000: 00012108 00000000 00000000
+t0             write GRAS_DEPTH_CONTROL (2077)
+                       GRAS_DEPTH_CONTROL: { FORMAT = DEPTH4_24_8 }
+108ce20c:              0000: 00002077 00000002
+t0             write PC_VSTREAM_CONTROL (21c2)
+                       PC_VSTREAM_CONTROL: { SIZE = 0 | N = 0 }
+108ce214:              0000: 000021c2 00000000
+t3             opcode: (null) (4c) (4 dwords)
+108ce21c:              0000: c0024c00 00000000 00000000 012b012b
+t0             write RB_MRT[0].BUF_INFO (20a5)
+                       RB_MRT[0].BUF_INFO: { COLOR_FORMAT = RB4_R8G8B8A8_UNORM | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WXYZ | COLOR_BUF_PITCH = 1280 }
+                       RB_MRT[0].BASE: 0
+                       RB_MRT[0].CONTROL3: { STRIDE = 1280 }
+108ce22c:              0000: 000220a5 0014089a 00000000 00002800
+t0             write RB_MRT[0x1].BUF_INFO (20aa)
+                       RB_MRT[0x1].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
+                       RB_MRT[0x1].BASE: 0
+                       RB_MRT[0x1].CONTROL3: { STRIDE = 0 }
+108ce23c:              0000: 000220aa 00000080 00000000 00000000
+t0             write RB_MRT[0x2].BUF_INFO (20af)
+                       RB_MRT[0x2].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
+                       RB_MRT[0x2].BASE: 0
+                       RB_MRT[0x2].CONTROL3: { STRIDE = 0 }
+108ce24c:              0000: 000220af 00000080 00000000 00000000
+t0             write RB_MRT[0x3].BUF_INFO (20b4)
+                       RB_MRT[0x3].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
+                       RB_MRT[0x3].BASE: 0
+                       RB_MRT[0x3].CONTROL3: { STRIDE = 0 }
+108ce25c:              0000: 000220b4 00000080 00000000 00000000
+t0             write RB_MRT[0x4].BUF_INFO (20b9)
+                       RB_MRT[0x4].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
+                       RB_MRT[0x4].BASE: 0
+                       RB_MRT[0x4].CONTROL3: { STRIDE = 0 }
+108ce26c:              0000: 000220b9 00000080 00000000 00000000
+t0             write RB_MRT[0x5].BUF_INFO (20be)
+                       RB_MRT[0x5].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
+                       RB_MRT[0x5].BASE: 0
+                       RB_MRT[0x5].CONTROL3: { STRIDE = 0 }
+108ce27c:              0000: 000220be 00000080 00000000 00000000
+t0             write RB_MRT[0x6].BUF_INFO (20c3)
+                       RB_MRT[0x6].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
+                       RB_MRT[0x6].BASE: 0
+                       RB_MRT[0x6].CONTROL3: { STRIDE = 0 }
+108ce28c:              0000: 000220c3 00000080 00000000 00000000
+t0             write RB_MRT[0x7].BUF_INFO (20c8)
+                       RB_MRT[0x7].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
+                       RB_MRT[0x7].BASE: 0
+                       RB_MRT[0x7].CONTROL3: { STRIDE = 0 }
+108ce29c:              0000: 000220c8 00000080 00000000 00000000
+t0             write RB_BIN_OFFSET (210d)
+                       RB_BIN_OFFSET: { X = 0 | Y = 0 }
+108ce2ac:              0000: 0000210d 00000000
+t0             write GRAS_SC_SCREEN_SCISSOR_TL (207c)
+                       GRAS_SC_SCREEN_SCISSOR_TL: { X = 0 | Y = 0 }
+                       GRAS_SC_SCREEN_SCISSOR_BR: { X = 299 | Y = 299 }
+108ce2b4:              0000: 0001207c 00000000 012b012b
+t0             write RB_RENDER_CONTROL (20a1)
+                       RB_RENDER_CONTROL: { 0x8 }
+108ce2c0:              0000: 000020a1 00000008
+t0             write CP_SCRATCH[0x6].REG (057e)
+                       CP_SCRATCH[0x6].REG: 0x73
+                       :0,0,115,0
+108ce2c8:              0000: 0000057e 00000073
+t3             opcode: CP_INDIRECT_BUFFER (3f) (3 dwords)
+               ibaddr:109ce000
+               ibsize:00000f2e
+t0                     write CP_SCRATCH[0x5].REG (057d)
+                               CP_SCRATCH[0x5].REG: 0x1
+                               :0,1,115,0
+109ce000:                      0000: 0000057d 00000001
+t0                     write RB_RENDER_COMPONENTS (20fb)
+                               RB_RENDER_COMPONENTS: { RT0 = 0xf | RT1 = 0 | RT2 = 0 | RT3 = 0 | RT4 = 0 | RT5 = 0 | RT6 = 0 | RT7 = 0 }
+109ce008:                      0000: 000020fb 0000000f
+t0                     write RB_ALPHA_CONTROL (20f8)
+                               RB_ALPHA_CONTROL: { ALPHA_REF = 0 | ALPHA_TEST_FUNC = FUNC_NEVER }
+109ce010:                      0000: 000020f8 00000000
+t0                     write RB_STENCIL_CONTROL (2106)
+                               RB_STENCIL_CONTROL: { FUNC = FUNC_NEVER | FAIL = STENCIL_KEEP | ZPASS = STENCIL_KEEP | ZFAIL = STENCIL_KEEP | FUNC_BF = FUNC_NEVER | FAIL_BF = STENCIL_KEEP | ZPASS_BF = STENCIL_KEEP | ZFAIL_BF = STENCIL_KEEP }
+                               RB_STENCIL_CONTROL2: { 0 }
+109ce018:                      0000: 00012106 00000000 00000000
+t0                     write RB_STENCILREFMASK (210b)
+                               RB_STENCILREFMASK: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0 }
+                               RB_STENCILREFMASK_BF: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0 }
+109ce024:                      0000: 0001210b 00000000 00000000
+t0                     write RB_DEPTH_CONTROL (2101)
+                               RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_ALWAYS | Z_TEST_ENABLE }
+109ce030:                      0000: 00002101 80000076
+t0                     write GRAS_ALPHA_CONTROL (2073)
+                               GRAS_ALPHA_CONTROL: { 0 }
+109ce038:                      0000: 00002073 00000000
+t0                     write GRAS_SU_MODE_CONTROL (2078)
+                               GRAS_SU_MODE_CONTROL: { FRONT_CW | LINEHALFWIDTH = 0.000000 | RENDERING_PASS }
+109ce040:                      0000: 00002078 00100004
+t0                     write GRAS_SU_POINT_MINMAX (2070)
+                               GRAS_SU_POINT_MINMAX: { MIN = 0.000000 | MAX = 0.000000 }
+                               GRAS_SU_POINT_SIZE: 0.000000
+109ce048:                      0000: 00012070 00000000 00000000
+t0                     write GRAS_SU_POLY_OFFSET_SCALE (2074)
+                               GRAS_SU_POLY_OFFSET_SCALE: 0.000000
+                               GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
+                               GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
+109ce054:                      0000: 00022074 00000000 00000000 00000000
+t0                     write GRAS_CL_CLIP_CNTL (2000)
+                               GRAS_CL_CLIP_CNTL: { 0x80000 }
+109ce064:                      0000: 00002000 00080000
+t0                     write PC_PRIM_VTX_CNTL (21c4)
+                               PC_PRIM_VTX_CNTL: { VAROUT = 0 | PROVOKING_VTX_LAST }
+                               PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+109ce06c:                      0000: 000121c4 02000000 00000012
+t0                     write GRAS_SC_WINDOW_SCISSOR_BR (209c)
+                               GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
+                               GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
+109ce078:                      0000: 0001209c 012b012b 00000000
+t3                     opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
+109ce084:                      0000: c0002600 00000000
+t0                     write GRAS_CL_VPORT_XOFFSET_0 (2008)
+                               GRAS_CL_VPORT_XOFFSET_0: 150.000000
+                               GRAS_CL_VPORT_XSCALE_0: 150.000000
+                               GRAS_CL_VPORT_YOFFSET_0: 150.000000
+                               GRAS_CL_VPORT_YSCALE_0: -150.000000
+                               GRAS_CL_VPORT_ZOFFSET_0: 0.000000
+                               GRAS_CL_VPORT_ZSCALE_0: 1.000000
+109ce08c:                      0000: 00052008 43160000 43160000 43160000 c3160000 00000000 3f800000
+t0                     write RB_VPORT_Z_CLAMP[0].MIN (2120)
+                               RB_VPORT_Z_CLAMP[0].MIN: 0
+                               RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
+109ce0a8:                      0000: 00012120 00000000 00ffffff
+t0                     write HLSQ_UPDATE_CONTROL (23db)
+                               HLSQ_UPDATE_CONTROL: 0x3
+109ce0b4:                      0000: 000023db 00000003
+t0                     write HLSQ_CONTROL_0_REG (23c0)
+                               HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+                               HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+                               HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+                               HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+                               HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+109ce0bc:                      0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfcfc 00fcfcfc
+t0                     write HLSQ_VS_CONTROL_REG (23c5)
+                               HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 1 }
+                               HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+                               HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+109ce0d4:                      0000: 000423c5 01000042 017e423e 007e4200 007e4200 007e4200
+t0                     write SP_SP_CTRL_REG (22c0)
+                               SP_SP_CTRL_REG: { 0x140010 }
+109ce0ec:                      0000: 000022c0 00140010
+t0                     write SP_INSTR_CACHE_CTRL (22c1)
+                               SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+109ce0f4:                      0000: 000022c1 000005ff
+t0                     write SP_VS_LENGTH_REG (22e5)
+                               SP_VS_LENGTH_REG: 1
+109ce0fc:                      0000: 000022e5 00000001
+t0                     write SP_VS_CTRL_REG0 (22c4)
+                               SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+                               SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
+                               SP_VS_PARAM_REG: { POSREGID = r0.x | PSIZEREGID = r63.x | TOTALVSOUTVAR = 0 }
+109ce104:                      0000: 000222c4 00200400 04000042 0000fc00
+t0                     write SP_VS_OBJ_OFFSET_REG (22e0)
+                               SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+                               SP_VS_OBJ_START: 0x1073c000
+109ce114:                      0000: 000122e0 00000000 1073c000
+t0                     write SP_FS_LENGTH_REG (22ef)
+                               SP_FS_LENGTH_REG: 1
+109ce120:                      0000: 000022ef 00000001
+t0                     write SP_FS_CTRL_REG0 (22e8)
+                               SP_FS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+                               SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | 0x80000000 }
+109ce128:                      0000: 000122e8 00340400 8000003e
+t0                     write SP_FS_OBJ_OFFSET_REG (22ea)
+                               SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+                               SP_FS_OBJ_START: 0x1073b000
+109ce134:                      0000: 000122ea 7e420000 1073b000
+t0                     write SP_HS_OBJ_OFFSET_REG (230d)
+                               SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109ce140:                      0000: 0000230d 7e420000
+t0                     write SP_DS_OBJ_OFFSET_REG (2334)
+                               SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109ce148:                      0000: 00002334 7e420000
+t0                     write SP_GS_OBJ_OFFSET_REG (235b)
+                               SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109ce150:                      0000: 0000235b 7e420000
+t0                     write GRAS_CNTL (2003)
+                               GRAS_CNTL: { 0 }
+109ce158:                      0000: 00002003 00000000
+t0                     write RB_RENDER_CONTROL2 (20a3)
+                               RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
+109ce160:                      0000: 000020a3 00000000
+t0                     write RB_FS_OUTPUT_REG (2100)
+                               RB_FS_OUTPUT_REG: { MRT = 1 }
+109ce168:                      0000: 00002100 00000001
+t0                     write SP_FS_OUTPUT_REG (22f0)
+                               SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+109ce170:                      0000: 000022f0 0000fc01
+t0                     write SP_FS_MRT[0].REG (22f1)
+                               SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+                               SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
+109ce178:                      0000: 000722f1 0001a000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0                     write VPC_ATTR (2140)
+                               VPC_ATTR: { TOTALATTR = 0 | THRDASSIGN = 1 | 0x40000000 }
+                               VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 0 | NUMNONPOSVSVAR = 0 }
+109ce19c:                      0000: 00012140 40001000 00000000
+t0                     write VPC_VARYING_INTERP[0].MODE (2142)
+                               VPC_VARYING_INTERP[0].MODE: 0
+                               VPC_VARYING_INTERP[0x1].MODE: 0
+                               VPC_VARYING_INTERP[0x2].MODE: 0
+                               VPC_VARYING_INTERP[0x3].MODE: 0
+                               VPC_VARYING_INTERP[0x4].MODE: 0
+                               VPC_VARYING_INTERP[0x5].MODE: 0
+                               VPC_VARYING_INTERP[0x6].MODE: 0
+                               VPC_VARYING_INTERP[0x7].MODE: 0
+109ce1a8:                      0000: 00072142 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0                     write VPC_VARYING_PS_REPL[0].MODE (214a)
+                               VPC_VARYING_PS_REPL[0].MODE: 0
+                               VPC_VARYING_PS_REPL[0x1].MODE: 0
+                               VPC_VARYING_PS_REPL[0x2].MODE: 0
+                               VPC_VARYING_PS_REPL[0x3].MODE: 0
+                               VPC_VARYING_PS_REPL[0x4].MODE: 0
+                               VPC_VARYING_PS_REPL[0x5].MODE: 0
+                               VPC_VARYING_PS_REPL[0x6].MODE: 0
+                               VPC_VARYING_PS_REPL[0x7].MODE: 0
+109ce1cc:                      0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (35 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 1 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :0:0000:0000[03000000x_00000000x] end
+                               :0:0001:0001[00000000x_00000000x] nop
+                               :0:0002:0002[00000000x_00000000x] nop
+                               :0:0003:0003[00000000x_00000000x] nop
+                               :0:0004:0004[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): (cnt=0, max=0)
+                               - used (merged): (cnt=0, max=0)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): (cnt=0, max=0)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): (cnt=0, max=0)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): (cnt=0, max=0)  (estimated)
+                               - shaderdb: 5 instructions, 4 nops, 1 non-nops, (5 instlen), 0 half, 0 full
+                               - shaderdb: 0 (ss), 0 (sy)
+109ce1f0:                      0000: c0213000 00600000 00000000 00000000 03000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (35 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :1:0000:0000[20244000x_00000000x] mov.f32f32 r0.x, c0.x
+                               :1:0001:0001[20244001x_00000001x] mov.f32f32 r0.y, c0.y
+                               :1:0002:0002[20244002x_00000002x] mov.f32f32 r0.z, c0.z
+                               :1:0003:0003[20244003x_00000003x] mov.f32f32 r0.w, c0.w
+                               :0:0004:0004[03000000x_00000000x] end
+                               :0:0005:0005[00000000x_00000000x] nop
+                               :0:0006:0006[00000000x_00000000x] nop
+                               :0:0007:0007[00000000x_00000000x] nop
+                               :0:0008:0008[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): 0-3 (cnt=4, max=3)
+                               - used (merged): 0-7 (cnt=8, max=7)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): (cnt=0, max=0)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): 0-3 (cnt=4, max=3)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): 0-3 (cnt=4, max=3)  (estimated)
+                               - shaderdb: 9 instructions, 8 nops, 1 non-nops, (9 instlen), 0 half, 1 full
+                               - shaderdb: 0 (ss), 0 (sy)
+109ce27c:                      0000: c0213000 00700000 00000000 00000000 20244000 00000001 20244001 00000002
+109ce29c:                      0020: 20244002 00000003 20244003 00000000 03000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (19 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 4 }
+                               { STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
+109ce314:                              0.000000 0.000000 0.000000 0.000000     -nan     -nan 0.000000 0.000000
+109ce334:                              0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
+109ce314:                              0000: 00000000 00000000 00000000 00000000 ffffffff ffffffff 00000405 00000000
+109ce334:                              0020: 00000000 00000000 02070000 00000000 00000000 00000000 00000000 00000000
+109ce308:                      0000: c0113000 01300000 00000001 00000000 00000000 00000000 00000000 ffffffff
+109ce328:                      0020: ffffffff 00000405 00000000 00000000 00000000 02070000 00000000 00000000
+*
+t0                     write RB_MRT[0].CONTROL (20a4)
+                               RB_MRT[0].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
+109ce354:                      0000: 000020a4 0f000c00
+t0                     write RB_MRT[0].BLEND_CONTROL (20a8)
+                               RB_MRT[0].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+109ce35c:                      0000: 000020a8 00000000
+t0                     write RB_MRT[0x1].CONTROL (20a9)
+                               RB_MRT[0x1].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
+109ce364:                      0000: 000020a9 00000c00
+t0                     write RB_MRT[0x1].BLEND_CONTROL (20ad)
+                               RB_MRT[0x1].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+109ce36c:                      0000: 000020ad 00000000
+t0                     write RB_MRT[0x2].CONTROL (20ae)
+                               RB_MRT[0x2].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
+109ce374:                      0000: 000020ae 00000c00
+t0                     write RB_MRT[0x2].BLEND_CONTROL (20b2)
+                               RB_MRT[0x2].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+109ce37c:                      0000: 000020b2 00000000
+t0                     write RB_MRT[0x3].CONTROL (20b3)
+                               RB_MRT[0x3].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
+109ce384:                      0000: 000020b3 00000c00
+t0                     write RB_MRT[0x3].BLEND_CONTROL (20b7)
+                               RB_MRT[0x3].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+109ce38c:                      0000: 000020b7 00000000
+t0                     write RB_MRT[0x4].CONTROL (20b8)
+                               RB_MRT[0x4].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
+109ce394:                      0000: 000020b8 00000c00
+t0                     write RB_MRT[0x4].BLEND_CONTROL (20bc)
+                               RB_MRT[0x4].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+109ce39c:                      0000: 000020bc 00000000
+t0                     write RB_MRT[0x5].CONTROL (20bd)
+                               RB_MRT[0x5].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
+109ce3a4:                      0000: 000020bd 00000c00
+t0                     write RB_MRT[0x5].BLEND_CONTROL (20c1)
+                               RB_MRT[0x5].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+109ce3ac:                      0000: 000020c1 00000000
+t0                     write RB_MRT[0x6].CONTROL (20c2)
+                               RB_MRT[0x6].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
+109ce3b4:                      0000: 000020c2 00000c00
+t0                     write RB_MRT[0x6].BLEND_CONTROL (20c6)
+                               RB_MRT[0x6].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+109ce3bc:                      0000: 000020c6 00000000
+t0                     write RB_MRT[0x7].CONTROL (20c7)
+                               RB_MRT[0x7].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
+109ce3c4:                      0000: 000020c7 00000c00
+t0                     write RB_MRT[0x7].BLEND_CONTROL (20cb)
+                               RB_MRT[0x7].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+109ce3cc:                      0000: 000020cb 00000000
+t0                     write RB_FS_OUTPUT (20f9)
+                               RB_FS_OUTPUT: { ENABLE_BLEND = 0 | INDEPENDENT_BLEND | SAMPLE_MASK = 0xffff }
+109ce3d4:                      0000: 000020f9 ffff0100
+t0                     write RB_BLEND_RED (20f0)
+                               RB_BLEND_RED: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
+                               RB_BLEND_RED_F32: 0.000000
+                               RB_BLEND_GREEN: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
+                               RB_BLEND_GREEN_F32: 0.000000
+                               RB_BLEND_BLUE: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
+                               RB_BLEND_BLUE_F32: 0.000000
+                               RB_BLEND_ALPHA: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
+                               RB_BLEND_ALPHA_F32: 0.000000
+109ce3dc:                      0000: 000720f0 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0                     write VFD_FETCH[0].INSTR_0 (220a)
+                               VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
+                               VFD_FETCH[0].INSTR_1: 0x1074a000
+                               VFD_FETCH[0].INSTR_2: { SIZE = 0x1000 }
+                               VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
+109ce400:                      0000: 0003220a 0000060b 1074a000 00001000 00000001
+t0                     write VFD_DECODE[0].INSTR (228a)
+                               VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.x | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
+109ce414:                      0000: 0000228a 2c0000df
+t0                     write VFD_CONTROL_0 (2200)
+                               VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
+                               VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
+                               VFD_CONTROL_2: 0
+                               VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
+                               VFD_CONTROL_4: 0
+109ce41c:                      0000: 00042200 041a0004 fcfc0081 00000000 0000fc00 00000000
+t0                     write UCHE_INVALIDATE0 (0e8a)
+                               UCHE_INVALIDATE0: 0
+                               UCHE_INVALIDATE1: 0x12
+109ce434:                      0000: 00010e8a 00000000 00000012
+t0                     write VFD_INDEX_OFFSET (2208)
+                               VFD_INDEX_OFFSET: 0
+                               UNKNOWN_2209: 0
+109ce440:                      0000: 00012208 00000000 00000000
+t0                     write PC_RESTART_INDEX (21c6)
+                               PC_RESTART_INDEX: 0xffffffff
+109ce44c:                      0000: 000021c6 ffffffff
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x2
+                               :0,1,115,2
+109ce454:                      0000: 0000057f 00000002
+t3                     opcode: CP_DRAW_INDX_OFFSET (38) (4 dwords)
+                               { PRIM_TYPE = DI_PT_RECTLIST | SOURCE_SELECT = DI_SRC_SEL_AUTO_INDEX | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_32_BIT | PATCH_TYPE = TESS_QUADS }
+                               { NUM_INSTANCES = 1 }
+                               { NUM_INDICES = 2 }
+                       draw[0] register values
+!+     00000001                        RBBM_PERFCTR_CTL: 0x1
+!+     00000001                        CP_SCRATCH[0x5].REG: 0x1
+                       :0,1,115,2
+!+     00000073                        CP_SCRATCH[0x6].REG: 0x73
+                       :0,1,115,2
+!+     00000002                        CP_SCRATCH[0x7].REG: 0x2
+                       :0,1,115,2
+!+     0000014a                        VSC_BIN_SIZE: { WIDTH = 320 | HEIGHT = 320 }
+!+     10cdb000                        VSC_SIZE_ADDRESS: 0x10cdb000
+!+     01100000                        VSC_PIPE_CONFIG[0].REG: { X = 0 | Y = 0 | W = 1 | H = 1 }
+ +     00000000                        VSC_PIPE_CONFIG[0x1].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
+ +     00000000                        VSC_PIPE_CONFIG[0x2].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
+ +     00000000                        VSC_PIPE_CONFIG[0x3].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
+ +     00000000                        VSC_PIPE_CONFIG[0x4].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
+ +     00000000                        VSC_PIPE_CONFIG[0x5].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
+ +     00000000                        VSC_PIPE_CONFIG[0x6].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
+ +     00000000                        VSC_PIPE_CONFIG[0x7].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
+!+     10cdc000                        VSC_PIPE_DATA_ADDRESS[0].REG: 0x10cdc000
+!+     10d1c000                        VSC_PIPE_DATA_ADDRESS[0x1].REG: 0x10d1c000
+!+     10d5c000                        VSC_PIPE_DATA_ADDRESS[0x2].REG: 0x10d5c000
+!+     10d9c000                        VSC_PIPE_DATA_ADDRESS[0x3].REG: 0x10d9c000
+!+     10ddc000                        VSC_PIPE_DATA_ADDRESS[0x4].REG: 0x10ddc000
+!+     10e1c000                        VSC_PIPE_DATA_ADDRESS[0x5].REG: 0x10e1c000
+!+     10e5c000                        VSC_PIPE_DATA_ADDRESS[0x6].REG: 0x10e5c000
+!+     10e9c000                        VSC_PIPE_DATA_ADDRESS[0x7].REG: 0x10e9c000
+!+     0003ffe0                        VSC_PIPE_DATA_LENGTH[0].REG: 0x3ffe0
+!+     0003ffe0                        VSC_PIPE_DATA_LENGTH[0x1].REG: 0x3ffe0
+!+     0003ffe0                        VSC_PIPE_DATA_LENGTH[0x2].REG: 0x3ffe0
+!+     0003ffe0                        VSC_PIPE_DATA_LENGTH[0x3].REG: 0x3ffe0
+!+     0003ffe0                        VSC_PIPE_DATA_LENGTH[0x4].REG: 0x3ffe0
+!+     0003ffe0                        VSC_PIPE_DATA_LENGTH[0x5].REG: 0x3ffe0
+!+     0003ffe0                        VSC_PIPE_DATA_LENGTH[0x6].REG: 0x3ffe0
+!+     0003ffe0                        VSC_PIPE_DATA_LENGTH[0x7].REG: 0x3ffe0
+ +     00000000                        GRAS_DEBUG_ECO_CONTROL: 0
+!+     00000006                        UNKNOWN_0CC5: 0x6
+ +     00000000                        UNKNOWN_0CC6: 0
+!+     012c012c                        RB_FRAME_BUFFER_DIMENSION: { WIDTH = 300 | HEIGHT = 300 }
+!+     00000001                        UNKNOWN_0D01: 0x1
+ +     00000000                        HLSQ_MODE_CONTROL: 0
+ +     00000000                        UNKNOWN_0E42: 0
+ +     00000000                        UCHE_CACHE_MODE_CONTROL: 0
+ +     00000000                        UCHE_INVALIDATE0: 0
+!+     00000012                        UCHE_INVALIDATE1: 0x12
+!+     00000007                        UCHE_CACHE_WAYS_VFD: 0x7
+!+     00040000                        UNKNOWN_0EC2: 0x40000
+!+     00000006                        SP_MODE_CONTROL: 0x6
+!+     0000003a                        TPL1_TP_MODE_CONTROL: 0x3a
+!+     00080000                        GRAS_CL_CLIP_CNTL: { 0x80000 }
+ +     00000000                        UNKNOWN_2001: 0
+ +     00000000                        GRAS_CNTL: { 0 }
+ +     00000000                        GRAS_CL_GB_CLIP_ADJ: { HORZ = 0 | VERT = 0 }
+!+     43160000                        GRAS_CL_VPORT_XOFFSET_0: 150.000000
+!+     43160000                        GRAS_CL_VPORT_XSCALE_0: 150.000000
+!+     43160000                        GRAS_CL_VPORT_YOFFSET_0: 150.000000
+!+     c3160000                        GRAS_CL_VPORT_YSCALE_0: -150.000000
+ +     00000000                        GRAS_CL_VPORT_ZOFFSET_0: 0.000000
+!+     3f800000                        GRAS_CL_VPORT_ZSCALE_0: 1.000000
+ +     00000000                        GRAS_SU_POINT_MINMAX: { MIN = 0.000000 | MAX = 0.000000 }
+ +     00000000                        GRAS_SU_POINT_SIZE: 0.000000
+ +     00000000                        GRAS_ALPHA_CONTROL: { 0 }
+ +     00000000                        GRAS_SU_POLY_OFFSET_SCALE: 0.000000
+ +     00000000                        GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
+ +     00000000                        GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
+!+     00000002                        GRAS_DEPTH_CONTROL: { FORMAT = DEPTH4_24_8 }
+!+     00100004                        GRAS_SU_MODE_CONTROL: { FRONT_CW | LINEHALFWIDTH = 0.000000 | RENDERING_PASS }
+!+     00000800                        GRAS_SC_CONTROL: { RENDER_MODE = RB_RENDERING_PASS | MSAA_SAMPLES = 0 | MSAA_DISABLE | RASTER_MODE = 0 }
+ +     00000000                        GRAS_SC_SCREEN_SCISSOR_TL: { X = 0 | Y = 0 }
+!+     012b012b                        GRAS_SC_SCREEN_SCISSOR_BR: { X = 299 | Y = 299 }
+!+     012b012b                        GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
+ +     00000000                        GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
+!+     00010a0a                        RB_MODE_CONTROL: { WIDTH = 320 | HEIGHT = 320 | ENABLE_GMEM }
+!+     00000008                        RB_RENDER_CONTROL: { 0x8 }
+!+     00001000                        RB_MSAA_CONTROL: { DISABLE | SAMPLES = 0 }
+ +     00000000                        RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
+!+     0f000c00                        RB_MRT[0].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
+!+     0014089a                        RB_MRT[0].BUF_INFO: { COLOR_FORMAT = RB4_R8G8B8A8_UNORM | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WXYZ | COLOR_BUF_PITCH = 1280 }
+ +     00000000                        RB_MRT[0].BASE: 0
+!+     00002800                        RB_MRT[0].CONTROL3: { STRIDE = 1280 }
+ +     00000000                        RB_MRT[0].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+!+     00000c00                        RB_MRT[0x1].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
+!+     00000080                        RB_MRT[0x1].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
+ +     00000000                        RB_MRT[0x1].BASE: 0
+ +     00000000                        RB_MRT[0x1].CONTROL3: { STRIDE = 0 }
+ +     00000000                        RB_MRT[0x1].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+!+     00000c00                        RB_MRT[0x2].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
+!+     00000080                        RB_MRT[0x2].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
+ +     00000000                        RB_MRT[0x2].BASE: 0
+ +     00000000                        RB_MRT[0x2].CONTROL3: { STRIDE = 0 }
+ +     00000000                        RB_MRT[0x2].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+!+     00000c00                        RB_MRT[0x3].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
+!+     00000080                        RB_MRT[0x3].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
+ +     00000000                        RB_MRT[0x3].BASE: 0
+ +     00000000                        RB_MRT[0x3].CONTROL3: { STRIDE = 0 }
+ +     00000000                        RB_MRT[0x3].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+!+     00000c00                        RB_MRT[0x4].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
+!+     00000080                        RB_MRT[0x4].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
+ +     00000000                        RB_MRT[0x4].BASE: 0
+ +     00000000                        RB_MRT[0x4].CONTROL3: { STRIDE = 0 }
+ +     00000000                        RB_MRT[0x4].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+!+     00000c00                        RB_MRT[0x5].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
+!+     00000080                        RB_MRT[0x5].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
+ +     00000000                        RB_MRT[0x5].BASE: 0
+ +     00000000                        RB_MRT[0x5].CONTROL3: { STRIDE = 0 }
+ +     00000000                        RB_MRT[0x5].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+!+     00000c00                        RB_MRT[0x6].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
+!+     00000080                        RB_MRT[0x6].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
+ +     00000000                        RB_MRT[0x6].BASE: 0
+ +     00000000                        RB_MRT[0x6].CONTROL3: { STRIDE = 0 }
+ +     00000000                        RB_MRT[0x6].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+!+     00000c00                        RB_MRT[0x7].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
+!+     00000080                        RB_MRT[0x7].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
+ +     00000000                        RB_MRT[0x7].BASE: 0
+ +     00000000                        RB_MRT[0x7].CONTROL3: { STRIDE = 0 }
+ +     00000000                        RB_MRT[0x7].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+ +     00000000                        UNKNOWN_20EF: 0
+ +     00000000                        RB_BLEND_RED: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
+ +     00000000                        RB_BLEND_RED_F32: 0.000000
+ +     00000000                        RB_BLEND_GREEN: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
+ +     00000000                        RB_BLEND_GREEN_F32: 0.000000
+ +     00000000                        RB_BLEND_BLUE: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
+ +     00000000                        RB_BLEND_BLUE_F32: 0.000000
+ +     00000000                        RB_BLEND_ALPHA: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
+ +     00000000                        RB_BLEND_ALPHA_F32: 0.000000
+ +     00000000                        RB_ALPHA_CONTROL: { ALPHA_REF = 0 | ALPHA_TEST_FUNC = FUNC_NEVER }
+!+     ffff0100                        RB_FS_OUTPUT: { ENABLE_BLEND = 0 | INDEPENDENT_BLEND | SAMPLE_MASK = 0xffff }
+!+     0000000f                        RB_RENDER_COMPONENTS: { RT0 = 0xf | RT1 = 0 | RT2 = 0 | RT3 = 0 | RT4 = 0 | RT5 = 0 | RT6 = 0 | RT7 = 0 }
+!+     00000001                        RB_FS_OUTPUT_REG: { MRT = 1 }
+!+     80000076                        RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_ALWAYS | Z_TEST_ENABLE }
+!+     00064002                        RB_DEPTH_INFO: { DEPTH_FORMAT = DEPTH4_24_8 | DEPTH_BASE = 0x64000 }
+!+     00000028                        RB_DEPTH_PITCH: 1280
+!+     00000028                        RB_DEPTH_PITCH2: 1280
+ +     00000000                        RB_STENCIL_CONTROL: { FUNC = FUNC_NEVER | FAIL = STENCIL_KEEP | ZPASS = STENCIL_KEEP | ZFAIL = STENCIL_KEEP | FUNC_BF = FUNC_NEVER | FAIL_BF = STENCIL_KEEP | ZPASS_BF = STENCIL_KEEP | ZFAIL_BF = STENCIL_KEEP }
+ +     00000000                        RB_STENCIL_CONTROL2: { 0 }
+ +     00000000                        RB_STENCIL_INFO: { STENCIL_BASE = 0 }
+ +     00000000                        RB_STENCIL_PITCH: 0
+ +     00000000                        RB_STENCILREFMASK: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0 }
+ +     00000000                        RB_STENCILREFMASK_BF: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0 }
+ +     00000000                        RB_BIN_OFFSET: { X = 0 | Y = 0 }
+ +     00000000                        RB_VPORT_Z_CLAMP[0].MIN: 0
+!+     00ffffff                        RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
+!+     40001000                        VPC_ATTR: { TOTALATTR = 0 | THRDASSIGN = 1 | 0x40000000 }
+ +     00000000                        VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 0 | NUMNONPOSVSVAR = 0 }
+ +     00000000                        VPC_VARYING_INTERP[0].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x7].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x7].MODE: 0
+ +     00000000                        UNKNOWN_2152: 0
+ +     00000000                        UNKNOWN_2153: 0
+ +     00000000                        UNKNOWN_2154: 0
+ +     00000000                        UNKNOWN_2155: 0
+ +     00000000                        UNKNOWN_2156: 0
+ +     00000000                        UNKNOWN_2157: 0
+ +     00000000                        PC_VSTREAM_CONTROL: { SIZE = 0 | N = 0 }
+!+     0000001d                        UNKNOWN_21C3: 0x1d
+!+     02000000                        PC_PRIM_VTX_CNTL: { VAROUT = 0 | PROVOKING_VTX_LAST }
+!+     00000012                        PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+!+     ffffffff                        PC_RESTART_INDEX: 0xffffffff
+ +     00000000                        PC_GS_PARAM: { MAX_VERTICES = 0 | INVOCATIONS = 0 | PRIMTYPE = PC_DRAW_POINTS }
+!+     00000001                        UNKNOWN_21E6: 0x1
+ +     00000000                        PC_HS_PARAM: { VERTICES_OUT = 0 | SPACING = EQUAL_SPACING }
+!+     041a0004                        VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
+!+     fcfc0081                        VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
+ +     00000000                        VFD_CONTROL_2: 0
+!+     0000fc00                        VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
+ +     00000000                        VFD_CONTROL_4: 0
+ +     00000000                        VFD_INDEX_OFFSET: 0
+ +     00000000                        UNKNOWN_2209: 0
+!+     0000060b                        VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
+!+     1074a000                        VFD_FETCH[0].INSTR_1: 0x1074a000
+!+     00001000                        VFD_FETCH[0].INSTR_2: { SIZE = 0x1000 }
+!+     00000001                        VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
+!+     2c0000df                        VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.x | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
+!+     00140010                        SP_SP_CTRL_REG: { 0x140010 }
+!+     000005ff                        SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+!+     00200400                        SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+!+     04000042                        SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
+!+     0000fc00                        SP_VS_PARAM_REG: { POSREGID = r0.x | PSIZEREGID = r63.x | TOTALVSOUTVAR = 0 }
+ +     00000000                        UNKNOWN_22D7: 0
+ +     00000000                        SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+!+     1073c000                        SP_VS_OBJ_START: 0x1073c000
+!+     08000001                        SP_VS_PVT_MEM_PARAM: 0x8000001
+!+     10cd7000                        SP_VS_PVT_MEM_ADDR: 0x10cd7000
+!+     00000001                        SP_VS_LENGTH_REG: 1
+!+     00340400                        SP_FS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+!+     8000003e                        SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | 0x80000000 }
+!+     7e420000                        SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+!+     1073b000                        SP_FS_OBJ_START: 0x1073b000
+!+     08000001                        SP_FS_PVT_MEM_PARAM: 0x8000001
+!+     10cd9000                        SP_FS_PVT_MEM_ADDR: 0x10cd9000
+!+     00000001                        SP_FS_LENGTH_REG: 1
+!+     0000fc01                        SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+!+     0001a000                        SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+ +     00000000                        SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     7e420000                        SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+!+     7e420000                        SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+!+     7e420000                        SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     00000000                        TPL1_TP_TEX_OFFSET: 0
+!+     00000010                        TPL1_TP_TEX_COUNT: { VS = 16 | HS = 0 | DS = 0 | GS = 0 }
+!+     00000010                        TPL1_TP_FS_TEX_COUNT: 0x10
+!+     28000250                        HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+!+     fcfc0100                        HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+!+     fff3f3f0                        HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+!+     fcfcfcfc                        HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+!+     00fcfcfc                        HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+!+     01000042                        HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 1 }
+!+     017e423e                        HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+!+     007e4200                        HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+!+     007e4200                        HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+!+     007e4200                        HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+!+     00000003                        HLSQ_UPDATE_CONTROL: 0x3
+109ce45c:                      0000: c0023800 00000888 00000001 00000002
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x3
+                               :0,1,115,3
+109ce46c:                      0000: 0000057f 00000003
+t0                     write CP_SCRATCH[0x5].REG (057d)
+                               CP_SCRATCH[0x5].REG: 0x7
+                               :0,7,115,3
+109ce474:                      0000: 0000057d 00000007
+t0                     write RB_ALPHA_CONTROL (20f8)
+                               RB_ALPHA_CONTROL: { ALPHA_REF = 0 | ALPHA_TEST_FUNC = FUNC_NEVER }
+109ce47c:                      0000: 000020f8 00000000
+t0                     write RB_STENCIL_CONTROL (2106)
+                               RB_STENCIL_CONTROL: { FUNC = FUNC_NEVER | FAIL = STENCIL_KEEP | ZPASS = STENCIL_KEEP | ZFAIL = STENCIL_KEEP | FUNC_BF = FUNC_NEVER | FAIL_BF = STENCIL_KEEP | ZPASS_BF = STENCIL_KEEP | ZFAIL_BF = STENCIL_KEEP }
+                               RB_STENCIL_CONTROL2: { 0 }
+109ce484:                      0000: 00012106 00000000 00000000
+t0                     write RB_STENCILREFMASK (210b)
+                               RB_STENCILREFMASK: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0 }
+                               RB_STENCILREFMASK_BF: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0 }
+109ce490:                      0000: 0001210b 00000000 00000000
+t0                     write RB_DEPTH_CONTROL (2101)
+                               RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_TEST_ENABLE }
+109ce49c:                      0000: 00002101 80000016
+t0                     write GRAS_ALPHA_CONTROL (2073)
+                               GRAS_ALPHA_CONTROL: { 0 }
+109ce4a4:                      0000: 00002073 00000000
+t0                     write GRAS_SU_MODE_CONTROL (2078)
+                               GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
+109ce4ac:                      0000: 00002078 00100012
+t0                     write GRAS_SU_POINT_MINMAX (2070)
+                               GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
+                               GRAS_SU_POINT_SIZE: 1.000000
+109ce4b4:                      0000: 00012070 00100010 00000010
+t0                     write GRAS_SU_POLY_OFFSET_SCALE (2074)
+                               GRAS_SU_POLY_OFFSET_SCALE: 0.000000
+                               GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
+                               GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
+109ce4c0:                      0000: 00022074 00000000 00000000 00000000
+t0                     write GRAS_CL_CLIP_CNTL (2000)
+                               GRAS_CL_CLIP_CNTL: { 0x80000 }
+109ce4d0:                      0000: 00002000 00080000
+t0                     write PC_PRIM_VTX_CNTL (21c4)
+                               PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+                               PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+109ce4d8:                      0000: 000121c4 02000001 00000012
+t0                     write GRAS_SC_WINDOW_SCISSOR_BR (209c)
+                               GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
+                               GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
+109ce4e4:                      0000: 0001209c 012b012b 00000000
+t3                     opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
+109ce4f0:                      0000: c0002600 00000000
+t0                     write GRAS_CL_VPORT_XOFFSET_0 (2008)
+                               GRAS_CL_VPORT_XOFFSET_0: 150.000000
+                               GRAS_CL_VPORT_XSCALE_0: 150.000000
+                               GRAS_CL_VPORT_YOFFSET_0: 150.000000
+                               GRAS_CL_VPORT_YSCALE_0: -150.000000
+                               GRAS_CL_VPORT_ZOFFSET_0: 0.500000
+                               GRAS_CL_VPORT_ZSCALE_0: 0.500000
+109ce4f8:                      0000: 00052008 43160000 43160000 43160000 c3160000 3f000000 3f000000
+t0                     write RB_VPORT_Z_CLAMP[0].MIN (2120)
+                               RB_VPORT_Z_CLAMP[0].MIN: 0
+                               RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
+109ce514:                      0000: 00012120 00000000 00ffffff
+t0                     write HLSQ_UPDATE_CONTROL (23db)
+                               HLSQ_UPDATE_CONTROL: 0x3
+109ce520:                      0000: 000023db 00000003
+t0                     write HLSQ_CONTROL_0_REG (23c0)
+                               HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+                               HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+                               HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+                               HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+                               HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+109ce528:                      0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfcfc 00fcfcfc
+t0                     write HLSQ_VS_CONTROL_REG (23c5)
+                               HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
+                               HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+                               HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+109ce540:                      0000: 000423c5 04000042 017e423e 007e4200 007e4200 007e4200
+t0                     write SP_SP_CTRL_REG (22c0)
+                               SP_SP_CTRL_REG: { 0x140010 }
+109ce558:                      0000: 000022c0 00140010
+t0                     write SP_INSTR_CACHE_CTRL (22c1)
+                               SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+109ce560:                      0000: 000022c1 000005ff
+t0                     write SP_VS_LENGTH_REG (22e5)
+                               SP_VS_LENGTH_REG: 4
+109ce568:                      0000: 000022e5 00000004
+t0                     write SP_VS_CTRL_REG0 (22c4)
+                               SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 4 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+                               SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
+                               SP_VS_PARAM_REG: { POSREGID = r1.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
+109ce570:                      0000: 000222c4 00201000 04000042 0010fc06
+t0                     write SP_VS_OUT[0].REG (22c7)
+                               SP_VS_OUT[0].REG: { A_REGID = r2.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
+109ce580:                      0000: 000022c7 00001e0a
+t0                     write SP_VS_VPC_DST[0].REG (22d8)
+                               SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
+109ce588:                      0000: 000022d8 08080808
+t0                     write SP_VS_OBJ_OFFSET_REG (22e0)
+                               SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+                               SP_VS_OBJ_START: 0x10cd0000
+109ce590:                      0000: 000122e0 00000000 10cd0000
+t0                     write SP_FS_LENGTH_REG (22ef)
+                               SP_FS_LENGTH_REG: 1
+109ce59c:                      0000: 000022ef 00000001
+t0                     write SP_FS_CTRL_REG0 (22e8)
+                               SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+                               SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
+109ce5a4:                      0000: 000122e8 00340402 8010003e
+t0                     write SP_FS_OBJ_OFFSET_REG (22ea)
+                               SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+                               SP_FS_OBJ_START: 0x10cd2000
+109ce5b0:                      0000: 000122ea 7e420000 10cd2000
+t0                     write SP_HS_OBJ_OFFSET_REG (230d)
+                               SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109ce5bc:                      0000: 0000230d 7e420000
+t0                     write SP_DS_OBJ_OFFSET_REG (2334)
+                               SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109ce5c4:                      0000: 00002334 7e420000
+t0                     write SP_GS_OBJ_OFFSET_REG (235b)
+                               SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109ce5cc:                      0000: 0000235b 7e420000
+t0                     write GRAS_CNTL (2003)
+                               GRAS_CNTL: { 0 }
+109ce5d4:                      0000: 00002003 00000000
+t0                     write RB_RENDER_CONTROL2 (20a3)
+                               RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
+109ce5dc:                      0000: 000020a3 00000000
+t0                     write RB_FS_OUTPUT_REG (2100)
+                               RB_FS_OUTPUT_REG: { MRT = 1 }
+109ce5e4:                      0000: 00002100 00000001
+t0                     write SP_FS_OUTPUT_REG (22f0)
+                               SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+109ce5ec:                      0000: 000022f0 0000fc01
+t0                     write SP_FS_MRT[0].REG (22f1)
+                               SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+                               SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
+109ce5f4:                      0000: 000722f1 0001a000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0                     write VPC_ATTR (2140)
+                               VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
+                               VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
+109ce618:                      0000: 00012140 42001004 00040400
+t0                     write VPC_VARYING_INTERP[0].MODE (2142)
+                               VPC_VARYING_INTERP[0].MODE: 0x55
+                               VPC_VARYING_INTERP[0x1].MODE: 0
+                               VPC_VARYING_INTERP[0x2].MODE: 0
+                               VPC_VARYING_INTERP[0x3].MODE: 0
+                               VPC_VARYING_INTERP[0x4].MODE: 0
+                               VPC_VARYING_INTERP[0x5].MODE: 0
+                               VPC_VARYING_INTERP[0x6].MODE: 0
+                               VPC_VARYING_INTERP[0x7].MODE: 0
+109ce624:                      0000: 00072142 00000055 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0                     write VPC_VARYING_PS_REPL[0].MODE (214a)
+                               VPC_VARYING_PS_REPL[0].MODE: 0
+                               VPC_VARYING_PS_REPL[0x1].MODE: 0
+                               VPC_VARYING_PS_REPL[0x2].MODE: 0
+                               VPC_VARYING_PS_REPL[0x3].MODE: 0
+                               VPC_VARYING_PS_REPL[0x4].MODE: 0
+                               VPC_VARYING_PS_REPL[0x5].MODE: 0
+                               VPC_VARYING_PS_REPL[0x6].MODE: 0
+                               VPC_VARYING_PS_REPL[0x7].MODE: 0
+109ce648:                      0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (131 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 4 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :2:0000:0000[40700000x_10000002x] mul.f r0.x, r0.z, c0.x
+                               :2:0001:0001[40700001x_10030002x] mul.f r0.y, r0.z, c0.w
+                               :3:0002:0002[63818000x_00001004x] mad.f32 r0.x, c1.x, r0.w, r0.x
+                               :3:0003:0003[63818001x_00011007x] mad.f32 r0.y, c1.w, r0.w, r0.y
+                               :3:0004:0004[63820000x_00001008x] mad.f32 r0.x, c2.x, r1.x, r0.x
+                               :3:0005:0005[63820001x_0001100bx] mad.f32 r0.y, c2.w, r1.x, r0.y
+                               :3:0006:0006[63828006x_0000100cx] mad.f32 r1.z, c3.x, r1.y, r0.x
+                               :2:0007:0007[40700000x_10010002x] mul.f r0.x, r0.z, c0.y
+                               :3:0008:0008[63828009x_0001100fx] mad.f32 r2.y, c3.w, r1.y, r0.y
+                               :3:0009:0009[63818000x_00001005x] mad.f32 r0.x, c1.y, r0.w, r0.x
+                               :1:0010:0010[20244001x_00000010x] mov.f32f32 r0.y, c4.x
+                               :3:0011:0011[63820000x_00001009x] mad.f32 r0.x, c2.y, r1.x, r0.x
+                               :0:0012:0012[00000000x_00000000x] nop
+                               :3:0013:0013[63828007x_0000100dx] mad.f32 r1.w, c3.y, r1.y, r0.x
+                               :2:0014:0014[40700000x_10020002x] mul.f r0.x, r0.z, c0.z
+                               :1:0015:0015[20244002x_00000015x] mov.f32f32 r0.z, c5.y
+                               :3:0016:0016[63818000x_00001006x] mad.f32 r0.x, c1.z, r0.w, r0.x
+                               :1:0017:0017[20244003x_00000016x] mov.f32f32 r0.w, c5.z
+                               :3:0018:0018[63820000x_0000100ax] mad.f32 r0.x, c2.z, r1.x, r0.x
+                               :1:0019:0019[20244004x_00000017x] mov.f32f32 r1.x, c5.w
+                               :3:0020:0020[63828008x_0000100ex] mad.f32 r2.x, c3.z, r1.y, r0.x
+                               :1:0021:0021[20244000x_00000011x] mov.f32f32 r0.x, c4.y
+                               :2:0022:0022[40100002x_00021021x] add.f r0.z, c8.y, r0.z
+                               :2:0023:0023[4050040dx_00041017x] (sat)max.f r3.y, c5.w, r1.x
+                               :2:0024:0024[40100003x_00031022x] add.f r0.w, c8.z, r0.w
+                               :2:0025:0025[40700000x_00001011x] mul.f r0.x, c4.y, r0.x
+                               :0:0026:0026[00000000x_00000000x] nop
+                               :3:0027:0027[63808000x_00001010x] mad.f32 r0.x, c4.x, r0.y, r0.x
+                               :1:0028:0028[20244001x_00000012x] mov.f32f32 r0.y, c4.z
+                               :0:0029:0029[00000200x_00000000x] (rpt2)nop
+                               :3:0030:0032[63808000x_00001012x] mad.f32 r0.x, c4.z, r0.y, r0.x
+                               :1:0031:0033[20244001x_00000014x] mov.f32f32 r0.y, c5.x
+                               :0:0032:0034[00000200x_00000000x] (rpt2)nop
+                               :2:0033:0037[40100001x_00011020x] add.f r0.y, c8.x, r0.y
+                               :0:0034:0038[00000000x_00000000x] nop
+                               :4:0035:0039[80300000x_00000000x] rsq r0.x, r0.x
+                               :2:0036:0040[40701004x_00001011x] (ss)mul.f r1.x, c4.y, r0.x
+                               :0:0037:0041[00000200x_00000000x] (rpt2)nop
+                               :2:0038:0044[40700004x_10190004x] mul.f r1.x, r1.x, c6.y
+                               :2:0039:0045[40700005x_00001010x] mul.f r1.y, c4.x, r0.x
+                               :0:0040:0046[00000200x_00000000x] (rpt2)nop
+                               :3:0041:0049[63828004x_00041018x] mad.f32 r1.x, c6.x, r1.y, r1.x
+                               :2:0042:0050[40700000x_00001012x] mul.f r0.x, c4.z, r0.x
+                               :0:0043:0051[00000200x_00000000x] (rpt2)nop
+                               :3:0044:0054[63800000x_0004101ax] mad.f32 r0.x, c6.z, r0.x, r1.x
+                               :0:0045:0055[00000200x_00000000x] (rpt2)nop
+                               :2:0046:0058[40b00004x_00001034x] cmps.f.lt r1.x, c13.x, r0.x
+                               :2:0047:0059[40500000x_00001034x] max.f r0.x, c13.x, r0.x
+                               :0:0048:0060[00000100x_00000000x] (rpt1)nop
+                               :1:0049:0062[200c4004x_00000004x] cov.u32f32 r1.x, r1.x
+                               :3:0050:0063[63800001x_00011024x] mad.f32 r0.y, c9.x, r0.x, r0.y
+                               :3:0051:0064[63800002x_00021025x] mad.f32 r0.z, c9.y, r0.x, r0.z
+                               :3:0052:0065[63800000x_00031026x] mad.f32 r0.x, c9.z, r0.x, r0.w
+                               :3:0053:0066[6382040ax_00011028x] (sat)mad.f32 r2.z, c10.x, r1.x, r0.y
+                               :3:0054:0067[6382040bx_00021029x] (sat)mad.f32 r2.w, c10.y, r1.x, r0.z
+                               :3:0055:0068[6382040cx_0000102ax] (sat)mad.f32 r3.x, c10.z, r1.x, r0.x
+                               :0:0056:0069[03000000x_00000000x] end
+                               :0:0057:0070[00000000x_00000000x] nop
+                               :0:0058:0071[00000000x_00000000x] nop
+                               :0:0059:0072[00000000x_00000000x] nop
+                               :0:0060:0073[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): 0-13 (cnt=14, max=13)
+                               - used (merged): 0-27 (cnt=28, max=27)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): 2-5 (cnt=4, max=5)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): 0-18 20-26 32-34 36-38 40-42 52 (cnt=36, max=52)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): 6-13 (cnt=8, max=13)  (estimated)
+                               - shaderdb: 74 instructions, 38 nops, 36 non-nops, (61 instlen), 0 half, 4 full
+                               - shaderdb: 1 (ss), 0 (sy)
+109ce66c:                      0000: c0813000 01200000 00000000 10000002 40700000 10030002 40700001 00001004
+109ce68c:                      0020: 63818000 00011007 63818001 00001008 63820000 0001100b 63820001 0000100c
+109ce6ac:                      0040: 63828006 10010002 40700000 0001100f 63828009 00001005 63818000 00000010
+109ce6cc:                      0060: 20244001 00001009 63820000 00000000 00000000 0000100d 63828007 10020002
+109ce6ec:                      0080: 40700000 00000015 20244002 00001006 63818000 00000016 20244003 0000100a
+109ce70c:                      00a0: 63820000 00000017 20244004 0000100e 63828008 00000011 20244000 00021021
+109ce72c:                      00c0: 40100002 00041017 4050040d 00031022 40100003 00001011 40700000 00000000
+109ce74c:                      00e0: 00000000 00001010 63808000 00000012 20244001 00000000 00000200 00001012
+109ce76c:                      0100: 63808000 00000014 20244001 00000000 00000200 00011020 40100001 00000000
+109ce78c:                      0120: 00000000 00000000 80300000 00001011 40701004 00000000 00000200 10190004
+109ce7ac:                      0140: 40700004 00001010 40700005 00000000 00000200 00041018 63828004 00001012
+109ce7cc:                      0160: 40700000 00000000 00000200 0004101a 63800000 00000000 00000200 00001034
+109ce7ec:                      0180: 40b00004 00001034 40500000 00000000 00000100 00000004 200c4004 00011024
+109ce80c:                      01a0: 63800001 00021025 63800002 00031026 63800000 00011028 6382040a 00021029
+109ce82c:                      01c0: 6382040b 0000102a 6382040c 00000000 03000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (35 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :0:0000:0000[00000000x_00000000x] nop
+                               :6:0001:0001[c7c60000x_01c00000x] ldlv.u32 r0.x, l[0], 1
+                               :6:0002:0002[c7c60001x_01c00002x] ldlv.u32 r0.y, l[1], 1
+                               :6:0003:0003[c7c60002x_01c00004x] ldlv.u32 r0.z, l[2], 1
+                               :6:0004:0004[c7c60003x_01c00006x] ldlv.u32 r0.w, l[3], 1
+                               :2:0005:0005[473090fcx_00002000x] (ss)bary.f (ei)r63.x, 0, r0.x
+                               :0:0006:0006[03000000x_00000000x] end
+                               :0:0007:0007[00000000x_00000000x] nop
+                               :0:0008:0008[00000000x_00000000x] nop
+                               :0:0009:0009[00000000x_00000000x] nop
+                               :0:0010:0010[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): 0-3 252 (cnt=5, max=3)
+                               - used (merged): 0-7 504-505 (cnt=10, max=7)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): 0-3 (cnt=4, max=3)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): (cnt=0, max=0)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): 252 (cnt=1, max=0)  (estimated)
+                               - shaderdb: 11 instructions, 5 nops, 6 non-nops, (11 instlen), 0 half, 1 full
+                               - shaderdb: 1 (ss), 0 (sy)
+109ce878:                      0000: c0213000 00700000 00000000 00000000 00000000 01c00000 c7c60000 01c00002
+109ce898:                      0020: c7c60001 01c00004 c7c60002 01c00006 c7c60003 00002000 473090fc 00000000
+109ce8b8:                      0040: 03000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (51 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
+                               { STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
+109ce910:                              4.330127 0.855050 0.555273 0.469846 0.000000 4.698463 -0.404206 -0.342020
+109ce930:                              2.500000 -1.480991 -0.961761 -0.813798 -12.990380 -11.962078 35.506226 39.274502
+109ce950:                              0.000000 0.000000 1.000000 1.000000 0.160000 0.020000 0.000000 1.000000
+109ce970:                              0.039740 0.662886 0.747665 0.000000 1.000000 0.000000 0.000000 0.000000
+109ce990:                              0.000000 0.000000 0.000000 1.000000 0.800000 0.100000 0.000000 1.000000
+109ce9b0:                              0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000
+109ce910:                              0000: 408a9066 3f5ae494 3f0e265d 3ef08fb2 00000000 409659cf becef409 beaf1d43
+109ce930:                              0020: 40200000 bfbd9119 bf7635f5 bf50550b c14fd899 c13f64ac 420e0660 421d1917
+109ce950:                              0040: 00000000 00000000 3f800000 3f800000 3e23d70b 3ca3d70b 00000000 3f800000
+109ce970:                              0060: 3d22c66e 3f29b2e7 3f3f66f5 00000000 3f800000 00000000 00000000 00000000
+109ce990:                              0080: 00000000 00000000 00000000 3f800000 3f4ccccd 3dcccccd 00000000 3f800000
+109ce9b0:                              00a0: 00000000 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000
+109ce904:                      0000: c0313000 03200000 00000001 408a9066 3f5ae494 3f0e265d 3ef08fb2 00000000
+109ce924:                      0020: 409659cf becef409 beaf1d43 40200000 bfbd9119 bf7635f5 bf50550b c14fd899
+109ce944:                      0040: c13f64ac 420e0660 421d1917 00000000 00000000 3f800000 3f800000 3e23d70b
+109ce964:                      0060: 3ca3d70b 00000000 3f800000 3d22c66e 3f29b2e7 3f3f66f5 00000000 3f800000
+109ce984:                      0080: 00000000 00000000 00000000 00000000 00000000 00000000 3f800000 3f4ccccd
+109ce9a4:                      00a0: 3dcccccd 00000000 3f800000 00000000 00000000 00000000 3f800000 00000000
+109ce9c4:                      00c0: 00000000 00000000 3f800000
+t3                     opcode: CP_LOAD_STATE4 (30) (7 dwords)
+                               { DST_OFF = 13 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 1 }
+                               { STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
+109ce9dc:                              0.000000 -28026765312.000000 -28026765312.000000 -28026765312.000000
+109ce9dc:                              0000: 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
+109ce9d0:                      0000: c0053000 0060000d 00000001 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
+t0                     write RB_MRT[0].CONTROL (20a4)
+                               RB_MRT[0].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
+109ce9ec:                      0000: 000020a4 0f000c00
+t0                     write RB_MRT[0].BLEND_CONTROL (20a8)
+                               RB_MRT[0].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+109ce9f4:                      0000: 000020a8 00000000
+t0                     write RB_MRT[0x1].CONTROL (20a9)
+                               RB_MRT[0x1].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
+109ce9fc:                      0000: 000020a9 0f000c00
+t0                     write RB_MRT[0x1].BLEND_CONTROL (20ad)
+                               RB_MRT[0x1].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+109cea04:                      0000: 000020ad 00000000
+t0                     write RB_MRT[0x2].CONTROL (20ae)
+                               RB_MRT[0x2].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
+109cea0c:                      0000: 000020ae 0f000c00
+t0                     write RB_MRT[0x2].BLEND_CONTROL (20b2)
+                               RB_MRT[0x2].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+109cea14:                      0000: 000020b2 00000000
+t0                     write RB_MRT[0x3].CONTROL (20b3)
+                               RB_MRT[0x3].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
+109cea1c:                      0000: 000020b3 0f000c00
+t0                     write RB_MRT[0x3].BLEND_CONTROL (20b7)
+                               RB_MRT[0x3].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+109cea24:                      0000: 000020b7 00000000
+t0                     write RB_MRT[0x4].CONTROL (20b8)
+                               RB_MRT[0x4].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
+109cea2c:                      0000: 000020b8 0f000c00
+t0                     write RB_MRT[0x4].BLEND_CONTROL (20bc)
+                               RB_MRT[0x4].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+109cea34:                      0000: 000020bc 00000000
+t0                     write RB_MRT[0x5].CONTROL (20bd)
+                               RB_MRT[0x5].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
+109cea3c:                      0000: 000020bd 0f000c00
+t0                     write RB_MRT[0x5].BLEND_CONTROL (20c1)
+                               RB_MRT[0x5].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+109cea44:                      0000: 000020c1 00000000
+t0                     write RB_MRT[0x6].CONTROL (20c2)
+                               RB_MRT[0x6].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
+109cea4c:                      0000: 000020c2 0f000c00
+t0                     write RB_MRT[0x6].BLEND_CONTROL (20c6)
+                               RB_MRT[0x6].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+109cea54:                      0000: 000020c6 00000000
+t0                     write RB_MRT[0x7].CONTROL (20c7)
+                               RB_MRT[0x7].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
+109cea5c:                      0000: 000020c7 0f000c00
+t0                     write RB_MRT[0x7].BLEND_CONTROL (20cb)
+                               RB_MRT[0x7].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+109cea64:                      0000: 000020cb 00000000
+t0                     write RB_FS_OUTPUT (20f9)
+                               RB_FS_OUTPUT: { ENABLE_BLEND = 0 | SAMPLE_MASK = 0xffff }
+109cea6c:                      0000: 000020f9 ffff0000
+t0                     write VFD_FETCH[0].INSTR_0 (220a)
+                               VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
+                               VFD_FETCH[0].INSTR_1: 0x107cb000
+                               VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
+                               VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
+109cea74:                      0000: 0003220a 0000060b 107cb000 00100000 00000001
+t0                     write VFD_DECODE[0].INSTR (228a)
+                               VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
+109cea88:                      0000: 0000228a 2c0020df
+t0                     write VFD_CONTROL_0 (2200)
+                               VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
+                               VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
+                               VFD_CONTROL_2: 0
+                               VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
+                               VFD_CONTROL_4: 0
+109cea90:                      0000: 00042200 041a0004 fcfc0081 00000000 0000fc00 00000000
+t0                     write UCHE_INVALIDATE0 (0e8a)
+                               UCHE_INVALIDATE0: 0
+                               UCHE_INVALIDATE1: 0x12
+109ceaa8:                      0000: 00010e8a 00000000 00000012
+t0                     write VFD_INDEX_OFFSET (2208)
+                               VFD_INDEX_OFFSET: 0
+                               UNKNOWN_2209: 0
+109ceab4:                      0000: 00012208 00000000 00000000
+t0                     write PC_RESTART_INDEX (21c6)
+                               PC_RESTART_INDEX: 0xffffffff
+109ceac0:                      0000: 000021c6 ffffffff
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x8
+                               :0,7,115,8
+109ceac8:                      0000: 0000057f 00000008
+t3                     opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
+                               { PRIM_TYPE = DI_PT_TRILIST | SOURCE_SELECT = DI_SRC_SEL_DMA | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_16_BIT | PATCH_TYPE = TESS_QUADS }
+                               { NUM_INSTANCES = 1 }
+                               { NUM_INDICES = 240 }
+                               { FIRST_INDX = 0 }
+                               { INDX_BASE = 0x10bd0000 }
+                               { INDX_SIZE = 480 }
+                       draw[1] register values
+!+     00000007                        CP_SCRATCH[0x5].REG: 0x7
+                       :0,7,115,8
+!+     00000008                        CP_SCRATCH[0x7].REG: 0x8
+                       :0,7,115,8
+ +     00000000                        UCHE_INVALIDATE0: 0
+ +     00000012                        UCHE_INVALIDATE1: 0x12
+ +     00080000                        GRAS_CL_CLIP_CNTL: { 0x80000 }
+ +     00000000                        GRAS_CNTL: { 0 }
+ +     43160000                        GRAS_CL_VPORT_XOFFSET_0: 150.000000
+ +     43160000                        GRAS_CL_VPORT_XSCALE_0: 150.000000
+ +     43160000                        GRAS_CL_VPORT_YOFFSET_0: 150.000000
+ +     c3160000                        GRAS_CL_VPORT_YSCALE_0: -150.000000
+!+     3f000000                        GRAS_CL_VPORT_ZOFFSET_0: 0.500000
+!+     3f000000                        GRAS_CL_VPORT_ZSCALE_0: 0.500000
+!+     00100010                        GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
+!+     00000010                        GRAS_SU_POINT_SIZE: 1.000000
+ +     00000000                        GRAS_ALPHA_CONTROL: { 0 }
+ +     00000000                        GRAS_SU_POLY_OFFSET_SCALE: 0.000000
+ +     00000000                        GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
+ +     00000000                        GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
+!+     00100012                        GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
+ +     012b012b                        GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
+ +     00000000                        GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
+ +     00000000                        RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
+ +     0f000c00                        RB_MRT[0].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
+ +     00000000                        RB_MRT[0].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+!+     0f000c00                        RB_MRT[0x1].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
+ +     00000000                        RB_MRT[0x1].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+!+     0f000c00                        RB_MRT[0x2].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
+ +     00000000                        RB_MRT[0x2].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+!+     0f000c00                        RB_MRT[0x3].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
+ +     00000000                        RB_MRT[0x3].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+!+     0f000c00                        RB_MRT[0x4].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
+ +     00000000                        RB_MRT[0x4].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+!+     0f000c00                        RB_MRT[0x5].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
+ +     00000000                        RB_MRT[0x5].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+!+     0f000c00                        RB_MRT[0x6].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
+ +     00000000                        RB_MRT[0x6].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+!+     0f000c00                        RB_MRT[0x7].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
+ +     00000000                        RB_MRT[0x7].BLEND_CONTROL: { RGB_SRC_FACTOR = FACTOR_ZERO | RGB_BLEND_OPCODE = BLEND_DST_PLUS_SRC | RGB_DEST_FACTOR = FACTOR_ZERO | ALPHA_SRC_FACTOR = FACTOR_ZERO | ALPHA_BLEND_OPCODE = BLEND_DST_PLUS_SRC | ALPHA_DEST_FACTOR = FACTOR_ZERO }
+ +     00000000                        RB_ALPHA_CONTROL: { ALPHA_REF = 0 | ALPHA_TEST_FUNC = FUNC_NEVER }
+!+     ffff0000                        RB_FS_OUTPUT: { ENABLE_BLEND = 0 | SAMPLE_MASK = 0xffff }
+ +     00000001                        RB_FS_OUTPUT_REG: { MRT = 1 }
+!+     80000016                        RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_TEST_ENABLE }
+ +     00000000                        RB_STENCIL_CONTROL: { FUNC = FUNC_NEVER | FAIL = STENCIL_KEEP | ZPASS = STENCIL_KEEP | ZFAIL = STENCIL_KEEP | FUNC_BF = FUNC_NEVER | FAIL_BF = STENCIL_KEEP | ZPASS_BF = STENCIL_KEEP | ZFAIL_BF = STENCIL_KEEP }
+ +     00000000                        RB_STENCIL_CONTROL2: { 0 }
+ +     00000000                        RB_STENCILREFMASK: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0 }
+ +     00000000                        RB_STENCILREFMASK_BF: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0 }
+ +     00000000                        RB_VPORT_Z_CLAMP[0].MIN: 0
+ +     00ffffff                        RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
+!+     42001004                        VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
+!+     00040400                        VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
+!+     00000055                        VPC_VARYING_INTERP[0].MODE: 0x55
+ +     00000000                        VPC_VARYING_INTERP[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x7].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x7].MODE: 0
+!+     02000001                        PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+ +     00000012                        PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+ +     ffffffff                        PC_RESTART_INDEX: 0xffffffff
+ +     041a0004                        VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
+ +     fcfc0081                        VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
+ +     00000000                        VFD_CONTROL_2: 0
+ +     0000fc00                        VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
+ +     00000000                        VFD_CONTROL_4: 0
+ +     00000000                        VFD_INDEX_OFFSET: 0
+ +     00000000                        UNKNOWN_2209: 0
+ +     0000060b                        VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
+!+     107cb000                        VFD_FETCH[0].INSTR_1: 0x107cb000
+!+     00100000                        VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
+ +     00000001                        VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
+!+     2c0020df                        VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
+ +     00140010                        SP_SP_CTRL_REG: { 0x140010 }
+ +     000005ff                        SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+!+     00201000                        SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 4 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+ +     04000042                        SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
+!+     0010fc06                        SP_VS_PARAM_REG: { POSREGID = r1.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
+!+     00001e0a                        SP_VS_OUT[0].REG: { A_REGID = r2.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
+!+     08080808                        SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
+ +     00000000                        SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+!+     10cd0000                        SP_VS_OBJ_START: 0x10cd0000
+!+     00000004                        SP_VS_LENGTH_REG: 4
+!+     00340402                        SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+!+     8010003e                        SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
+ +     7e420000                        SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+!+     10cd2000                        SP_FS_OBJ_START: 0x10cd2000
+ +     00000001                        SP_FS_LENGTH_REG: 1
+ +     0000fc01                        SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+ +     0001a000                        SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+ +     00000000                        SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     7e420000                        SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                        SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                        SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     28000250                        HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+ +     fcfc0100                        HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+ +     fff3f3f0                        HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+ +     fcfcfcfc                        HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+ +     00fcfcfc                        HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+!+     04000042                        HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
+ +     017e423e                        HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+ +     007e4200                        HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                        HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                        HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     00000003                        HLSQ_UPDATE_CONTROL: 0x3
+109cead0:                      0000: c0053800 00000404 00000001 000000f0 00000000 10bd0000 000001e0
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x9
+                               :0,7,115,9
+109ceaec:                      0000: 0000057f 00000009
+t0                     write CP_SCRATCH[0x5].REG (057d)
+                               CP_SCRATCH[0x5].REG: 0xd
+                               :0,13,115,9
+109ceaf4:                      0000: 0000057d 0000000d
+t0                     write PC_PRIM_VTX_CNTL (21c4)
+                               PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+                               PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+109ceafc:                      0000: 000121c4 02000001 00000012
+t0                     write VFD_INDEX_OFFSET (2208)
+                               VFD_INDEX_OFFSET: 0
+                               UNKNOWN_2209: 0
+109ceb08:                      0000: 00012208 00000000 00000000
+t0                     write PC_RESTART_INDEX (21c6)
+                               PC_RESTART_INDEX: 0xffffffff
+109ceb14:                      0000: 000021c6 ffffffff
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0xe
+                               :0,13,115,14
+109ceb1c:                      0000: 0000057f 0000000e
+t3                     opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
+                               { PRIM_TYPE = DI_PT_TRILIST | SOURCE_SELECT = DI_SRC_SEL_DMA | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_16_BIT | PATCH_TYPE = TESS_QUADS }
+                               { NUM_INSTANCES = 1 }
+                               { NUM_INDICES = 120 }
+                               { FIRST_INDX = 0 }
+                               { INDX_BASE = 0x10bd01e0 }
+                               { INDX_SIZE = 240 }
+                       draw[2] register values
+!+     0000000d                        CP_SCRATCH[0x5].REG: 0xd
+                       :0,13,115,14
+!+     0000000e                        CP_SCRATCH[0x7].REG: 0xe
+                       :0,13,115,14
+ +     02000001                        PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+ +     00000012                        PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+ +     ffffffff                        PC_RESTART_INDEX: 0xffffffff
+ +     00000000                        VFD_INDEX_OFFSET: 0
+ +     00000000                        UNKNOWN_2209: 0
+109ceb24:                      0000: c0053800 00000404 00000001 00000078 00000000 10bd01e0 000000f0
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0xf
+                               :0,13,115,15
+109ceb40:                      0000: 0000057f 0000000f
+t0                     write CP_SCRATCH[0x5].REG (057d)
+                               CP_SCRATCH[0x5].REG: 0x13
+                               :0,19,115,15
+109ceb48:                      0000: 0000057d 00000013
+t0                     write PC_PRIM_VTX_CNTL (21c4)
+                               PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+                               PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+109ceb50:                      0000: 000121c4 02000001 00000012
+t3                     opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
+109ceb5c:                      0000: c0002600 00000000
+t3                     opcode: CP_LOAD_STATE4 (30) (51 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
+                               { STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
+109ceb70:                              4.330127 0.855050 0.555273 0.469846 0.000000 4.698463 -0.404206 -0.342020
+109ceb90:                              2.500000 -1.480991 -0.961761 -0.813798 -12.990380 -11.962078 35.506226 39.274502
+109cebb0:                              0.000000 0.000000 -1.000000 1.000000 0.160000 0.020000 0.000000 1.000000
+109cebd0:                              0.039740 0.662886 0.747665 0.000000 1.000000 0.000000 0.000000 0.000000
+109cebf0:                              0.000000 0.000000 0.000000 1.000000 0.800000 0.100000 0.000000 1.000000
+109cec10:                              0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000
+109ceb70:                              0000: 408a9066 3f5ae494 3f0e265d 3ef08fb2 00000000 409659cf becef409 beaf1d43
+109ceb90:                              0020: 40200000 bfbd9119 bf7635f5 bf50550b c14fd899 c13f64ac 420e0660 421d1917
+109cebb0:                              0040: 00000000 00000000 bf800000 3f800000 3e23d70b 3ca3d70b 00000000 3f800000
+109cebd0:                              0060: 3d22c66e 3f29b2e7 3f3f66f5 00000000 3f800000 00000000 00000000 00000000
+109cebf0:                              0080: 00000000 00000000 00000000 3f800000 3f4ccccd 3dcccccd 00000000 3f800000
+109cec10:                              00a0: 00000000 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000
+109ceb64:                      0000: c0313000 03200000 00000001 408a9066 3f5ae494 3f0e265d 3ef08fb2 00000000
+109ceb84:                      0020: 409659cf becef409 beaf1d43 40200000 bfbd9119 bf7635f5 bf50550b c14fd899
+109ceba4:                      0040: c13f64ac 420e0660 421d1917 00000000 00000000 bf800000 3f800000 3e23d70b
+109cebc4:                      0060: 3ca3d70b 00000000 3f800000 3d22c66e 3f29b2e7 3f3f66f5 00000000 3f800000
+109cebe4:                      0080: 00000000 00000000 00000000 00000000 00000000 00000000 3f800000 3f4ccccd
+109cec04:                      00a0: 3dcccccd 00000000 3f800000 00000000 00000000 00000000 3f800000 00000000
+109cec24:                      00c0: 00000000 00000000 3f800000
+t0                     write VFD_INDEX_OFFSET (2208)
+                               VFD_INDEX_OFFSET: 0
+                               UNKNOWN_2209: 0
+109cec30:                      0000: 00012208 00000000 00000000
+t0                     write PC_RESTART_INDEX (21c6)
+                               PC_RESTART_INDEX: 0xffffffff
+109cec3c:                      0000: 000021c6 ffffffff
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x14
+                               :0,19,115,20
+109cec44:                      0000: 0000057f 00000014
+t3                     opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
+                               { PRIM_TYPE = DI_PT_TRILIST | SOURCE_SELECT = DI_SRC_SEL_DMA | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_16_BIT | PATCH_TYPE = TESS_QUADS }
+                               { NUM_INSTANCES = 1 }
+                               { NUM_INDICES = 240 }
+                               { FIRST_INDX = 0 }
+                               { INDX_BASE = 0x10bd02d0 }
+                               { INDX_SIZE = 480 }
+                       draw[3] register values
+!+     00000013                        CP_SCRATCH[0x5].REG: 0x13
+                       :0,19,115,20
+!+     00000014                        CP_SCRATCH[0x7].REG: 0x14
+                       :0,19,115,20
+ +     02000001                        PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+ +     00000012                        PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+ +     ffffffff                        PC_RESTART_INDEX: 0xffffffff
+ +     00000000                        VFD_INDEX_OFFSET: 0
+ +     00000000                        UNKNOWN_2209: 0
+109cec4c:                      0000: c0053800 00000404 00000001 000000f0 00000000 10bd02d0 000001e0
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x15
+                               :0,19,115,21
+109cec68:                      0000: 0000057f 00000015
+t0                     write CP_SCRATCH[0x5].REG (057d)
+                               CP_SCRATCH[0x5].REG: 0x19
+                               :0,25,115,21
+109cec70:                      0000: 0000057d 00000019
+t0                     write PC_PRIM_VTX_CNTL (21c4)
+                               PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+                               PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+109cec78:                      0000: 000121c4 02000001 00000012
+t0                     write VFD_INDEX_OFFSET (2208)
+                               VFD_INDEX_OFFSET: 0
+                               UNKNOWN_2209: 0
+109cec84:                      0000: 00012208 00000000 00000000
+t0                     write PC_RESTART_INDEX (21c6)
+                               PC_RESTART_INDEX: 0xffffffff
+109cec90:                      0000: 000021c6 ffffffff
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x1a
+                               :0,25,115,26
+109cec98:                      0000: 0000057f 0000001a
+t3                     opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
+                               { PRIM_TYPE = DI_PT_TRILIST | SOURCE_SELECT = DI_SRC_SEL_DMA | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_16_BIT | PATCH_TYPE = TESS_QUADS }
+                               { NUM_INSTANCES = 1 }
+                               { NUM_INDICES = 120 }
+                               { FIRST_INDX = 0 }
+                               { INDX_BASE = 0x10bd04b0 }
+                               { INDX_SIZE = 240 }
+                       draw[4] register values
+!+     00000019                        CP_SCRATCH[0x5].REG: 0x19
+                       :0,25,115,26
+!+     0000001a                        CP_SCRATCH[0x7].REG: 0x1a
+                       :0,25,115,26
+ +     02000001                        PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+ +     00000012                        PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+ +     ffffffff                        PC_RESTART_INDEX: 0xffffffff
+ +     00000000                        VFD_INDEX_OFFSET: 0
+ +     00000000                        UNKNOWN_2209: 0
+109ceca0:                      0000: c0053800 00000404 00000001 00000078 00000000 10bd04b0 000000f0
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x1b
+                               :0,25,115,27
+109cecbc:                      0000: 0000057f 0000001b
+t0                     write CP_SCRATCH[0x5].REG (057d)
+                               CP_SCRATCH[0x5].REG: 0x1f
+                               :0,31,115,27
+109cecc4:                      0000: 0000057d 0000001f
+t0                     write RB_DEPTH_CONTROL (2101)
+                               RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_TEST_ENABLE }
+109ceccc:                      0000: 00002101 80000016
+t0                     write GRAS_ALPHA_CONTROL (2073)
+                               GRAS_ALPHA_CONTROL: { 0 }
+109cecd4:                      0000: 00002073 00000000
+t0                     write PC_PRIM_VTX_CNTL (21c4)
+                               PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+                               PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+109cecdc:                      0000: 000121c4 02000001 00000012
+t0                     write HLSQ_UPDATE_CONTROL (23db)
+                               HLSQ_UPDATE_CONTROL: 0x3
+109cece8:                      0000: 000023db 00000003
+t0                     write HLSQ_CONTROL_0_REG (23c0)
+                               HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+                               HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+                               HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+                               HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+                               HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+109cecf0:                      0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfcfc 00fcfcfc
+t0                     write HLSQ_VS_CONTROL_REG (23c5)
+                               HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
+                               HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+                               HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+109ced08:                      0000: 000423c5 04000042 017e423e 007e4200 007e4200 007e4200
+t0                     write SP_SP_CTRL_REG (22c0)
+                               SP_SP_CTRL_REG: { 0x140010 }
+109ced20:                      0000: 000022c0 00140010
+t0                     write SP_INSTR_CACHE_CTRL (22c1)
+                               SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+109ced28:                      0000: 000022c1 000005ff
+t0                     write SP_VS_LENGTH_REG (22e5)
+                               SP_VS_LENGTH_REG: 4
+109ced30:                      0000: 000022e5 00000004
+t0                     write SP_VS_CTRL_REG0 (22c4)
+                               SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+                               SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
+                               SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
+109ced38:                      0000: 000222c4 00201400 08000042 0010fc0a
+t0                     write SP_VS_OUT[0].REG (22c7)
+                               SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
+109ced48:                      0000: 000022c7 00001e0e
+t0                     write SP_VS_VPC_DST[0].REG (22d8)
+                               SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
+109ced50:                      0000: 000022d8 08080808
+t0                     write SP_VS_OBJ_OFFSET_REG (22e0)
+                               SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+                               SP_VS_OBJ_START: 0x10cd5000
+109ced58:                      0000: 000122e0 00000000 10cd5000
+t0                     write SP_FS_LENGTH_REG (22ef)
+                               SP_FS_LENGTH_REG: 1
+109ced64:                      0000: 000022ef 00000001
+t0                     write SP_FS_CTRL_REG0 (22e8)
+                               SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+                               SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
+109ced6c:                      0000: 000122e8 00340402 8010003e
+t0                     write SP_FS_OBJ_OFFSET_REG (22ea)
+                               SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+                               SP_FS_OBJ_START: 0x10cd2000
+109ced78:                      0000: 000122ea 7e420000 10cd2000
+t0                     write SP_HS_OBJ_OFFSET_REG (230d)
+                               SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109ced84:                      0000: 0000230d 7e420000
+t0                     write SP_DS_OBJ_OFFSET_REG (2334)
+                               SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109ced8c:                      0000: 00002334 7e420000
+t0                     write SP_GS_OBJ_OFFSET_REG (235b)
+                               SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109ced94:                      0000: 0000235b 7e420000
+t0                     write GRAS_CNTL (2003)
+                               GRAS_CNTL: { 0 }
+109ced9c:                      0000: 00002003 00000000
+t0                     write RB_RENDER_CONTROL2 (20a3)
+                               RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
+109ceda4:                      0000: 000020a3 00000000
+t0                     write RB_FS_OUTPUT_REG (2100)
+                               RB_FS_OUTPUT_REG: { MRT = 1 }
+109cedac:                      0000: 00002100 00000001
+t0                     write SP_FS_OUTPUT_REG (22f0)
+                               SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+109cedb4:                      0000: 000022f0 0000fc01
+t0                     write SP_FS_MRT[0].REG (22f1)
+                               SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+                               SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
+109cedbc:                      0000: 000722f1 0001a000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0                     write VPC_ATTR (2140)
+                               VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
+                               VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
+109cede0:                      0000: 00012140 42001004 00040400
+t0                     write VPC_VARYING_INTERP[0].MODE (2142)
+                               VPC_VARYING_INTERP[0].MODE: 0x55
+                               VPC_VARYING_INTERP[0x1].MODE: 0
+                               VPC_VARYING_INTERP[0x2].MODE: 0
+                               VPC_VARYING_INTERP[0x3].MODE: 0
+                               VPC_VARYING_INTERP[0x4].MODE: 0
+                               VPC_VARYING_INTERP[0x5].MODE: 0
+                               VPC_VARYING_INTERP[0x6].MODE: 0
+                               VPC_VARYING_INTERP[0x7].MODE: 0
+109cedec:                      0000: 00072142 00000055 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0                     write VPC_VARYING_PS_REPL[0].MODE (214a)
+                               VPC_VARYING_PS_REPL[0].MODE: 0
+                               VPC_VARYING_PS_REPL[0x1].MODE: 0
+                               VPC_VARYING_PS_REPL[0x2].MODE: 0
+                               VPC_VARYING_PS_REPL[0x3].MODE: 0
+                               VPC_VARYING_PS_REPL[0x4].MODE: 0
+                               VPC_VARYING_PS_REPL[0x5].MODE: 0
+                               VPC_VARYING_PS_REPL[0x6].MODE: 0
+                               VPC_VARYING_PS_REPL[0x7].MODE: 0
+109cee10:                      0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (131 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 4 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :2:0000:0000[40700000x_10000002x] mul.f r0.x, r0.z, c0.x
+                               :2:0001:0001[40700001x_10030002x] mul.f r0.y, r0.z, c0.w
+                               :3:0002:0002[63818000x_00001004x] mad.f32 r0.x, c1.x, r0.w, r0.x
+                               :3:0003:0003[63818001x_00011007x] mad.f32 r0.y, c1.w, r0.w, r0.y
+                               :3:0004:0004[63820000x_00001008x] mad.f32 r0.x, c2.x, r1.x, r0.x
+                               :3:0005:0005[63820001x_0001100bx] mad.f32 r0.y, c2.w, r1.x, r0.y
+                               :3:0006:0006[6382800ax_0000100cx] mad.f32 r2.z, c3.x, r1.y, r0.x
+                               :2:0007:0007[40700000x_10010002x] mul.f r0.x, r0.z, c0.y
+                               :3:0008:0008[6382800dx_0001100fx] mad.f32 r3.y, c3.w, r1.y, r0.y
+                               :3:0009:0009[63818000x_00001005x] mad.f32 r0.x, c1.y, r0.w, r0.x
+                               :1:0010:0010[20244001x_00000010x] mov.f32f32 r0.y, c4.x
+                               :3:0011:0011[63820000x_00001009x] mad.f32 r0.x, c2.y, r1.x, r0.x
+                               :0:0012:0012[00000000x_00000000x] nop
+                               :3:0013:0013[6382800bx_0000100dx] mad.f32 r2.w, c3.y, r1.y, r0.x
+                               :2:0014:0014[40700000x_10020002x] mul.f r0.x, r0.z, c0.z
+                               :2:0015:0015[40100001x_0001101cx] add.f r0.y, c7.x, r0.y
+                               :3:0016:0016[63818000x_00001006x] mad.f32 r0.x, c1.z, r0.w, r0.x
+                               :1:0017:0017[20244002x_00000011x] mov.f32f32 r0.z, c4.y
+                               :3:0018:0018[63820000x_0000100ax] mad.f32 r0.x, c2.z, r1.x, r0.x
+                               :1:0019:0019[20244004x_00000013x] mov.f32f32 r1.x, c4.w
+                               :3:0020:0020[6382800cx_0000100ex] mad.f32 r3.x, c3.z, r1.y, r0.x
+                               :2:0021:0021[40700000x_00070007x] mul.f r0.x, r1.w, r1.w
+                               :2:0022:0022[40100002x_0002101dx] add.f r0.z, c7.y, r0.z
+                               :3:0023:0023[63830000x_00000006x] mad.f32 r0.x, r1.z, r1.z, r0.x
+                               :2:0024:0024[40500411x_00041013x] (sat)max.f r4.y, c4.w, r1.x
+                               :3:0025:0025[63840000x_00000008x] mad.f32 r0.x, r2.x, r2.x, r0.x
+                               :1:0026:0026[20244003x_00000012x] mov.f32f32 r0.w, c4.z
+                               :0:0027:0027[00000200x_00000000x] (rpt2)nop
+                               :2:0028:0030[40100003x_0003101ex] add.f r0.w, c7.z, r0.w
+                               :0:0029:0031[00000000x_00000000x] nop
+                               :4:0030:0032[80300000x_00000000x] rsq r0.x, r0.x
+                               :2:0031:0033[40701004x_00000007x] (ss)mul.f r1.x, r1.w, r0.x
+                               :0:0032:0034[00000200x_00000000x] (rpt2)nop
+                               :2:0033:0037[40700004x_10150004x] mul.f r1.x, r1.x, c5.y
+                               :2:0034:0038[40700005x_00000006x] mul.f r1.y, r1.z, r0.x
+                               :0:0035:0039[00000200x_00000000x] (rpt2)nop
+                               :3:0036:0042[63828004x_00041014x] mad.f32 r1.x, c5.x, r1.y, r1.x
+                               :2:0037:0043[40700000x_00000008x] mul.f r0.x, r2.x, r0.x
+                               :0:0038:0044[00000200x_00000000x] (rpt2)nop
+                               :3:0039:0047[63800000x_00041016x] mad.f32 r0.x, c5.z, r0.x, r1.x
+                               :0:0040:0048[00000200x_00000000x] (rpt2)nop
+                               :2:0041:0051[40b00004x_00001034x] cmps.f.lt r1.x, c13.x, r0.x
+                               :2:0042:0052[40500000x_00001034x] max.f r0.x, c13.x, r0.x
+                               :0:0043:0053[00000100x_00000000x] (rpt1)nop
+                               :1:0044:0055[200c4004x_00000004x] cov.u32f32 r1.x, r1.x
+                               :3:0045:0056[63800001x_00011020x] mad.f32 r0.y, c8.x, r0.x, r0.y
+                               :3:0046:0057[63800002x_00021021x] mad.f32 r0.z, c8.y, r0.x, r0.z
+                               :3:0047:0058[63800000x_00031022x] mad.f32 r0.x, c8.z, r0.x, r0.w
+                               :3:0048:0059[6382040ex_00011024x] (sat)mad.f32 r3.z, c9.x, r1.x, r0.y
+                               :3:0049:0060[6382040fx_00021025x] (sat)mad.f32 r3.w, c9.y, r1.x, r0.z
+                               :3:0050:0061[63820410x_00001026x] (sat)mad.f32 r4.x, c9.z, r1.x, r0.x
+                               :0:0051:0062[03000000x_00000000x] end
+                               :0:0052:0063[00000000x_00000000x] nop
+                               :0:0053:0064[00000000x_00000000x] nop
+                               :0:0054:0065[00000000x_00000000x] nop
+                               :0:0055:0066[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): 0-8 10-17 (cnt=17, max=17)
+                               - used (merged): 0-17 20-35 (cnt=34, max=35)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): 2-8 (cnt=7, max=8)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): 0-22 28-30 32-34 36-38 52 (cnt=33, max=52)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): 10-17 (cnt=8, max=17)  (estimated)
+                               - shaderdb: 67 instructions, 31 nops, 36 non-nops, (56 instlen), 0 half, 5 full
+                               - shaderdb: 1 (ss), 0 (sy)
+109cee34:                      0000: c0813000 01200000 00000000 10000002 40700000 10030002 40700001 00001004
+109cee54:                      0020: 63818000 00011007 63818001 00001008 63820000 0001100b 63820001 0000100c
+109cee74:                      0040: 6382800a 10010002 40700000 0001100f 6382800d 00001005 63818000 00000010
+109cee94:                      0060: 20244001 00001009 63820000 00000000 00000000 0000100d 6382800b 10020002
+109ceeb4:                      0080: 40700000 0001101c 40100001 00001006 63818000 00000011 20244002 0000100a
+109ceed4:                      00a0: 63820000 00000013 20244004 0000100e 6382800c 00070007 40700000 0002101d
+109ceef4:                      00c0: 40100002 00000006 63830000 00041013 40500411 00000008 63840000 00000012
+109cef14:                      00e0: 20244003 00000000 00000200 0003101e 40100003 00000000 00000000 00000000
+109cef34:                      0100: 80300000 00000007 40701004 00000000 00000200 10150004 40700004 00000006
+109cef54:                      0120: 40700005 00000000 00000200 00041014 63828004 00000008 40700000 00000000
+109cef74:                      0140: 00000200 00041016 63800000 00000000 00000200 00001034 40b00004 00001034
+109cef94:                      0160: 40500000 00000000 00000100 00000004 200c4004 00011020 63800001 00021021
+109cefb4:                      0180: 63800002 00031022 63800000 00011024 6382040e 00021025 6382040f 00001026
+109cefd4:                      01a0: 63820410 00000000 03000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (35 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :0:0000:0000[00000000x_00000000x] nop
+                               :6:0001:0001[c7c60000x_01c00000x] ldlv.u32 r0.x, l[0], 1
+                               :6:0002:0002[c7c60001x_01c00002x] ldlv.u32 r0.y, l[1], 1
+                               :6:0003:0003[c7c60002x_01c00004x] ldlv.u32 r0.z, l[2], 1
+                               :6:0004:0004[c7c60003x_01c00006x] ldlv.u32 r0.w, l[3], 1
+                               :2:0005:0005[473090fcx_00002000x] (ss)bary.f (ei)r63.x, 0, r0.x
+                               :0:0006:0006[03000000x_00000000x] end
+                               :0:0007:0007[00000000x_00000000x] nop
+                               :0:0008:0008[00000000x_00000000x] nop
+                               :0:0009:0009[00000000x_00000000x] nop
+                               :0:0010:0010[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): 0-3 252 (cnt=5, max=3)
+                               - used (merged): 0-7 504-505 (cnt=10, max=7)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): 0-3 (cnt=4, max=3)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): (cnt=0, max=0)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): 252 (cnt=1, max=0)  (estimated)
+                               - shaderdb: 11 instructions, 5 nops, 6 non-nops, (11 instlen), 0 half, 1 full
+                               - shaderdb: 1 (ss), 0 (sy)
+109cf040:                      0000: c0213000 00700000 00000000 00000000 00000000 01c00000 c7c60000 01c00002
+109cf060:                      0020: c7c60001 01c00004 c7c60002 01c00006 c7c60003 00002000 473090fc 00000000
+109cf080:                      0040: 03000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
+109cf0cc:                      0000: c0002600 00000000
+t3                     opcode: CP_LOAD_STATE4 (30) (51 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
+                               { STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
+109cf0e0:                              4.330127 0.855050 0.555273 0.469846 0.000000 4.698463 -0.404206 -0.342020
+109cf100:                              2.500000 -1.480991 -0.961761 -0.813798 -12.990380 -11.962078 35.506226 39.274502
+109cf120:                              0.160000 0.020000 0.000000 1.000000 0.039740 0.662886 0.747665 0.000000
+109cf140:                              1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000
+109cf160:                              0.800000 0.100000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000
+109cf180:                              0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000
+109cf0e0:                              0000: 408a9066 3f5ae494 3f0e265d 3ef08fb2 00000000 409659cf becef409 beaf1d43
+109cf100:                              0020: 40200000 bfbd9119 bf7635f5 bf50550b c14fd899 c13f64ac 420e0660 421d1917
+109cf120:                              0040: 3e23d70b 3ca3d70b 00000000 3f800000 3d22c66e 3f29b2e7 3f3f66f5 00000000
+109cf140:                              0060: 3f800000 00000000 00000000 00000000 00000000 00000000 00000000 3f800000
+109cf160:                              0080: 3f4ccccd 3dcccccd 00000000 3f800000 00000000 00000000 00000000 3f800000
+109cf180:                              00a0: 00000000 00000000 00000000 3f800000 02020000 02020202 02020202 00000202
+109cf0d4:                      0000: c0313000 03200000 00000001 408a9066 3f5ae494 3f0e265d 3ef08fb2 00000000
+109cf0f4:                      0020: 409659cf becef409 beaf1d43 40200000 bfbd9119 bf7635f5 bf50550b c14fd899
+109cf114:                      0040: c13f64ac 420e0660 421d1917 3e23d70b 3ca3d70b 00000000 3f800000 3d22c66e
+109cf134:                      0060: 3f29b2e7 3f3f66f5 00000000 3f800000 00000000 00000000 00000000 00000000
+109cf154:                      0080: 00000000 00000000 3f800000 3f4ccccd 3dcccccd 00000000 3f800000 00000000
+109cf174:                      00a0: 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000 02020000
+109cf194:                      00c0: 02020202 02020202 00000202
+t3                     opcode: CP_LOAD_STATE4 (30) (7 dwords)
+                               { DST_OFF = 13 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 1 }
+                               { STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
+109cf1ac:                              0.000000 -28026765312.000000 -28026765312.000000 -28026765312.000000
+109cf1ac:                              0000: 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
+109cf1a0:                      0000: c0053000 0060000d 00000001 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
+t0                     write VFD_FETCH[0].INSTR_0 (220a)
+                               VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 | SWITCHNEXT }
+                               VFD_FETCH[0].INSTR_1: 0x107cb000
+                               VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
+                               VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
+109cf1bc:                      0000: 0003220a 00080c0b 107cb000 00100000 00000001
+t0                     write VFD_DECODE[0].INSTR (228a)
+                               VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID | SWITCHNEXT }
+109cf1d0:                      0000: 0000228a 6c0020df
+t0                     write VFD_FETCH[0x1].INSTR_0 (220e)
+                               VFD_FETCH[0x1].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 }
+                               VFD_FETCH[0x1].INSTR_1: 0x107cb00c
+                               VFD_FETCH[0x1].INSTR_2: { SIZE = 0xffff4 }
+                               VFD_FETCH[0x1].INSTR_3: { STEPRATE = 1 }
+109cf1d8:                      0000: 0003220e 00000c0b 107cb00c 000ffff4 00000001
+t0                     write VFD_DECODE[0x1].INSTR (228b)
+                               VFD_DECODE[0x1].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r1.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
+109cf1ec:                      0000: 0000228b 2c0060df
+t0                     write VFD_CONTROL_0 (2200)
+                               VFD_CONTROL_0: { TOTALATTRTOVS = 8 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 2 | STRMFETCHINSTRCNT = 2 | 0xa0000 }
+                               VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
+                               VFD_CONTROL_2: 0
+                               VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
+                               VFD_CONTROL_4: 0
+109cf1f4:                      0000: 00042200 082a0008 fcfc0081 00000000 0000fc00 00000000
+t0                     write UCHE_INVALIDATE0 (0e8a)
+                               UCHE_INVALIDATE0: 0
+                               UCHE_INVALIDATE1: 0x12
+109cf20c:                      0000: 00010e8a 00000000 00000012
+t0                     write VFD_INDEX_OFFSET (2208)
+                               VFD_INDEX_OFFSET: 0
+                               UNKNOWN_2209: 0
+109cf218:                      0000: 00012208 00000000 00000000
+t0                     write PC_RESTART_INDEX (21c6)
+                               PC_RESTART_INDEX: 0xffffffff
+109cf224:                      0000: 000021c6 ffffffff
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x20
+                               :0,31,115,32
+109cf22c:                      0000: 0000057f 00000020
+t3                     opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
+                               { PRIM_TYPE = DI_PT_TRILIST | SOURCE_SELECT = DI_SRC_SEL_DMA | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_16_BIT | PATCH_TYPE = TESS_QUADS }
+                               { NUM_INSTANCES = 1 }
+                               { NUM_INDICES = 480 }
+                               { FIRST_INDX = 0 }
+                               { INDX_BASE = 0x10bd05a0 }
+                               { INDX_SIZE = 960 }
+                       draw[5] register values
+!+     0000001f                        CP_SCRATCH[0x5].REG: 0x1f
+                       :0,31,115,32
+!+     00000020                        CP_SCRATCH[0x7].REG: 0x20
+                       :0,31,115,32
+ +     00000000                        UCHE_INVALIDATE0: 0
+ +     00000012                        UCHE_INVALIDATE1: 0x12
+ +     00000000                        GRAS_CNTL: { 0 }
+ +     00000000                        GRAS_ALPHA_CONTROL: { 0 }
+ +     00000000                        RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
+ +     00000001                        RB_FS_OUTPUT_REG: { MRT = 1 }
+ +     80000016                        RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_TEST_ENABLE }
+ +     42001004                        VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
+ +     00040400                        VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
+ +     00000055                        VPC_VARYING_INTERP[0].MODE: 0x55
+ +     00000000                        VPC_VARYING_INTERP[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x7].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x7].MODE: 0
+ +     02000001                        PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+ +     00000012                        PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+ +     ffffffff                        PC_RESTART_INDEX: 0xffffffff
+!+     082a0008                        VFD_CONTROL_0: { TOTALATTRTOVS = 8 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 2 | STRMFETCHINSTRCNT = 2 | 0xa0000 }
+ +     fcfc0081                        VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
+ +     00000000                        VFD_CONTROL_2: 0
+ +     0000fc00                        VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
+ +     00000000                        VFD_CONTROL_4: 0
+ +     00000000                        VFD_INDEX_OFFSET: 0
+ +     00000000                        UNKNOWN_2209: 0
+!+     00080c0b                        VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 | SWITCHNEXT }
+ +     107cb000                        VFD_FETCH[0].INSTR_1: 0x107cb000
+ +     00100000                        VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
+ +     00000001                        VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
+!+     00000c0b                        VFD_FETCH[0x1].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 }
+!+     107cb00c                        VFD_FETCH[0x1].INSTR_1: 0x107cb00c
+!+     000ffff4                        VFD_FETCH[0x1].INSTR_2: { SIZE = 0xffff4 }
+!+     00000001                        VFD_FETCH[0x1].INSTR_3: { STEPRATE = 1 }
+!+     6c0020df                        VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID | SWITCHNEXT }
+!+     2c0060df                        VFD_DECODE[0x1].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r1.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
+ +     00140010                        SP_SP_CTRL_REG: { 0x140010 }
+ +     000005ff                        SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+!+     00201400                        SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+!+     08000042                        SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
+!+     0010fc0a                        SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
+!+     00001e0e                        SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
+ +     08080808                        SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
+ +     00000000                        SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+!+     10cd5000                        SP_VS_OBJ_START: 0x10cd5000
+ +     00000004                        SP_VS_LENGTH_REG: 4
+ +     00340402                        SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+ +     8010003e                        SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
+ +     7e420000                        SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     10cd2000                        SP_FS_OBJ_START: 0x10cd2000
+ +     00000001                        SP_FS_LENGTH_REG: 1
+ +     0000fc01                        SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+ +     0001a000                        SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+ +     00000000                        SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     7e420000                        SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                        SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                        SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     28000250                        HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+ +     fcfc0100                        HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+ +     fff3f3f0                        HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+ +     fcfcfcfc                        HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+ +     00fcfcfc                        HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+ +     04000042                        HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
+ +     017e423e                        HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+ +     007e4200                        HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                        HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                        HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     00000003                        HLSQ_UPDATE_CONTROL: 0x3
+109cf234:                      0000: c0053800 00000404 00000001 000001e0 00000000 10bd05a0 000003c0
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x21
+                               :0,31,115,33
+109cf250:                      0000: 0000057f 00000021
+t0                     write CP_SCRATCH[0x5].REG (057d)
+                               CP_SCRATCH[0x5].REG: 0x25
+                               :0,37,115,33
+109cf258:                      0000: 0000057d 00000025
+t0                     write RB_DEPTH_CONTROL (2101)
+                               RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_TEST_ENABLE }
+109cf260:                      0000: 00002101 80000016
+t0                     write GRAS_ALPHA_CONTROL (2073)
+                               GRAS_ALPHA_CONTROL: { 0 }
+109cf268:                      0000: 00002073 00000000
+t0                     write GRAS_SU_MODE_CONTROL (2078)
+                               GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
+109cf270:                      0000: 00002078 00100012
+t0                     write GRAS_SU_POINT_MINMAX (2070)
+                               GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
+                               GRAS_SU_POINT_SIZE: 1.000000
+109cf278:                      0000: 00012070 00100010 00000010
+t0                     write GRAS_SU_POLY_OFFSET_SCALE (2074)
+                               GRAS_SU_POLY_OFFSET_SCALE: 0.000000
+                               GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
+                               GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
+109cf284:                      0000: 00022074 00000000 00000000 00000000
+t0                     write GRAS_CL_CLIP_CNTL (2000)
+                               GRAS_CL_CLIP_CNTL: { 0x80000 }
+109cf294:                      0000: 00002000 00080000
+t0                     write PC_PRIM_VTX_CNTL (21c4)
+                               PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+                               PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+109cf29c:                      0000: 000121c4 02000001 00000012
+t0                     write GRAS_SC_WINDOW_SCISSOR_BR (209c)
+                               GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
+                               GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
+109cf2a8:                      0000: 0001209c 012b012b 00000000
+t0                     write RB_VPORT_Z_CLAMP[0].MIN (2120)
+                               RB_VPORT_Z_CLAMP[0].MIN: 0
+                               RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
+109cf2b4:                      0000: 00012120 00000000 00ffffff
+t0                     write HLSQ_UPDATE_CONTROL (23db)
+                               HLSQ_UPDATE_CONTROL: 0x3
+109cf2c0:                      0000: 000023db 00000003
+t0                     write HLSQ_CONTROL_0_REG (23c0)
+                               HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+                               HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+                               HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+                               HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r0.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+                               HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+109cf2c8:                      0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfc00 00fcfcfc
+t0                     write HLSQ_VS_CONTROL_REG (23c5)
+                               HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
+                               HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+                               HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+109cf2e0:                      0000: 000423c5 04000042 017e423e 007e4200 007e4200 007e4200
+t0                     write SP_SP_CTRL_REG (22c0)
+                               SP_SP_CTRL_REG: { 0x140010 }
+109cf2f8:                      0000: 000022c0 00140010
+t0                     write SP_INSTR_CACHE_CTRL (22c1)
+                               SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+109cf300:                      0000: 000022c1 000005ff
+t0                     write SP_VS_LENGTH_REG (22e5)
+                               SP_VS_LENGTH_REG: 4
+109cf308:                      0000: 000022e5 00000004
+t0                     write SP_VS_CTRL_REG0 (22c4)
+                               SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+                               SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
+                               SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
+109cf310:                      0000: 000222c4 00201400 08000042 0010fc0a
+t0                     write SP_VS_OUT[0].REG (22c7)
+                               SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
+109cf320:                      0000: 000022c7 00001e0e
+t0                     write SP_VS_VPC_DST[0].REG (22d8)
+                               SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
+109cf328:                      0000: 000022d8 08080808
+t0                     write SP_VS_OBJ_OFFSET_REG (22e0)
+                               SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+                               SP_VS_OBJ_START: 0x10cd5000
+109cf330:                      0000: 000122e0 00000000 10cd5000
+t0                     write SP_FS_LENGTH_REG (22ef)
+                               SP_FS_LENGTH_REG: 1
+109cf33c:                      0000: 000022ef 00000001
+t0                     write SP_FS_CTRL_REG0 (22e8)
+                               SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 2 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+                               SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
+109cf344:                      0000: 000122e8 00340802 8010003e
+t0                     write SP_FS_OBJ_OFFSET_REG (22ea)
+                               SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+                               SP_FS_OBJ_START: 0x108cb000
+109cf350:                      0000: 000122ea 7e420000 108cb000
+t0                     write SP_HS_OBJ_OFFSET_REG (230d)
+                               SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109cf35c:                      0000: 0000230d 7e420000
+t0                     write SP_DS_OBJ_OFFSET_REG (2334)
+                               SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109cf364:                      0000: 00002334 7e420000
+t0                     write SP_GS_OBJ_OFFSET_REG (235b)
+                               SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109cf36c:                      0000: 0000235b 7e420000
+t0                     write GRAS_CNTL (2003)
+                               GRAS_CNTL: { IJ_PERSP }
+109cf374:                      0000: 00002003 00000001
+t0                     write RB_RENDER_CONTROL2 (20a3)
+                               RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 | IJ_PERSP_PIXEL }
+109cf37c:                      0000: 000020a3 00001000
+t0                     write RB_FS_OUTPUT_REG (2100)
+                               RB_FS_OUTPUT_REG: { MRT = 1 }
+109cf384:                      0000: 00002100 00000001
+t0                     write SP_FS_OUTPUT_REG (22f0)
+                               SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+109cf38c:                      0000: 000022f0 0000fc01
+t0                     write SP_FS_MRT[0].REG (22f1)
+                               SP_FS_MRT[0].REG: { REGID = r0.z | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+                               SP_FS_MRT[0x1].REG: { REGID = r0.z | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x2].REG: { REGID = r0.z | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x3].REG: { REGID = r0.z | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x4].REG: { REGID = r0.z | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x5].REG: { REGID = r0.z | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x6].REG: { REGID = r0.z | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x7].REG: { REGID = r0.z | MRTFORMAT = 0 }
+109cf394:                      0000: 000722f1 0001a002 00000002 00000002 00000002 00000002 00000002 00000002
+109cf3b4:                      0020: 00000002
+t0                     write VPC_ATTR (2140)
+                               VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
+                               VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
+109cf3b8:                      0000: 00012140 42001004 00040400
+t0                     write VPC_VARYING_INTERP[0].MODE (2142)
+                               VPC_VARYING_INTERP[0].MODE: 0
+                               VPC_VARYING_INTERP[0x1].MODE: 0
+                               VPC_VARYING_INTERP[0x2].MODE: 0
+                               VPC_VARYING_INTERP[0x3].MODE: 0
+                               VPC_VARYING_INTERP[0x4].MODE: 0
+                               VPC_VARYING_INTERP[0x5].MODE: 0
+                               VPC_VARYING_INTERP[0x6].MODE: 0
+                               VPC_VARYING_INTERP[0x7].MODE: 0
+109cf3c4:                      0000: 00072142 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0                     write VPC_VARYING_PS_REPL[0].MODE (214a)
+                               VPC_VARYING_PS_REPL[0].MODE: 0
+                               VPC_VARYING_PS_REPL[0x1].MODE: 0
+                               VPC_VARYING_PS_REPL[0x2].MODE: 0
+                               VPC_VARYING_PS_REPL[0x3].MODE: 0
+                               VPC_VARYING_PS_REPL[0x4].MODE: 0
+                               VPC_VARYING_PS_REPL[0x5].MODE: 0
+                               VPC_VARYING_PS_REPL[0x6].MODE: 0
+                               VPC_VARYING_PS_REPL[0x7].MODE: 0
+109cf3e8:                      0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (131 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 4 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :2:0000:0000[40700000x_10000002x] mul.f r0.x, r0.z, c0.x
+                               :2:0001:0001[40700001x_10030002x] mul.f r0.y, r0.z, c0.w
+                               :3:0002:0002[63818000x_00001004x] mad.f32 r0.x, c1.x, r0.w, r0.x
+                               :3:0003:0003[63818001x_00011007x] mad.f32 r0.y, c1.w, r0.w, r0.y
+                               :3:0004:0004[63820000x_00001008x] mad.f32 r0.x, c2.x, r1.x, r0.x
+                               :3:0005:0005[63820001x_0001100bx] mad.f32 r0.y, c2.w, r1.x, r0.y
+                               :3:0006:0006[6382800ax_0000100cx] mad.f32 r2.z, c3.x, r1.y, r0.x
+                               :2:0007:0007[40700000x_10010002x] mul.f r0.x, r0.z, c0.y
+                               :3:0008:0008[6382800dx_0001100fx] mad.f32 r3.y, c3.w, r1.y, r0.y
+                               :3:0009:0009[63818000x_00001005x] mad.f32 r0.x, c1.y, r0.w, r0.x
+                               :1:0010:0010[20244001x_00000010x] mov.f32f32 r0.y, c4.x
+                               :3:0011:0011[63820000x_00001009x] mad.f32 r0.x, c2.y, r1.x, r0.x
+                               :0:0012:0012[00000000x_00000000x] nop
+                               :3:0013:0013[6382800bx_0000100dx] mad.f32 r2.w, c3.y, r1.y, r0.x
+                               :2:0014:0014[40700000x_10020002x] mul.f r0.x, r0.z, c0.z
+                               :2:0015:0015[40100001x_0001101cx] add.f r0.y, c7.x, r0.y
+                               :3:0016:0016[63818000x_00001006x] mad.f32 r0.x, c1.z, r0.w, r0.x
+                               :1:0017:0017[20244002x_00000011x] mov.f32f32 r0.z, c4.y
+                               :3:0018:0018[63820000x_0000100ax] mad.f32 r0.x, c2.z, r1.x, r0.x
+                               :1:0019:0019[20244004x_00000013x] mov.f32f32 r1.x, c4.w
+                               :3:0020:0020[6382800cx_0000100ex] mad.f32 r3.x, c3.z, r1.y, r0.x
+                               :2:0021:0021[40700000x_00070007x] mul.f r0.x, r1.w, r1.w
+                               :2:0022:0022[40100002x_0002101dx] add.f r0.z, c7.y, r0.z
+                               :3:0023:0023[63830000x_00000006x] mad.f32 r0.x, r1.z, r1.z, r0.x
+                               :2:0024:0024[40500411x_00041013x] (sat)max.f r4.y, c4.w, r1.x
+                               :3:0025:0025[63840000x_00000008x] mad.f32 r0.x, r2.x, r2.x, r0.x
+                               :1:0026:0026[20244003x_00000012x] mov.f32f32 r0.w, c4.z
+                               :0:0027:0027[00000200x_00000000x] (rpt2)nop
+                               :2:0028:0030[40100003x_0003101ex] add.f r0.w, c7.z, r0.w
+                               :0:0029:0031[00000000x_00000000x] nop
+                               :4:0030:0032[80300000x_00000000x] rsq r0.x, r0.x
+                               :2:0031:0033[40701004x_00000007x] (ss)mul.f r1.x, r1.w, r0.x
+                               :0:0032:0034[00000200x_00000000x] (rpt2)nop
+                               :2:0033:0037[40700004x_10150004x] mul.f r1.x, r1.x, c5.y
+                               :2:0034:0038[40700005x_00000006x] mul.f r1.y, r1.z, r0.x
+                               :0:0035:0039[00000200x_00000000x] (rpt2)nop
+                               :3:0036:0042[63828004x_00041014x] mad.f32 r1.x, c5.x, r1.y, r1.x
+                               :2:0037:0043[40700000x_00000008x] mul.f r0.x, r2.x, r0.x
+                               :0:0038:0044[00000200x_00000000x] (rpt2)nop
+                               :3:0039:0047[63800000x_00041016x] mad.f32 r0.x, c5.z, r0.x, r1.x
+                               :0:0040:0048[00000200x_00000000x] (rpt2)nop
+                               :2:0041:0051[40b00004x_00001034x] cmps.f.lt r1.x, c13.x, r0.x
+                               :2:0042:0052[40500000x_00001034x] max.f r0.x, c13.x, r0.x
+                               :0:0043:0053[00000100x_00000000x] (rpt1)nop
+                               :1:0044:0055[200c4004x_00000004x] cov.u32f32 r1.x, r1.x
+                               :3:0045:0056[63800001x_00011020x] mad.f32 r0.y, c8.x, r0.x, r0.y
+                               :3:0046:0057[63800002x_00021021x] mad.f32 r0.z, c8.y, r0.x, r0.z
+                               :3:0047:0058[63800000x_00031022x] mad.f32 r0.x, c8.z, r0.x, r0.w
+                               :3:0048:0059[6382040ex_00011024x] (sat)mad.f32 r3.z, c9.x, r1.x, r0.y
+                               :3:0049:0060[6382040fx_00021025x] (sat)mad.f32 r3.w, c9.y, r1.x, r0.z
+                               :3:0050:0061[63820410x_00001026x] (sat)mad.f32 r4.x, c9.z, r1.x, r0.x
+                               :0:0051:0062[03000000x_00000000x] end
+                               :0:0052:0063[00000000x_00000000x] nop
+                               :0:0053:0064[00000000x_00000000x] nop
+                               :0:0054:0065[00000000x_00000000x] nop
+                               :0:0055:0066[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): 0-8 10-17 (cnt=17, max=17)
+                               - used (merged): 0-17 20-35 (cnt=34, max=35)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): 2-8 (cnt=7, max=8)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): 0-22 28-30 32-34 36-38 52 (cnt=33, max=52)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): 10-17 (cnt=8, max=17)  (estimated)
+                               - shaderdb: 67 instructions, 31 nops, 36 non-nops, (56 instlen), 0 half, 5 full
+                               - shaderdb: 1 (ss), 0 (sy)
+109cf40c:                      0000: c0813000 01200000 00000000 10000002 40700000 10030002 40700001 00001004
+109cf42c:                      0020: 63818000 00011007 63818001 00001008 63820000 0001100b 63820001 0000100c
+109cf44c:                      0040: 6382800a 10010002 40700000 0001100f 6382800d 00001005 63818000 00000010
+109cf46c:                      0060: 20244001 00001009 63820000 00000000 00000000 0000100d 6382800b 10020002
+109cf48c:                      0080: 40700000 0001101c 40100001 00001006 63818000 00000011 20244002 0000100a
+109cf4ac:                      00a0: 63820000 00000013 20244004 0000100e 6382800c 00070007 40700000 0002101d
+109cf4cc:                      00c0: 40100002 00000006 63830000 00041013 40500411 00000008 63840000 00000012
+109cf4ec:                      00e0: 20244003 00000000 00000200 0003101e 40100003 00000000 00000000 00000000
+109cf50c:                      0100: 80300000 00000007 40701004 00000000 00000200 10150004 40700004 00000006
+109cf52c:                      0120: 40700005 00000000 00000200 00041014 63828004 00000008 40700000 00000000
+109cf54c:                      0140: 00000200 00041016 63800000 00000000 00000200 00001034 40b00004 00001034
+109cf56c:                      0160: 40500000 00000000 00000100 00000004 200c4004 00011020 63800001 00021021
+109cf58c:                      0180: 63800002 00031022 63800000 00011024 6382040e 00021025 6382040f 00001026
+109cf5ac:                      01a0: 63820410 00000000 03000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (35 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :2:0000:0000[47300002x_00002000x] bary.f r0.z, 0, r0.x
+                               :2:0001:0001[47300003x_00002001x] bary.f r0.w, 1, r0.x
+                               :2:0002:0002[47300004x_00002002x] bary.f r1.x, 2, r0.x
+                               :2:0003:0003[47308005x_00002003x] bary.f (ei)r1.y, 3, r0.x
+                               :0:0004:0004[03000000x_00000000x] end
+                               :0:0005:0005[00000000x_00000000x] nop
+                               :0:0006:0006[00000000x_00000000x] nop
+                               :0:0007:0007[00000000x_00000000x] nop
+                               :0:0008:0008[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): 0 2-5 (cnt=5, max=5)
+                               - used (merged): 0-1 4-11 (cnt=10, max=11)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): 0 (cnt=1, max=0)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): (cnt=0, max=0)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): 2-5 (cnt=4, max=5)  (estimated)
+                               - shaderdb: 9 instructions, 4 nops, 5 non-nops, (9 instlen), 0 half, 2 full
+                               - shaderdb: 0 (ss), 0 (sy)
+109cf618:                      0000: c0213000 00700000 00000000 00002000 47300002 00002001 47300003 00002002
+109cf638:                      0020: 47300004 00002003 47308005 00000000 03000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
+109cf6a4:                      0000: c0002600 00000000
+t3                     opcode: CP_LOAD_STATE4 (30) (51 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
+                               { STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
+109cf6b8:                              4.330127 0.855050 0.555273 0.469846 0.000000 4.698463 -0.404206 -0.342020
+109cf6d8:                              2.500000 -1.480991 -0.961761 -0.813798 -12.990380 -11.962078 35.506226 39.274502
+109cf6f8:                              0.160000 0.020000 0.000000 1.000000 0.039740 0.662886 0.747665 0.000000
+109cf718:                              1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000
+109cf738:                              0.800000 0.100000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000
+109cf758:                              0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000
+109cf6b8:                              0000: 408a9066 3f5ae494 3f0e265d 3ef08fb2 00000000 409659cf becef409 beaf1d43
+109cf6d8:                              0020: 40200000 bfbd9119 bf7635f5 bf50550b c14fd899 c13f64ac 420e0660 421d1917
+109cf6f8:                              0040: 3e23d70b 3ca3d70b 00000000 3f800000 3d22c66e 3f29b2e7 3f3f66f5 00000000
+109cf718:                              0060: 3f800000 00000000 00000000 00000000 00000000 00000000 00000000 3f800000
+109cf738:                              0080: 3f4ccccd 3dcccccd 00000000 3f800000 00000000 00000000 00000000 3f800000
+109cf758:                              00a0: 00000000 00000000 00000000 3f800000 02020000 02020202 02020202 00000202
+109cf6ac:                      0000: c0313000 03200000 00000001 408a9066 3f5ae494 3f0e265d 3ef08fb2 00000000
+109cf6cc:                      0020: 409659cf becef409 beaf1d43 40200000 bfbd9119 bf7635f5 bf50550b c14fd899
+109cf6ec:                      0040: c13f64ac 420e0660 421d1917 3e23d70b 3ca3d70b 00000000 3f800000 3d22c66e
+109cf70c:                      0060: 3f29b2e7 3f3f66f5 00000000 3f800000 00000000 00000000 00000000 00000000
+109cf72c:                      0080: 00000000 00000000 3f800000 3f4ccccd 3dcccccd 00000000 3f800000 00000000
+109cf74c:                      00a0: 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000 02020000
+109cf76c:                      00c0: 02020202 02020202 00000202
+t0                     write VFD_INDEX_OFFSET (2208)
+                               VFD_INDEX_OFFSET: 0
+                               UNKNOWN_2209: 0
+109cf778:                      0000: 00012208 00000000 00000000
+t0                     write PC_RESTART_INDEX (21c6)
+                               PC_RESTART_INDEX: 0xffffffff
+109cf784:                      0000: 000021c6 ffffffff
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x26
+                               :0,37,115,38
+109cf78c:                      0000: 0000057f 00000026
+t3                     opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
+                               { PRIM_TYPE = DI_PT_TRILIST | SOURCE_SELECT = DI_SRC_SEL_DMA | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_16_BIT | PATCH_TYPE = TESS_QUADS }
+                               { NUM_INSTANCES = 1 }
+                               { NUM_INDICES = 120 }
+                               { FIRST_INDX = 0 }
+                               { INDX_BASE = 0x10bd0960 }
+                               { INDX_SIZE = 240 }
+                       draw[6] register values
+!+     00000025                        CP_SCRATCH[0x5].REG: 0x25
+                       :0,37,115,38
+!+     00000026                        CP_SCRATCH[0x7].REG: 0x26
+                       :0,37,115,38
+ +     00080000                        GRAS_CL_CLIP_CNTL: { 0x80000 }
+!+     00000001                        GRAS_CNTL: { IJ_PERSP }
+ +     00100010                        GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
+ +     00000010                        GRAS_SU_POINT_SIZE: 1.000000
+ +     00000000                        GRAS_ALPHA_CONTROL: { 0 }
+ +     00000000                        GRAS_SU_POLY_OFFSET_SCALE: 0.000000
+ +     00000000                        GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
+ +     00000000                        GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
+ +     00100012                        GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
+ +     012b012b                        GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
+ +     00000000                        GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
+!+     00001000                        RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 | IJ_PERSP_PIXEL }
+ +     00000001                        RB_FS_OUTPUT_REG: { MRT = 1 }
+ +     80000016                        RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_TEST_ENABLE }
+ +     00000000                        RB_VPORT_Z_CLAMP[0].MIN: 0
+ +     00ffffff                        RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
+ +     42001004                        VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
+ +     00040400                        VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
+!+     00000000                        VPC_VARYING_INTERP[0].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x7].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x7].MODE: 0
+ +     02000001                        PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+ +     00000012                        PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+ +     ffffffff                        PC_RESTART_INDEX: 0xffffffff
+ +     00000000                        VFD_INDEX_OFFSET: 0
+ +     00000000                        UNKNOWN_2209: 0
+ +     00140010                        SP_SP_CTRL_REG: { 0x140010 }
+ +     000005ff                        SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+ +     00201400                        SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+ +     08000042                        SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
+ +     0010fc0a                        SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
+ +     00001e0e                        SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
+ +     08080808                        SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
+ +     00000000                        SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+ +     10cd5000                        SP_VS_OBJ_START: 0x10cd5000
+ +     00000004                        SP_VS_LENGTH_REG: 4
+!+     00340802                        SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 2 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+ +     8010003e                        SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
+ +     7e420000                        SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+!+     108cb000                        SP_FS_OBJ_START: 0x108cb000
+ +     00000001                        SP_FS_LENGTH_REG: 1
+ +     0000fc01                        SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+!+     0001a002                        SP_FS_MRT[0].REG: { REGID = r0.z | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+!+     00000002                        SP_FS_MRT[0x1].REG: { REGID = r0.z | MRTFORMAT = 0 }
+!+     00000002                        SP_FS_MRT[0x2].REG: { REGID = r0.z | MRTFORMAT = 0 }
+!+     00000002                        SP_FS_MRT[0x3].REG: { REGID = r0.z | MRTFORMAT = 0 }
+!+     00000002                        SP_FS_MRT[0x4].REG: { REGID = r0.z | MRTFORMAT = 0 }
+!+     00000002                        SP_FS_MRT[0x5].REG: { REGID = r0.z | MRTFORMAT = 0 }
+!+     00000002                        SP_FS_MRT[0x6].REG: { REGID = r0.z | MRTFORMAT = 0 }
+!+     00000002                        SP_FS_MRT[0x7].REG: { REGID = r0.z | MRTFORMAT = 0 }
+ +     7e420000                        SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                        SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                        SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     28000250                        HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+ +     fcfc0100                        HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+ +     fff3f3f0                        HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+!+     fcfcfc00                        HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r0.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+ +     00fcfcfc                        HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+ +     04000042                        HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
+ +     017e423e                        HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+ +     007e4200                        HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                        HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                        HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     00000003                        HLSQ_UPDATE_CONTROL: 0x3
+109cf794:                      0000: c0053800 00000404 00000001 00000078 00000000 10bd0960 000000f0
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x27
+                               :0,37,115,39
+109cf7b0:                      0000: 0000057f 00000027
+t0                     write CP_SCRATCH[0x5].REG (057d)
+                               CP_SCRATCH[0x5].REG: 0x2b
+                               :0,43,115,39
+109cf7b8:                      0000: 0000057d 0000002b
+t0                     write RB_DEPTH_CONTROL (2101)
+                               RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_TEST_ENABLE }
+109cf7c0:                      0000: 00002101 80000016
+t0                     write GRAS_ALPHA_CONTROL (2073)
+                               GRAS_ALPHA_CONTROL: { 0 }
+109cf7c8:                      0000: 00002073 00000000
+t0                     write GRAS_SU_MODE_CONTROL (2078)
+                               GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
+109cf7d0:                      0000: 00002078 00100012
+t0                     write GRAS_SU_POINT_MINMAX (2070)
+                               GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
+                               GRAS_SU_POINT_SIZE: 1.000000
+109cf7d8:                      0000: 00012070 00100010 00000010
+t0                     write GRAS_SU_POLY_OFFSET_SCALE (2074)
+                               GRAS_SU_POLY_OFFSET_SCALE: 0.000000
+                               GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
+                               GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
+109cf7e4:                      0000: 00022074 00000000 00000000 00000000
+t0                     write GRAS_CL_CLIP_CNTL (2000)
+                               GRAS_CL_CLIP_CNTL: { 0x80000 }
+109cf7f4:                      0000: 00002000 00080000
+t0                     write PC_PRIM_VTX_CNTL (21c4)
+                               PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+                               PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+109cf7fc:                      0000: 000121c4 02000001 00000012
+t0                     write GRAS_SC_WINDOW_SCISSOR_BR (209c)
+                               GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
+                               GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
+109cf808:                      0000: 0001209c 012b012b 00000000
+t0                     write RB_VPORT_Z_CLAMP[0].MIN (2120)
+                               RB_VPORT_Z_CLAMP[0].MIN: 0
+                               RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
+109cf814:                      0000: 00012120 00000000 00ffffff
+t0                     write HLSQ_UPDATE_CONTROL (23db)
+                               HLSQ_UPDATE_CONTROL: 0x3
+109cf820:                      0000: 000023db 00000003
+t0                     write HLSQ_CONTROL_0_REG (23c0)
+                               HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+                               HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+                               HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+                               HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+                               HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+109cf828:                      0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfcfc 00fcfcfc
+t0                     write HLSQ_VS_CONTROL_REG (23c5)
+                               HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
+                               HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+                               HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+109cf840:                      0000: 000423c5 04000042 017e423e 007e4200 007e4200 007e4200
+t0                     write SP_SP_CTRL_REG (22c0)
+                               SP_SP_CTRL_REG: { 0x140010 }
+109cf858:                      0000: 000022c0 00140010
+t0                     write SP_INSTR_CACHE_CTRL (22c1)
+                               SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+109cf860:                      0000: 000022c1 000005ff
+t0                     write SP_VS_LENGTH_REG (22e5)
+                               SP_VS_LENGTH_REG: 4
+109cf868:                      0000: 000022e5 00000004
+t0                     write SP_VS_CTRL_REG0 (22c4)
+                               SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 4 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+                               SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
+                               SP_VS_PARAM_REG: { POSREGID = r1.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
+109cf870:                      0000: 000222c4 00201000 04000042 0010fc06
+t0                     write SP_VS_OUT[0].REG (22c7)
+                               SP_VS_OUT[0].REG: { A_REGID = r2.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
+109cf880:                      0000: 000022c7 00001e0a
+t0                     write SP_VS_VPC_DST[0].REG (22d8)
+                               SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
+109cf888:                      0000: 000022d8 08080808
+t0                     write SP_VS_OBJ_OFFSET_REG (22e0)
+                               SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+                               SP_VS_OBJ_START: 0x10cd0000
+109cf890:                      0000: 000122e0 00000000 10cd0000
+t0                     write SP_FS_LENGTH_REG (22ef)
+                               SP_FS_LENGTH_REG: 1
+109cf89c:                      0000: 000022ef 00000001
+t0                     write SP_FS_CTRL_REG0 (22e8)
+                               SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+                               SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
+109cf8a4:                      0000: 000122e8 00340402 8010003e
+t0                     write SP_FS_OBJ_OFFSET_REG (22ea)
+                               SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+                               SP_FS_OBJ_START: 0x10cd2000
+109cf8b0:                      0000: 000122ea 7e420000 10cd2000
+t0                     write SP_HS_OBJ_OFFSET_REG (230d)
+                               SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109cf8bc:                      0000: 0000230d 7e420000
+t0                     write SP_DS_OBJ_OFFSET_REG (2334)
+                               SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109cf8c4:                      0000: 00002334 7e420000
+t0                     write SP_GS_OBJ_OFFSET_REG (235b)
+                               SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109cf8cc:                      0000: 0000235b 7e420000
+t0                     write GRAS_CNTL (2003)
+                               GRAS_CNTL: { 0 }
+109cf8d4:                      0000: 00002003 00000000
+t0                     write RB_RENDER_CONTROL2 (20a3)
+                               RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
+109cf8dc:                      0000: 000020a3 00000000
+t0                     write RB_FS_OUTPUT_REG (2100)
+                               RB_FS_OUTPUT_REG: { MRT = 1 }
+109cf8e4:                      0000: 00002100 00000001
+t0                     write SP_FS_OUTPUT_REG (22f0)
+                               SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+109cf8ec:                      0000: 000022f0 0000fc01
+t0                     write SP_FS_MRT[0].REG (22f1)
+                               SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+                               SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
+109cf8f4:                      0000: 000722f1 0001a000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0                     write VPC_ATTR (2140)
+                               VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
+                               VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
+109cf918:                      0000: 00012140 42001004 00040400
+t0                     write VPC_VARYING_INTERP[0].MODE (2142)
+                               VPC_VARYING_INTERP[0].MODE: 0x55
+                               VPC_VARYING_INTERP[0x1].MODE: 0
+                               VPC_VARYING_INTERP[0x2].MODE: 0
+                               VPC_VARYING_INTERP[0x3].MODE: 0
+                               VPC_VARYING_INTERP[0x4].MODE: 0
+                               VPC_VARYING_INTERP[0x5].MODE: 0
+                               VPC_VARYING_INTERP[0x6].MODE: 0
+                               VPC_VARYING_INTERP[0x7].MODE: 0
+109cf924:                      0000: 00072142 00000055 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0                     write VPC_VARYING_PS_REPL[0].MODE (214a)
+                               VPC_VARYING_PS_REPL[0].MODE: 0
+                               VPC_VARYING_PS_REPL[0x1].MODE: 0
+                               VPC_VARYING_PS_REPL[0x2].MODE: 0
+                               VPC_VARYING_PS_REPL[0x3].MODE: 0
+                               VPC_VARYING_PS_REPL[0x4].MODE: 0
+                               VPC_VARYING_PS_REPL[0x5].MODE: 0
+                               VPC_VARYING_PS_REPL[0x6].MODE: 0
+                               VPC_VARYING_PS_REPL[0x7].MODE: 0
+109cf948:                      0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (131 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 4 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :2:0000:0000[40700000x_10000002x] mul.f r0.x, r0.z, c0.x
+                               :2:0001:0001[40700001x_10030002x] mul.f r0.y, r0.z, c0.w
+                               :3:0002:0002[63818000x_00001004x] mad.f32 r0.x, c1.x, r0.w, r0.x
+                               :3:0003:0003[63818001x_00011007x] mad.f32 r0.y, c1.w, r0.w, r0.y
+                               :3:0004:0004[63820000x_00001008x] mad.f32 r0.x, c2.x, r1.x, r0.x
+                               :3:0005:0005[63820001x_0001100bx] mad.f32 r0.y, c2.w, r1.x, r0.y
+                               :3:0006:0006[63828006x_0000100cx] mad.f32 r1.z, c3.x, r1.y, r0.x
+                               :2:0007:0007[40700000x_10010002x] mul.f r0.x, r0.z, c0.y
+                               :3:0008:0008[63828009x_0001100fx] mad.f32 r2.y, c3.w, r1.y, r0.y
+                               :3:0009:0009[63818000x_00001005x] mad.f32 r0.x, c1.y, r0.w, r0.x
+                               :1:0010:0010[20244001x_00000010x] mov.f32f32 r0.y, c4.x
+                               :3:0011:0011[63820000x_00001009x] mad.f32 r0.x, c2.y, r1.x, r0.x
+                               :0:0012:0012[00000000x_00000000x] nop
+                               :3:0013:0013[63828007x_0000100dx] mad.f32 r1.w, c3.y, r1.y, r0.x
+                               :2:0014:0014[40700000x_10020002x] mul.f r0.x, r0.z, c0.z
+                               :1:0015:0015[20244002x_00000015x] mov.f32f32 r0.z, c5.y
+                               :3:0016:0016[63818000x_00001006x] mad.f32 r0.x, c1.z, r0.w, r0.x
+                               :1:0017:0017[20244003x_00000016x] mov.f32f32 r0.w, c5.z
+                               :3:0018:0018[63820000x_0000100ax] mad.f32 r0.x, c2.z, r1.x, r0.x
+                               :1:0019:0019[20244004x_00000017x] mov.f32f32 r1.x, c5.w
+                               :3:0020:0020[63828008x_0000100ex] mad.f32 r2.x, c3.z, r1.y, r0.x
+                               :1:0021:0021[20244000x_00000011x] mov.f32f32 r0.x, c4.y
+                               :2:0022:0022[40100002x_00021021x] add.f r0.z, c8.y, r0.z
+                               :2:0023:0023[4050040dx_00041017x] (sat)max.f r3.y, c5.w, r1.x
+                               :2:0024:0024[40100003x_00031022x] add.f r0.w, c8.z, r0.w
+                               :2:0025:0025[40700000x_00001011x] mul.f r0.x, c4.y, r0.x
+                               :0:0026:0026[00000000x_00000000x] nop
+                               :3:0027:0027[63808000x_00001010x] mad.f32 r0.x, c4.x, r0.y, r0.x
+                               :1:0028:0028[20244001x_00000012x] mov.f32f32 r0.y, c4.z
+                               :0:0029:0029[00000200x_00000000x] (rpt2)nop
+                               :3:0030:0032[63808000x_00001012x] mad.f32 r0.x, c4.z, r0.y, r0.x
+                               :1:0031:0033[20244001x_00000014x] mov.f32f32 r0.y, c5.x
+                               :0:0032:0034[00000200x_00000000x] (rpt2)nop
+                               :2:0033:0037[40100001x_00011020x] add.f r0.y, c8.x, r0.y
+                               :0:0034:0038[00000000x_00000000x] nop
+                               :4:0035:0039[80300000x_00000000x] rsq r0.x, r0.x
+                               :2:0036:0040[40701004x_00001011x] (ss)mul.f r1.x, c4.y, r0.x
+                               :0:0037:0041[00000200x_00000000x] (rpt2)nop
+                               :2:0038:0044[40700004x_10190004x] mul.f r1.x, r1.x, c6.y
+                               :2:0039:0045[40700005x_00001010x] mul.f r1.y, c4.x, r0.x
+                               :0:0040:0046[00000200x_00000000x] (rpt2)nop
+                               :3:0041:0049[63828004x_00041018x] mad.f32 r1.x, c6.x, r1.y, r1.x
+                               :2:0042:0050[40700000x_00001012x] mul.f r0.x, c4.z, r0.x
+                               :0:0043:0051[00000200x_00000000x] (rpt2)nop
+                               :3:0044:0054[63800000x_0004101ax] mad.f32 r0.x, c6.z, r0.x, r1.x
+                               :0:0045:0055[00000200x_00000000x] (rpt2)nop
+                               :2:0046:0058[40b00004x_00001034x] cmps.f.lt r1.x, c13.x, r0.x
+                               :2:0047:0059[40500000x_00001034x] max.f r0.x, c13.x, r0.x
+                               :0:0048:0060[00000100x_00000000x] (rpt1)nop
+                               :1:0049:0062[200c4004x_00000004x] cov.u32f32 r1.x, r1.x
+                               :3:0050:0063[63800001x_00011024x] mad.f32 r0.y, c9.x, r0.x, r0.y
+                               :3:0051:0064[63800002x_00021025x] mad.f32 r0.z, c9.y, r0.x, r0.z
+                               :3:0052:0065[63800000x_00031026x] mad.f32 r0.x, c9.z, r0.x, r0.w
+                               :3:0053:0066[6382040ax_00011028x] (sat)mad.f32 r2.z, c10.x, r1.x, r0.y
+                               :3:0054:0067[6382040bx_00021029x] (sat)mad.f32 r2.w, c10.y, r1.x, r0.z
+                               :3:0055:0068[6382040cx_0000102ax] (sat)mad.f32 r3.x, c10.z, r1.x, r0.x
+                               :0:0056:0069[03000000x_00000000x] end
+                               :0:0057:0070[00000000x_00000000x] nop
+                               :0:0058:0071[00000000x_00000000x] nop
+                               :0:0059:0072[00000000x_00000000x] nop
+                               :0:0060:0073[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): 0-13 (cnt=14, max=13)
+                               - used (merged): 0-27 (cnt=28, max=27)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): 2-5 (cnt=4, max=5)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): 0-18 20-26 32-34 36-38 40-42 52 (cnt=36, max=52)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): 6-13 (cnt=8, max=13)  (estimated)
+                               - shaderdb: 74 instructions, 38 nops, 36 non-nops, (61 instlen), 0 half, 4 full
+                               - shaderdb: 1 (ss), 0 (sy)
+109cf96c:                      0000: c0813000 01200000 00000000 10000002 40700000 10030002 40700001 00001004
+109cf98c:                      0020: 63818000 00011007 63818001 00001008 63820000 0001100b 63820001 0000100c
+109cf9ac:                      0040: 63828006 10010002 40700000 0001100f 63828009 00001005 63818000 00000010
+109cf9cc:                      0060: 20244001 00001009 63820000 00000000 00000000 0000100d 63828007 10020002
+109cf9ec:                      0080: 40700000 00000015 20244002 00001006 63818000 00000016 20244003 0000100a
+109cfa0c:                      00a0: 63820000 00000017 20244004 0000100e 63828008 00000011 20244000 00021021
+109cfa2c:                      00c0: 40100002 00041017 4050040d 00031022 40100003 00001011 40700000 00000000
+109cfa4c:                      00e0: 00000000 00001010 63808000 00000012 20244001 00000000 00000200 00001012
+109cfa6c:                      0100: 63808000 00000014 20244001 00000000 00000200 00011020 40100001 00000000
+109cfa8c:                      0120: 00000000 00000000 80300000 00001011 40701004 00000000 00000200 10190004
+109cfaac:                      0140: 40700004 00001010 40700005 00000000 00000200 00041018 63828004 00001012
+109cfacc:                      0160: 40700000 00000000 00000200 0004101a 63800000 00000000 00000200 00001034
+109cfaec:                      0180: 40b00004 00001034 40500000 00000000 00000100 00000004 200c4004 00011024
+109cfb0c:                      01a0: 63800001 00021025 63800002 00031026 63800000 00011028 6382040a 00021029
+109cfb2c:                      01c0: 6382040b 0000102a 6382040c 00000000 03000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (35 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :0:0000:0000[00000000x_00000000x] nop
+                               :6:0001:0001[c7c60000x_01c00000x] ldlv.u32 r0.x, l[0], 1
+                               :6:0002:0002[c7c60001x_01c00002x] ldlv.u32 r0.y, l[1], 1
+                               :6:0003:0003[c7c60002x_01c00004x] ldlv.u32 r0.z, l[2], 1
+                               :6:0004:0004[c7c60003x_01c00006x] ldlv.u32 r0.w, l[3], 1
+                               :2:0005:0005[473090fcx_00002000x] (ss)bary.f (ei)r63.x, 0, r0.x
+                               :0:0006:0006[03000000x_00000000x] end
+                               :0:0007:0007[00000000x_00000000x] nop
+                               :0:0008:0008[00000000x_00000000x] nop
+                               :0:0009:0009[00000000x_00000000x] nop
+                               :0:0010:0010[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): 0-3 252 (cnt=5, max=3)
+                               - used (merged): 0-7 504-505 (cnt=10, max=7)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): 0-3 (cnt=4, max=3)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): (cnt=0, max=0)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): 252 (cnt=1, max=0)  (estimated)
+                               - shaderdb: 11 instructions, 5 nops, 6 non-nops, (11 instlen), 0 half, 1 full
+                               - shaderdb: 1 (ss), 0 (sy)
+109cfb78:                      0000: c0213000 00700000 00000000 00000000 00000000 01c00000 c7c60000 01c00002
+109cfb98:                      0020: c7c60001 01c00004 c7c60002 01c00006 c7c60003 00002000 473090fc 00000000
+109cfbb8:                      0040: 03000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
+109cfc04:                      0000: c0002600 00000000
+t3                     opcode: CP_LOAD_STATE4 (30) (51 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
+                               { STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
+109cfc18:                              4.276816 0.109522 0.611668 0.517565 0.677381 4.774377 -0.312365 -0.264309
+109cfc38:                              2.500000 -1.480991 -0.961761 -0.813798 13.423393 -6.746271 38.893391 42.140564
+109cfc58:                              0.000000 0.000000 1.000000 1.000000 0.000000 0.160000 0.040000 1.000000
+109cfc78:                              -0.064448 0.660942 0.747665 0.000000 1.000000 0.000000 0.000000 0.000000
+109cfc98:                              0.000000 0.000000 0.000000 1.000000 0.000000 0.800000 0.200000 1.000000
+109cfcb8:                              0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000
+109cfc18:                              0000: 4088dbad 3de04cdc 3f1c964b 3f047f2c 3f2d68da 4098c7b2 be9fee59 be875387
+109cfc38:                              0020: 40200000 bfbd9119 bf7635f5 bf50550b 4156c638 c0d7e173 421b92d5 42288ff0
+109cfc58:                              0040: 00000000 00000000 3f800000 3f800000 00000000 3e23d70b 3d23d70b 3f800000
+109cfc78:                              0060: bd83fd0e 3f293379 3f3f66f5 00000000 3f800000 00000000 00000000 00000000
+109cfc98:                              0080: 00000000 00000000 00000000 3f800000 00000000 3f4ccccd 3e4ccccd 3f800000
+109cfcb8:                              00a0: 00000000 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000
+109cfc0c:                      0000: c0313000 03200000 00000001 4088dbad 3de04cdc 3f1c964b 3f047f2c 3f2d68da
+109cfc2c:                      0020: 4098c7b2 be9fee59 be875387 40200000 bfbd9119 bf7635f5 bf50550b 4156c638
+109cfc4c:                      0040: c0d7e173 421b92d5 42288ff0 00000000 00000000 3f800000 3f800000 00000000
+109cfc6c:                      0060: 3e23d70b 3d23d70b 3f800000 bd83fd0e 3f293379 3f3f66f5 00000000 3f800000
+109cfc8c:                      0080: 00000000 00000000 00000000 00000000 00000000 00000000 3f800000 00000000
+109cfcac:                      00a0: 3f4ccccd 3e4ccccd 3f800000 00000000 00000000 00000000 3f800000 00000000
+109cfccc:                      00c0: 00000000 00000000 3f800000
+t3                     opcode: CP_LOAD_STATE4 (30) (7 dwords)
+                               { DST_OFF = 13 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 1 }
+                               { STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
+109cfce4:                              0.000000 -28026765312.000000 -28026765312.000000 -28026765312.000000
+109cfce4:                              0000: 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
+109cfcd8:                      0000: c0053000 0060000d 00000001 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
+t0                     write VFD_FETCH[0].INSTR_0 (220a)
+                               VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
+                               VFD_FETCH[0].INSTR_1: 0x107cb000
+                               VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
+                               VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
+109cfcf4:                      0000: 0003220a 0000060b 107cb000 00100000 00000001
+t0                     write VFD_DECODE[0].INSTR (228a)
+                               VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
+109cfd08:                      0000: 0000228a 2c0020df
+t0                     write VFD_CONTROL_0 (2200)
+                               VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
+                               VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
+                               VFD_CONTROL_2: 0
+                               VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
+                               VFD_CONTROL_4: 0
+109cfd10:                      0000: 00042200 041a0004 fcfc0081 00000000 0000fc00 00000000
+t0                     write UCHE_INVALIDATE0 (0e8a)
+                               UCHE_INVALIDATE0: 0
+                               UCHE_INVALIDATE1: 0x12
+109cfd28:                      0000: 00010e8a 00000000 00000012
+t0                     write VFD_INDEX_OFFSET (2208)
+                               VFD_INDEX_OFFSET: 0
+                               UNKNOWN_2209: 0
+109cfd34:                      0000: 00012208 00000000 00000000
+t0                     write PC_RESTART_INDEX (21c6)
+                               PC_RESTART_INDEX: 0xffffffff
+109cfd40:                      0000: 000021c6 ffffffff
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x2c
+                               :0,43,115,44
+109cfd48:                      0000: 0000057f 0000002c
+t3                     opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
+                               { PRIM_TYPE = DI_PT_TRILIST | SOURCE_SELECT = DI_SRC_SEL_DMA | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_16_BIT | PATCH_TYPE = TESS_QUADS }
+                               { NUM_INSTANCES = 1 }
+                               { NUM_INDICES = 120 }
+                               { FIRST_INDX = 0 }
+                               { INDX_BASE = 0x10bd0a50 }
+                               { INDX_SIZE = 240 }
+                       draw[7] register values
+!+     0000002b                        CP_SCRATCH[0x5].REG: 0x2b
+                       :0,43,115,44
+!+     0000002c                        CP_SCRATCH[0x7].REG: 0x2c
+                       :0,43,115,44
+ +     00000000                        UCHE_INVALIDATE0: 0
+ +     00000012                        UCHE_INVALIDATE1: 0x12
+ +     00080000                        GRAS_CL_CLIP_CNTL: { 0x80000 }
+!+     00000000                        GRAS_CNTL: { 0 }
+ +     00100010                        GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
+ +     00000010                        GRAS_SU_POINT_SIZE: 1.000000
+ +     00000000                        GRAS_ALPHA_CONTROL: { 0 }
+ +     00000000                        GRAS_SU_POLY_OFFSET_SCALE: 0.000000
+ +     00000000                        GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
+ +     00000000                        GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
+ +     00100012                        GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
+ +     012b012b                        GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
+ +     00000000                        GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
+!+     00000000                        RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
+ +     00000001                        RB_FS_OUTPUT_REG: { MRT = 1 }
+ +     80000016                        RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_TEST_ENABLE }
+ +     00000000                        RB_VPORT_Z_CLAMP[0].MIN: 0
+ +     00ffffff                        RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
+ +     42001004                        VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
+ +     00040400                        VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
+!+     00000055                        VPC_VARYING_INTERP[0].MODE: 0x55
+ +     00000000                        VPC_VARYING_INTERP[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x7].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x7].MODE: 0
+ +     02000001                        PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+ +     00000012                        PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+ +     ffffffff                        PC_RESTART_INDEX: 0xffffffff
+!+     041a0004                        VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
+ +     fcfc0081                        VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
+ +     00000000                        VFD_CONTROL_2: 0
+ +     0000fc00                        VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
+ +     00000000                        VFD_CONTROL_4: 0
+ +     00000000                        VFD_INDEX_OFFSET: 0
+ +     00000000                        UNKNOWN_2209: 0
+!+     0000060b                        VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
+ +     107cb000                        VFD_FETCH[0].INSTR_1: 0x107cb000
+ +     00100000                        VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
+ +     00000001                        VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
+!+     2c0020df                        VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
+ +     00140010                        SP_SP_CTRL_REG: { 0x140010 }
+ +     000005ff                        SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+!+     00201000                        SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 4 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+!+     04000042                        SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
+!+     0010fc06                        SP_VS_PARAM_REG: { POSREGID = r1.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
+!+     00001e0a                        SP_VS_OUT[0].REG: { A_REGID = r2.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
+ +     08080808                        SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
+ +     00000000                        SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+!+     10cd0000                        SP_VS_OBJ_START: 0x10cd0000
+ +     00000004                        SP_VS_LENGTH_REG: 4
+!+     00340402                        SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+ +     8010003e                        SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
+ +     7e420000                        SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+!+     10cd2000                        SP_FS_OBJ_START: 0x10cd2000
+ +     00000001                        SP_FS_LENGTH_REG: 1
+ +     0000fc01                        SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+!+     0001a000                        SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+!+     00000000                        SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     00000000                        SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     00000000                        SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     00000000                        SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     00000000                        SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     00000000                        SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     00000000                        SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     7e420000                        SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                        SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                        SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     28000250                        HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+ +     fcfc0100                        HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+ +     fff3f3f0                        HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+!+     fcfcfcfc                        HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+ +     00fcfcfc                        HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+ +     04000042                        HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
+ +     017e423e                        HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+ +     007e4200                        HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                        HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                        HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     00000003                        HLSQ_UPDATE_CONTROL: 0x3
+109cfd50:                      0000: c0053800 00000404 00000001 00000078 00000000 10bd0a50 000000f0
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x2d
+                               :0,43,115,45
+109cfd6c:                      0000: 0000057f 0000002d
+t0                     write CP_SCRATCH[0x5].REG (057d)
+                               CP_SCRATCH[0x5].REG: 0x31
+                               :0,49,115,45
+109cfd74:                      0000: 0000057d 00000031
+t0                     write PC_PRIM_VTX_CNTL (21c4)
+                               PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+                               PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+109cfd7c:                      0000: 000121c4 02000001 00000012
+t0                     write VFD_INDEX_OFFSET (2208)
+                               VFD_INDEX_OFFSET: 0
+                               UNKNOWN_2209: 0
+109cfd88:                      0000: 00012208 00000000 00000000
+t0                     write PC_RESTART_INDEX (21c6)
+                               PC_RESTART_INDEX: 0xffffffff
+109cfd94:                      0000: 000021c6 ffffffff
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x32
+                               :0,49,115,50
+109cfd9c:                      0000: 0000057f 00000032
+t3                     opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
+                               { PRIM_TYPE = DI_PT_TRILIST | SOURCE_SELECT = DI_SRC_SEL_DMA | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_16_BIT | PATCH_TYPE = TESS_QUADS }
+                               { NUM_INSTANCES = 1 }
+                               { NUM_INDICES = 60 }
+                               { FIRST_INDX = 0 }
+                               { INDX_BASE = 0x10bd0b40 }
+                               { INDX_SIZE = 120 }
+                       draw[8] register values
+!+     00000031                        CP_SCRATCH[0x5].REG: 0x31
+                       :0,49,115,50
+!+     00000032                        CP_SCRATCH[0x7].REG: 0x32
+                       :0,49,115,50
+ +     02000001                        PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+ +     00000012                        PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+ +     ffffffff                        PC_RESTART_INDEX: 0xffffffff
+ +     00000000                        VFD_INDEX_OFFSET: 0
+ +     00000000                        UNKNOWN_2209: 0
+109cfda4:                      0000: c0053800 00000404 00000001 0000003c 00000000 10bd0b40 00000078
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x33
+                               :0,49,115,51
+109cfdc0:                      0000: 0000057f 00000033
+t0                     write CP_SCRATCH[0x5].REG (057d)
+                               CP_SCRATCH[0x5].REG: 0x37
+                               :0,55,115,51
+109cfdc8:                      0000: 0000057d 00000037
+t0                     write PC_PRIM_VTX_CNTL (21c4)
+                               PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+                               PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+109cfdd0:                      0000: 000121c4 02000001 00000012
+t3                     opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
+109cfddc:                      0000: c0002600 00000000
+t3                     opcode: CP_LOAD_STATE4 (30) (51 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
+                               { STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
+109cfdf0:                              4.276816 0.109522 0.611668 0.517565 0.677381 4.774377 -0.312365 -0.264309
+109cfe10:                              2.500000 -1.480991 -0.961761 -0.813798 13.423393 -6.746271 38.893391 42.140564
+109cfe30:                              0.000000 0.000000 -1.000000 1.000000 0.000000 0.160000 0.040000 1.000000
+109cfe50:                              -0.064448 0.660942 0.747665 0.000000 1.000000 0.000000 0.000000 0.000000
+109cfe70:                              0.000000 0.000000 0.000000 1.000000 0.000000 0.800000 0.200000 1.000000
+109cfe90:                              0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000
+109cfdf0:                              0000: 4088dbad 3de04cdc 3f1c964b 3f047f2c 3f2d68da 4098c7b2 be9fee59 be875387
+109cfe10:                              0020: 40200000 bfbd9119 bf7635f5 bf50550b 4156c638 c0d7e173 421b92d5 42288ff0
+109cfe30:                              0040: 00000000 00000000 bf800000 3f800000 00000000 3e23d70b 3d23d70b 3f800000
+109cfe50:                              0060: bd83fd0e 3f293379 3f3f66f5 00000000 3f800000 00000000 00000000 00000000
+109cfe70:                              0080: 00000000 00000000 00000000 3f800000 00000000 3f4ccccd 3e4ccccd 3f800000
+109cfe90:                              00a0: 00000000 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000
+109cfde4:                      0000: c0313000 03200000 00000001 4088dbad 3de04cdc 3f1c964b 3f047f2c 3f2d68da
+109cfe04:                      0020: 4098c7b2 be9fee59 be875387 40200000 bfbd9119 bf7635f5 bf50550b 4156c638
+109cfe24:                      0040: c0d7e173 421b92d5 42288ff0 00000000 00000000 bf800000 3f800000 00000000
+109cfe44:                      0060: 3e23d70b 3d23d70b 3f800000 bd83fd0e 3f293379 3f3f66f5 00000000 3f800000
+109cfe64:                      0080: 00000000 00000000 00000000 00000000 00000000 00000000 3f800000 00000000
+109cfe84:                      00a0: 3f4ccccd 3e4ccccd 3f800000 00000000 00000000 00000000 3f800000 00000000
+109cfea4:                      00c0: 00000000 00000000 3f800000
+t0                     write VFD_INDEX_OFFSET (2208)
+                               VFD_INDEX_OFFSET: 0
+                               UNKNOWN_2209: 0
+109cfeb0:                      0000: 00012208 00000000 00000000
+t0                     write PC_RESTART_INDEX (21c6)
+                               PC_RESTART_INDEX: 0xffffffff
+109cfebc:                      0000: 000021c6 ffffffff
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x38
+                               :0,55,115,56
+109cfec4:                      0000: 0000057f 00000038
+t3                     opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
+                               { PRIM_TYPE = DI_PT_TRILIST | SOURCE_SELECT = DI_SRC_SEL_DMA | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_16_BIT | PATCH_TYPE = TESS_QUADS }
+                               { NUM_INSTANCES = 1 }
+                               { NUM_INDICES = 120 }
+                               { FIRST_INDX = 0 }
+                               { INDX_BASE = 0x10bd0bb8 }
+                               { INDX_SIZE = 240 }
+                       draw[9] register values
+!+     00000037                        CP_SCRATCH[0x5].REG: 0x37
+                       :0,55,115,56
+!+     00000038                        CP_SCRATCH[0x7].REG: 0x38
+                       :0,55,115,56
+ +     02000001                        PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+ +     00000012                        PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+ +     ffffffff                        PC_RESTART_INDEX: 0xffffffff
+ +     00000000                        VFD_INDEX_OFFSET: 0
+ +     00000000                        UNKNOWN_2209: 0
+109cfecc:                      0000: c0053800 00000404 00000001 00000078 00000000 10bd0bb8 000000f0
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x39
+                               :0,55,115,57
+109cfee8:                      0000: 0000057f 00000039
+t0                     write CP_SCRATCH[0x5].REG (057d)
+                               CP_SCRATCH[0x5].REG: 0x3d
+                               :0,61,115,57
+109cfef0:                      0000: 0000057d 0000003d
+t0                     write PC_PRIM_VTX_CNTL (21c4)
+                               PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+                               PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+109cfef8:                      0000: 000121c4 02000001 00000012
+t0                     write VFD_INDEX_OFFSET (2208)
+                               VFD_INDEX_OFFSET: 0
+                               UNKNOWN_2209: 0
+109cff04:                      0000: 00012208 00000000 00000000
+t0                     write PC_RESTART_INDEX (21c6)
+                               PC_RESTART_INDEX: 0xffffffff
+109cff10:                      0000: 000021c6 ffffffff
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x3e
+                               :0,61,115,62
+109cff18:                      0000: 0000057f 0000003e
+t3                     opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
+                               { PRIM_TYPE = DI_PT_TRILIST | SOURCE_SELECT = DI_SRC_SEL_DMA | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_16_BIT | PATCH_TYPE = TESS_QUADS }
+                               { NUM_INSTANCES = 1 }
+                               { NUM_INDICES = 60 }
+                               { FIRST_INDX = 0 }
+                               { INDX_BASE = 0x10bd0ca8 }
+                               { INDX_SIZE = 120 }
+                       draw[10] register values
+!+     0000003d                        CP_SCRATCH[0x5].REG: 0x3d
+                       :0,61,115,62
+!+     0000003e                        CP_SCRATCH[0x7].REG: 0x3e
+                       :0,61,115,62
+ +     02000001                        PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+ +     00000012                        PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+ +     ffffffff                        PC_RESTART_INDEX: 0xffffffff
+ +     00000000                        VFD_INDEX_OFFSET: 0
+ +     00000000                        UNKNOWN_2209: 0
+109cff20:                      0000: c0053800 00000404 00000001 0000003c 00000000 10bd0ca8 00000078
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x3f
+                               :0,61,115,63
+109cff3c:                      0000: 0000057f 0000003f
+t0                     write CP_SCRATCH[0x5].REG (057d)
+                               CP_SCRATCH[0x5].REG: 0x43
+                               :0,67,115,63
+109cff44:                      0000: 0000057d 00000043
+t0                     write RB_DEPTH_CONTROL (2101)
+                               RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_TEST_ENABLE }
+109cff4c:                      0000: 00002101 80000016
+t0                     write GRAS_ALPHA_CONTROL (2073)
+                               GRAS_ALPHA_CONTROL: { 0 }
+109cff54:                      0000: 00002073 00000000
+t0                     write PC_PRIM_VTX_CNTL (21c4)
+                               PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+                               PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+109cff5c:                      0000: 000121c4 02000001 00000012
+t0                     write HLSQ_UPDATE_CONTROL (23db)
+                               HLSQ_UPDATE_CONTROL: 0x3
+109cff68:                      0000: 000023db 00000003
+t0                     write HLSQ_CONTROL_0_REG (23c0)
+                               HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+                               HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+                               HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+                               HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+                               HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+109cff70:                      0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfcfc 00fcfcfc
+t0                     write HLSQ_VS_CONTROL_REG (23c5)
+                               HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
+                               HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+                               HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+109cff88:                      0000: 000423c5 04000042 017e423e 007e4200 007e4200 007e4200
+t0                     write SP_SP_CTRL_REG (22c0)
+                               SP_SP_CTRL_REG: { 0x140010 }
+109cffa0:                      0000: 000022c0 00140010
+t0                     write SP_INSTR_CACHE_CTRL (22c1)
+                               SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+109cffa8:                      0000: 000022c1 000005ff
+t0                     write SP_VS_LENGTH_REG (22e5)
+                               SP_VS_LENGTH_REG: 4
+109cffb0:                      0000: 000022e5 00000004
+t0                     write SP_VS_CTRL_REG0 (22c4)
+                               SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+                               SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
+                               SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
+109cffb8:                      0000: 000222c4 00201400 08000042 0010fc0a
+t0                     write SP_VS_OUT[0].REG (22c7)
+                               SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
+109cffc8:                      0000: 000022c7 00001e0e
+t0                     write SP_VS_VPC_DST[0].REG (22d8)
+                               SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
+109cffd0:                      0000: 000022d8 08080808
+t0                     write SP_VS_OBJ_OFFSET_REG (22e0)
+                               SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+                               SP_VS_OBJ_START: 0x10cd5000
+109cffd8:                      0000: 000122e0 00000000 10cd5000
+t0                     write SP_FS_LENGTH_REG (22ef)
+                               SP_FS_LENGTH_REG: 1
+109cffe4:                      0000: 000022ef 00000001
+t0                     write SP_FS_CTRL_REG0 (22e8)
+                               SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+                               SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
+109cffec:                      0000: 000122e8 00340402 8010003e
+t0                     write SP_FS_OBJ_OFFSET_REG (22ea)
+                               SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+                               SP_FS_OBJ_START: 0x10cd2000
+109cfff8:                      0000: 000122ea 7e420000 10cd2000
+t0                     write SP_HS_OBJ_OFFSET_REG (230d)
+                               SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109d0004:                      0000: 0000230d 7e420000
+t0                     write SP_DS_OBJ_OFFSET_REG (2334)
+                               SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109d000c:                      0000: 00002334 7e420000
+t0                     write SP_GS_OBJ_OFFSET_REG (235b)
+                               SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109d0014:                      0000: 0000235b 7e420000
+t0                     write GRAS_CNTL (2003)
+                               GRAS_CNTL: { 0 }
+109d001c:                      0000: 00002003 00000000
+t0                     write RB_RENDER_CONTROL2 (20a3)
+                               RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
+109d0024:                      0000: 000020a3 00000000
+t0                     write RB_FS_OUTPUT_REG (2100)
+                               RB_FS_OUTPUT_REG: { MRT = 1 }
+109d002c:                      0000: 00002100 00000001
+t0                     write SP_FS_OUTPUT_REG (22f0)
+                               SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+109d0034:                      0000: 000022f0 0000fc01
+t0                     write SP_FS_MRT[0].REG (22f1)
+                               SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+                               SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
+109d003c:                      0000: 000722f1 0001a000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0                     write VPC_ATTR (2140)
+                               VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
+                               VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
+109d0060:                      0000: 00012140 42001004 00040400
+t0                     write VPC_VARYING_INTERP[0].MODE (2142)
+                               VPC_VARYING_INTERP[0].MODE: 0x55
+                               VPC_VARYING_INTERP[0x1].MODE: 0
+                               VPC_VARYING_INTERP[0x2].MODE: 0
+                               VPC_VARYING_INTERP[0x3].MODE: 0
+                               VPC_VARYING_INTERP[0x4].MODE: 0
+                               VPC_VARYING_INTERP[0x5].MODE: 0
+                               VPC_VARYING_INTERP[0x6].MODE: 0
+                               VPC_VARYING_INTERP[0x7].MODE: 0
+109d006c:                      0000: 00072142 00000055 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0                     write VPC_VARYING_PS_REPL[0].MODE (214a)
+                               VPC_VARYING_PS_REPL[0].MODE: 0
+                               VPC_VARYING_PS_REPL[0x1].MODE: 0
+                               VPC_VARYING_PS_REPL[0x2].MODE: 0
+                               VPC_VARYING_PS_REPL[0x3].MODE: 0
+                               VPC_VARYING_PS_REPL[0x4].MODE: 0
+                               VPC_VARYING_PS_REPL[0x5].MODE: 0
+                               VPC_VARYING_PS_REPL[0x6].MODE: 0
+                               VPC_VARYING_PS_REPL[0x7].MODE: 0
+109d0090:                      0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (131 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 4 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :2:0000:0000[40700000x_10000002x] mul.f r0.x, r0.z, c0.x
+                               :2:0001:0001[40700001x_10030002x] mul.f r0.y, r0.z, c0.w
+                               :3:0002:0002[63818000x_00001004x] mad.f32 r0.x, c1.x, r0.w, r0.x
+                               :3:0003:0003[63818001x_00011007x] mad.f32 r0.y, c1.w, r0.w, r0.y
+                               :3:0004:0004[63820000x_00001008x] mad.f32 r0.x, c2.x, r1.x, r0.x
+                               :3:0005:0005[63820001x_0001100bx] mad.f32 r0.y, c2.w, r1.x, r0.y
+                               :3:0006:0006[6382800ax_0000100cx] mad.f32 r2.z, c3.x, r1.y, r0.x
+                               :2:0007:0007[40700000x_10010002x] mul.f r0.x, r0.z, c0.y
+                               :3:0008:0008[6382800dx_0001100fx] mad.f32 r3.y, c3.w, r1.y, r0.y
+                               :3:0009:0009[63818000x_00001005x] mad.f32 r0.x, c1.y, r0.w, r0.x
+                               :1:0010:0010[20244001x_00000010x] mov.f32f32 r0.y, c4.x
+                               :3:0011:0011[63820000x_00001009x] mad.f32 r0.x, c2.y, r1.x, r0.x
+                               :0:0012:0012[00000000x_00000000x] nop
+                               :3:0013:0013[6382800bx_0000100dx] mad.f32 r2.w, c3.y, r1.y, r0.x
+                               :2:0014:0014[40700000x_10020002x] mul.f r0.x, r0.z, c0.z
+                               :2:0015:0015[40100001x_0001101cx] add.f r0.y, c7.x, r0.y
+                               :3:0016:0016[63818000x_00001006x] mad.f32 r0.x, c1.z, r0.w, r0.x
+                               :1:0017:0017[20244002x_00000011x] mov.f32f32 r0.z, c4.y
+                               :3:0018:0018[63820000x_0000100ax] mad.f32 r0.x, c2.z, r1.x, r0.x
+                               :1:0019:0019[20244004x_00000013x] mov.f32f32 r1.x, c4.w
+                               :3:0020:0020[6382800cx_0000100ex] mad.f32 r3.x, c3.z, r1.y, r0.x
+                               :2:0021:0021[40700000x_00070007x] mul.f r0.x, r1.w, r1.w
+                               :2:0022:0022[40100002x_0002101dx] add.f r0.z, c7.y, r0.z
+                               :3:0023:0023[63830000x_00000006x] mad.f32 r0.x, r1.z, r1.z, r0.x
+                               :2:0024:0024[40500411x_00041013x] (sat)max.f r4.y, c4.w, r1.x
+                               :3:0025:0025[63840000x_00000008x] mad.f32 r0.x, r2.x, r2.x, r0.x
+                               :1:0026:0026[20244003x_00000012x] mov.f32f32 r0.w, c4.z
+                               :0:0027:0027[00000200x_00000000x] (rpt2)nop
+                               :2:0028:0030[40100003x_0003101ex] add.f r0.w, c7.z, r0.w
+                               :0:0029:0031[00000000x_00000000x] nop
+                               :4:0030:0032[80300000x_00000000x] rsq r0.x, r0.x
+                               :2:0031:0033[40701004x_00000007x] (ss)mul.f r1.x, r1.w, r0.x
+                               :0:0032:0034[00000200x_00000000x] (rpt2)nop
+                               :2:0033:0037[40700004x_10150004x] mul.f r1.x, r1.x, c5.y
+                               :2:0034:0038[40700005x_00000006x] mul.f r1.y, r1.z, r0.x
+                               :0:0035:0039[00000200x_00000000x] (rpt2)nop
+                               :3:0036:0042[63828004x_00041014x] mad.f32 r1.x, c5.x, r1.y, r1.x
+                               :2:0037:0043[40700000x_00000008x] mul.f r0.x, r2.x, r0.x
+                               :0:0038:0044[00000200x_00000000x] (rpt2)nop
+                               :3:0039:0047[63800000x_00041016x] mad.f32 r0.x, c5.z, r0.x, r1.x
+                               :0:0040:0048[00000200x_00000000x] (rpt2)nop
+                               :2:0041:0051[40b00004x_00001034x] cmps.f.lt r1.x, c13.x, r0.x
+                               :2:0042:0052[40500000x_00001034x] max.f r0.x, c13.x, r0.x
+                               :0:0043:0053[00000100x_00000000x] (rpt1)nop
+                               :1:0044:0055[200c4004x_00000004x] cov.u32f32 r1.x, r1.x
+                               :3:0045:0056[63800001x_00011020x] mad.f32 r0.y, c8.x, r0.x, r0.y
+                               :3:0046:0057[63800002x_00021021x] mad.f32 r0.z, c8.y, r0.x, r0.z
+                               :3:0047:0058[63800000x_00031022x] mad.f32 r0.x, c8.z, r0.x, r0.w
+                               :3:0048:0059[6382040ex_00011024x] (sat)mad.f32 r3.z, c9.x, r1.x, r0.y
+                               :3:0049:0060[6382040fx_00021025x] (sat)mad.f32 r3.w, c9.y, r1.x, r0.z
+                               :3:0050:0061[63820410x_00001026x] (sat)mad.f32 r4.x, c9.z, r1.x, r0.x
+                               :0:0051:0062[03000000x_00000000x] end
+                               :0:0052:0063[00000000x_00000000x] nop
+                               :0:0053:0064[00000000x_00000000x] nop
+                               :0:0054:0065[00000000x_00000000x] nop
+                               :0:0055:0066[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): 0-8 10-17 (cnt=17, max=17)
+                               - used (merged): 0-17 20-35 (cnt=34, max=35)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): 2-8 (cnt=7, max=8)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): 0-22 28-30 32-34 36-38 52 (cnt=33, max=52)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): 10-17 (cnt=8, max=17)  (estimated)
+                               - shaderdb: 67 instructions, 31 nops, 36 non-nops, (56 instlen), 0 half, 5 full
+                               - shaderdb: 1 (ss), 0 (sy)
+109d00b4:                      0000: c0813000 01200000 00000000 10000002 40700000 10030002 40700001 00001004
+109d00d4:                      0020: 63818000 00011007 63818001 00001008 63820000 0001100b 63820001 0000100c
+109d00f4:                      0040: 6382800a 10010002 40700000 0001100f 6382800d 00001005 63818000 00000010
+109d0114:                      0060: 20244001 00001009 63820000 00000000 00000000 0000100d 6382800b 10020002
+109d0134:                      0080: 40700000 0001101c 40100001 00001006 63818000 00000011 20244002 0000100a
+109d0154:                      00a0: 63820000 00000013 20244004 0000100e 6382800c 00070007 40700000 0002101d
+109d0174:                      00c0: 40100002 00000006 63830000 00041013 40500411 00000008 63840000 00000012
+109d0194:                      00e0: 20244003 00000000 00000200 0003101e 40100003 00000000 00000000 00000000
+109d01b4:                      0100: 80300000 00000007 40701004 00000000 00000200 10150004 40700004 00000006
+109d01d4:                      0120: 40700005 00000000 00000200 00041014 63828004 00000008 40700000 00000000
+109d01f4:                      0140: 00000200 00041016 63800000 00000000 00000200 00001034 40b00004 00001034
+109d0214:                      0160: 40500000 00000000 00000100 00000004 200c4004 00011020 63800001 00021021
+109d0234:                      0180: 63800002 00031022 63800000 00011024 6382040e 00021025 6382040f 00001026
+109d0254:                      01a0: 63820410 00000000 03000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (35 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :0:0000:0000[00000000x_00000000x] nop
+                               :6:0001:0001[c7c60000x_01c00000x] ldlv.u32 r0.x, l[0], 1
+                               :6:0002:0002[c7c60001x_01c00002x] ldlv.u32 r0.y, l[1], 1
+                               :6:0003:0003[c7c60002x_01c00004x] ldlv.u32 r0.z, l[2], 1
+                               :6:0004:0004[c7c60003x_01c00006x] ldlv.u32 r0.w, l[3], 1
+                               :2:0005:0005[473090fcx_00002000x] (ss)bary.f (ei)r63.x, 0, r0.x
+                               :0:0006:0006[03000000x_00000000x] end
+                               :0:0007:0007[00000000x_00000000x] nop
+                               :0:0008:0008[00000000x_00000000x] nop
+                               :0:0009:0009[00000000x_00000000x] nop
+                               :0:0010:0010[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): 0-3 252 (cnt=5, max=3)
+                               - used (merged): 0-7 504-505 (cnt=10, max=7)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): 0-3 (cnt=4, max=3)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): (cnt=0, max=0)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): 252 (cnt=1, max=0)  (estimated)
+                               - shaderdb: 11 instructions, 5 nops, 6 non-nops, (11 instlen), 0 half, 1 full
+                               - shaderdb: 1 (ss), 0 (sy)
+109d02c0:                      0000: c0213000 00700000 00000000 00000000 00000000 01c00000 c7c60000 01c00002
+109d02e0:                      0020: c7c60001 01c00004 c7c60002 01c00006 c7c60003 00002000 473090fc 00000000
+109d0300:                      0040: 03000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
+109d034c:                      0000: c0002600 00000000
+t3                     opcode: CP_LOAD_STATE4 (30) (51 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
+                               { STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
+109d0360:                              4.276816 0.109522 0.611668 0.517565 0.677381 4.774377 -0.312365 -0.264309
+109d0380:                              2.500000 -1.480991 -0.961761 -0.813798 13.423393 -6.746271 38.893391 42.140564
+109d03a0:                              0.000000 0.160000 0.040000 1.000000 -0.064448 0.660942 0.747665 0.000000
+109d03c0:                              1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000
+109d03e0:                              0.000000 0.800000 0.200000 1.000000 0.000000 0.000000 0.000000 1.000000
+109d0400:                              0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000
+109d0360:                              0000: 4088dbad 3de04cdc 3f1c964b 3f047f2c 3f2d68da 4098c7b2 be9fee59 be875387
+109d0380:                              0020: 40200000 bfbd9119 bf7635f5 bf50550b 4156c638 c0d7e173 421b92d5 42288ff0
+109d03a0:                              0040: 00000000 3e23d70b 3d23d70b 3f800000 bd83fd0e 3f293379 3f3f66f5 00000000
+109d03c0:                              0060: 3f800000 00000000 00000000 00000000 00000000 00000000 00000000 3f800000
+109d03e0:                              0080: 00000000 3f4ccccd 3e4ccccd 3f800000 00000000 00000000 00000000 3f800000
+109d0400:                              00a0: 00000000 00000000 00000000 3f800000 02020000 02020202 02020202 00000202
+109d0354:                      0000: c0313000 03200000 00000001 4088dbad 3de04cdc 3f1c964b 3f047f2c 3f2d68da
+109d0374:                      0020: 4098c7b2 be9fee59 be875387 40200000 bfbd9119 bf7635f5 bf50550b 4156c638
+109d0394:                      0040: c0d7e173 421b92d5 42288ff0 00000000 3e23d70b 3d23d70b 3f800000 bd83fd0e
+109d03b4:                      0060: 3f293379 3f3f66f5 00000000 3f800000 00000000 00000000 00000000 00000000
+109d03d4:                      0080: 00000000 00000000 3f800000 00000000 3f4ccccd 3e4ccccd 3f800000 00000000
+109d03f4:                      00a0: 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000 02020000
+109d0414:                      00c0: 02020202 02020202 00000202
+t3                     opcode: CP_LOAD_STATE4 (30) (7 dwords)
+                               { DST_OFF = 13 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 1 }
+                               { STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
+109d042c:                              0.000000 -28026765312.000000 -28026765312.000000 -28026765312.000000
+109d042c:                              0000: 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
+109d0420:                      0000: c0053000 0060000d 00000001 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
+t0                     write VFD_FETCH[0].INSTR_0 (220a)
+                               VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 | SWITCHNEXT }
+                               VFD_FETCH[0].INSTR_1: 0x107cb000
+                               VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
+                               VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
+109d043c:                      0000: 0003220a 00080c0b 107cb000 00100000 00000001
+t0                     write VFD_DECODE[0].INSTR (228a)
+                               VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID | SWITCHNEXT }
+109d0450:                      0000: 0000228a 6c0020df
+t0                     write VFD_FETCH[0x1].INSTR_0 (220e)
+                               VFD_FETCH[0x1].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 }
+                               VFD_FETCH[0x1].INSTR_1: 0x107cb00c
+                               VFD_FETCH[0x1].INSTR_2: { SIZE = 0xffff4 }
+                               VFD_FETCH[0x1].INSTR_3: { STEPRATE = 1 }
+109d0458:                      0000: 0003220e 00000c0b 107cb00c 000ffff4 00000001
+t0                     write VFD_DECODE[0x1].INSTR (228b)
+                               VFD_DECODE[0x1].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r1.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
+109d046c:                      0000: 0000228b 2c0060df
+t0                     write VFD_CONTROL_0 (2200)
+                               VFD_CONTROL_0: { TOTALATTRTOVS = 8 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 2 | STRMFETCHINSTRCNT = 2 | 0xa0000 }
+                               VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
+                               VFD_CONTROL_2: 0
+                               VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
+                               VFD_CONTROL_4: 0
+109d0474:                      0000: 00042200 082a0008 fcfc0081 00000000 0000fc00 00000000
+t0                     write UCHE_INVALIDATE0 (0e8a)
+                               UCHE_INVALIDATE0: 0
+                               UCHE_INVALIDATE1: 0x12
+109d048c:                      0000: 00010e8a 00000000 00000012
+t0                     write VFD_INDEX_OFFSET (2208)
+                               VFD_INDEX_OFFSET: 0
+                               UNKNOWN_2209: 0
+109d0498:                      0000: 00012208 00000000 00000000
+t0                     write PC_RESTART_INDEX (21c6)
+                               PC_RESTART_INDEX: 0xffffffff
+109d04a4:                      0000: 000021c6 ffffffff
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x44
+                               :0,67,115,68
+109d04ac:                      0000: 0000057f 00000044
+t3                     opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
+                               { PRIM_TYPE = DI_PT_TRILIST | SOURCE_SELECT = DI_SRC_SEL_DMA | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_16_BIT | PATCH_TYPE = TESS_QUADS }
+                               { NUM_INSTANCES = 1 }
+                               { NUM_INDICES = 240 }
+                               { FIRST_INDX = 0 }
+                               { INDX_BASE = 0x10bd0d20 }
+                               { INDX_SIZE = 480 }
+                       draw[11] register values
+!+     00000043                        CP_SCRATCH[0x5].REG: 0x43
+                       :0,67,115,68
+!+     00000044                        CP_SCRATCH[0x7].REG: 0x44
+                       :0,67,115,68
+ +     00000000                        UCHE_INVALIDATE0: 0
+ +     00000012                        UCHE_INVALIDATE1: 0x12
+ +     00000000                        GRAS_CNTL: { 0 }
+ +     00000000                        GRAS_ALPHA_CONTROL: { 0 }
+ +     00000000                        RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
+ +     00000001                        RB_FS_OUTPUT_REG: { MRT = 1 }
+ +     80000016                        RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_TEST_ENABLE }
+ +     42001004                        VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
+ +     00040400                        VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
+ +     00000055                        VPC_VARYING_INTERP[0].MODE: 0x55
+ +     00000000                        VPC_VARYING_INTERP[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x7].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x7].MODE: 0
+ +     02000001                        PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+ +     00000012                        PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+ +     ffffffff                        PC_RESTART_INDEX: 0xffffffff
+!+     082a0008                        VFD_CONTROL_0: { TOTALATTRTOVS = 8 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 2 | STRMFETCHINSTRCNT = 2 | 0xa0000 }
+ +     fcfc0081                        VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
+ +     00000000                        VFD_CONTROL_2: 0
+ +     0000fc00                        VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
+ +     00000000                        VFD_CONTROL_4: 0
+ +     00000000                        VFD_INDEX_OFFSET: 0
+ +     00000000                        UNKNOWN_2209: 0
+!+     00080c0b                        VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 | SWITCHNEXT }
+ +     107cb000                        VFD_FETCH[0].INSTR_1: 0x107cb000
+ +     00100000                        VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
+ +     00000001                        VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
+ +     00000c0b                        VFD_FETCH[0x1].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 }
+ +     107cb00c                        VFD_FETCH[0x1].INSTR_1: 0x107cb00c
+ +     000ffff4                        VFD_FETCH[0x1].INSTR_2: { SIZE = 0xffff4 }
+ +     00000001                        VFD_FETCH[0x1].INSTR_3: { STEPRATE = 1 }
+!+     6c0020df                        VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID | SWITCHNEXT }
+ +     2c0060df                        VFD_DECODE[0x1].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r1.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
+ +     00140010                        SP_SP_CTRL_REG: { 0x140010 }
+ +     000005ff                        SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+!+     00201400                        SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+!+     08000042                        SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
+!+     0010fc0a                        SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
+!+     00001e0e                        SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
+ +     08080808                        SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
+ +     00000000                        SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+!+     10cd5000                        SP_VS_OBJ_START: 0x10cd5000
+ +     00000004                        SP_VS_LENGTH_REG: 4
+ +     00340402                        SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+ +     8010003e                        SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
+ +     7e420000                        SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     10cd2000                        SP_FS_OBJ_START: 0x10cd2000
+ +     00000001                        SP_FS_LENGTH_REG: 1
+ +     0000fc01                        SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+ +     0001a000                        SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+ +     00000000                        SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     7e420000                        SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                        SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                        SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     28000250                        HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+ +     fcfc0100                        HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+ +     fff3f3f0                        HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+ +     fcfcfcfc                        HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+ +     00fcfcfc                        HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+ +     04000042                        HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
+ +     017e423e                        HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+ +     007e4200                        HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                        HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                        HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     00000003                        HLSQ_UPDATE_CONTROL: 0x3
+109d04b4:                      0000: c0053800 00000404 00000001 000000f0 00000000 10bd0d20 000001e0
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x45
+                               :0,67,115,69
+109d04d0:                      0000: 0000057f 00000045
+t0                     write CP_SCRATCH[0x5].REG (057d)
+                               CP_SCRATCH[0x5].REG: 0x49
+                               :0,73,115,69
+109d04d8:                      0000: 0000057d 00000049
+t0                     write RB_DEPTH_CONTROL (2101)
+                               RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_TEST_ENABLE }
+109d04e0:                      0000: 00002101 80000016
+t0                     write GRAS_ALPHA_CONTROL (2073)
+                               GRAS_ALPHA_CONTROL: { 0 }
+109d04e8:                      0000: 00002073 00000000
+t0                     write GRAS_SU_MODE_CONTROL (2078)
+                               GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
+109d04f0:                      0000: 00002078 00100012
+t0                     write GRAS_SU_POINT_MINMAX (2070)
+                               GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
+                               GRAS_SU_POINT_SIZE: 1.000000
+109d04f8:                      0000: 00012070 00100010 00000010
+t0                     write GRAS_SU_POLY_OFFSET_SCALE (2074)
+                               GRAS_SU_POLY_OFFSET_SCALE: 0.000000
+                               GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
+                               GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
+109d0504:                      0000: 00022074 00000000 00000000 00000000
+t0                     write GRAS_CL_CLIP_CNTL (2000)
+                               GRAS_CL_CLIP_CNTL: { 0x80000 }
+109d0514:                      0000: 00002000 00080000
+t0                     write PC_PRIM_VTX_CNTL (21c4)
+                               PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+                               PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+109d051c:                      0000: 000121c4 02000001 00000012
+t0                     write GRAS_SC_WINDOW_SCISSOR_BR (209c)
+                               GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
+                               GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
+109d0528:                      0000: 0001209c 012b012b 00000000
+t0                     write RB_VPORT_Z_CLAMP[0].MIN (2120)
+                               RB_VPORT_Z_CLAMP[0].MIN: 0
+                               RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
+109d0534:                      0000: 00012120 00000000 00ffffff
+t0                     write HLSQ_UPDATE_CONTROL (23db)
+                               HLSQ_UPDATE_CONTROL: 0x3
+109d0540:                      0000: 000023db 00000003
+t0                     write HLSQ_CONTROL_0_REG (23c0)
+                               HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+                               HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+                               HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+                               HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r0.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+                               HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+109d0548:                      0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfc00 00fcfcfc
+t0                     write HLSQ_VS_CONTROL_REG (23c5)
+                               HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
+                               HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+                               HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+109d0560:                      0000: 000423c5 04000042 017e423e 007e4200 007e4200 007e4200
+t0                     write SP_SP_CTRL_REG (22c0)
+                               SP_SP_CTRL_REG: { 0x140010 }
+109d0578:                      0000: 000022c0 00140010
+t0                     write SP_INSTR_CACHE_CTRL (22c1)
+                               SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+109d0580:                      0000: 000022c1 000005ff
+t0                     write SP_VS_LENGTH_REG (22e5)
+                               SP_VS_LENGTH_REG: 4
+109d0588:                      0000: 000022e5 00000004
+t0                     write SP_VS_CTRL_REG0 (22c4)
+                               SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+                               SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
+                               SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
+109d0590:                      0000: 000222c4 00201400 08000042 0010fc0a
+t0                     write SP_VS_OUT[0].REG (22c7)
+                               SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
+109d05a0:                      0000: 000022c7 00001e0e
+t0                     write SP_VS_VPC_DST[0].REG (22d8)
+                               SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
+109d05a8:                      0000: 000022d8 08080808
+t0                     write SP_VS_OBJ_OFFSET_REG (22e0)
+                               SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+                               SP_VS_OBJ_START: 0x10cd5000
+109d05b0:                      0000: 000122e0 00000000 10cd5000
+t0                     write SP_FS_LENGTH_REG (22ef)
+                               SP_FS_LENGTH_REG: 1
+109d05bc:                      0000: 000022ef 00000001
+t0                     write SP_FS_CTRL_REG0 (22e8)
+                               SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 2 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+                               SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
+109d05c4:                      0000: 000122e8 00340802 8010003e
+t0                     write SP_FS_OBJ_OFFSET_REG (22ea)
+                               SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+                               SP_FS_OBJ_START: 0x108cb000
+109d05d0:                      0000: 000122ea 7e420000 108cb000
+t0                     write SP_HS_OBJ_OFFSET_REG (230d)
+                               SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109d05dc:                      0000: 0000230d 7e420000
+t0                     write SP_DS_OBJ_OFFSET_REG (2334)
+                               SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109d05e4:                      0000: 00002334 7e420000
+t0                     write SP_GS_OBJ_OFFSET_REG (235b)
+                               SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109d05ec:                      0000: 0000235b 7e420000
+t0                     write GRAS_CNTL (2003)
+                               GRAS_CNTL: { IJ_PERSP }
+109d05f4:                      0000: 00002003 00000001
+t0                     write RB_RENDER_CONTROL2 (20a3)
+                               RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 | IJ_PERSP_PIXEL }
+109d05fc:                      0000: 000020a3 00001000
+t0                     write RB_FS_OUTPUT_REG (2100)
+                               RB_FS_OUTPUT_REG: { MRT = 1 }
+109d0604:                      0000: 00002100 00000001
+t0                     write SP_FS_OUTPUT_REG (22f0)
+                               SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+109d060c:                      0000: 000022f0 0000fc01
+t0                     write SP_FS_MRT[0].REG (22f1)
+                               SP_FS_MRT[0].REG: { REGID = r0.z | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+                               SP_FS_MRT[0x1].REG: { REGID = r0.z | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x2].REG: { REGID = r0.z | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x3].REG: { REGID = r0.z | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x4].REG: { REGID = r0.z | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x5].REG: { REGID = r0.z | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x6].REG: { REGID = r0.z | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x7].REG: { REGID = r0.z | MRTFORMAT = 0 }
+109d0614:                      0000: 000722f1 0001a002 00000002 00000002 00000002 00000002 00000002 00000002
+109d0634:                      0020: 00000002
+t0                     write VPC_ATTR (2140)
+                               VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
+                               VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
+109d0638:                      0000: 00012140 42001004 00040400
+t0                     write VPC_VARYING_INTERP[0].MODE (2142)
+                               VPC_VARYING_INTERP[0].MODE: 0
+                               VPC_VARYING_INTERP[0x1].MODE: 0
+                               VPC_VARYING_INTERP[0x2].MODE: 0
+                               VPC_VARYING_INTERP[0x3].MODE: 0
+                               VPC_VARYING_INTERP[0x4].MODE: 0
+                               VPC_VARYING_INTERP[0x5].MODE: 0
+                               VPC_VARYING_INTERP[0x6].MODE: 0
+                               VPC_VARYING_INTERP[0x7].MODE: 0
+109d0644:                      0000: 00072142 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0                     write VPC_VARYING_PS_REPL[0].MODE (214a)
+                               VPC_VARYING_PS_REPL[0].MODE: 0
+                               VPC_VARYING_PS_REPL[0x1].MODE: 0
+                               VPC_VARYING_PS_REPL[0x2].MODE: 0
+                               VPC_VARYING_PS_REPL[0x3].MODE: 0
+                               VPC_VARYING_PS_REPL[0x4].MODE: 0
+                               VPC_VARYING_PS_REPL[0x5].MODE: 0
+                               VPC_VARYING_PS_REPL[0x6].MODE: 0
+                               VPC_VARYING_PS_REPL[0x7].MODE: 0
+109d0668:                      0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (131 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 4 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :2:0000:0000[40700000x_10000002x] mul.f r0.x, r0.z, c0.x
+                               :2:0001:0001[40700001x_10030002x] mul.f r0.y, r0.z, c0.w
+                               :3:0002:0002[63818000x_00001004x] mad.f32 r0.x, c1.x, r0.w, r0.x
+                               :3:0003:0003[63818001x_00011007x] mad.f32 r0.y, c1.w, r0.w, r0.y
+                               :3:0004:0004[63820000x_00001008x] mad.f32 r0.x, c2.x, r1.x, r0.x
+                               :3:0005:0005[63820001x_0001100bx] mad.f32 r0.y, c2.w, r1.x, r0.y
+                               :3:0006:0006[6382800ax_0000100cx] mad.f32 r2.z, c3.x, r1.y, r0.x
+                               :2:0007:0007[40700000x_10010002x] mul.f r0.x, r0.z, c0.y
+                               :3:0008:0008[6382800dx_0001100fx] mad.f32 r3.y, c3.w, r1.y, r0.y
+                               :3:0009:0009[63818000x_00001005x] mad.f32 r0.x, c1.y, r0.w, r0.x
+                               :1:0010:0010[20244001x_00000010x] mov.f32f32 r0.y, c4.x
+                               :3:0011:0011[63820000x_00001009x] mad.f32 r0.x, c2.y, r1.x, r0.x
+                               :0:0012:0012[00000000x_00000000x] nop
+                               :3:0013:0013[6382800bx_0000100dx] mad.f32 r2.w, c3.y, r1.y, r0.x
+                               :2:0014:0014[40700000x_10020002x] mul.f r0.x, r0.z, c0.z
+                               :2:0015:0015[40100001x_0001101cx] add.f r0.y, c7.x, r0.y
+                               :3:0016:0016[63818000x_00001006x] mad.f32 r0.x, c1.z, r0.w, r0.x
+                               :1:0017:0017[20244002x_00000011x] mov.f32f32 r0.z, c4.y
+                               :3:0018:0018[63820000x_0000100ax] mad.f32 r0.x, c2.z, r1.x, r0.x
+                               :1:0019:0019[20244004x_00000013x] mov.f32f32 r1.x, c4.w
+                               :3:0020:0020[6382800cx_0000100ex] mad.f32 r3.x, c3.z, r1.y, r0.x
+                               :2:0021:0021[40700000x_00070007x] mul.f r0.x, r1.w, r1.w
+                               :2:0022:0022[40100002x_0002101dx] add.f r0.z, c7.y, r0.z
+                               :3:0023:0023[63830000x_00000006x] mad.f32 r0.x, r1.z, r1.z, r0.x
+                               :2:0024:0024[40500411x_00041013x] (sat)max.f r4.y, c4.w, r1.x
+                               :3:0025:0025[63840000x_00000008x] mad.f32 r0.x, r2.x, r2.x, r0.x
+                               :1:0026:0026[20244003x_00000012x] mov.f32f32 r0.w, c4.z
+                               :0:0027:0027[00000200x_00000000x] (rpt2)nop
+                               :2:0028:0030[40100003x_0003101ex] add.f r0.w, c7.z, r0.w
+                               :0:0029:0031[00000000x_00000000x] nop
+                               :4:0030:0032[80300000x_00000000x] rsq r0.x, r0.x
+                               :2:0031:0033[40701004x_00000007x] (ss)mul.f r1.x, r1.w, r0.x
+                               :0:0032:0034[00000200x_00000000x] (rpt2)nop
+                               :2:0033:0037[40700004x_10150004x] mul.f r1.x, r1.x, c5.y
+                               :2:0034:0038[40700005x_00000006x] mul.f r1.y, r1.z, r0.x
+                               :0:0035:0039[00000200x_00000000x] (rpt2)nop
+                               :3:0036:0042[63828004x_00041014x] mad.f32 r1.x, c5.x, r1.y, r1.x
+                               :2:0037:0043[40700000x_00000008x] mul.f r0.x, r2.x, r0.x
+                               :0:0038:0044[00000200x_00000000x] (rpt2)nop
+                               :3:0039:0047[63800000x_00041016x] mad.f32 r0.x, c5.z, r0.x, r1.x
+                               :0:0040:0048[00000200x_00000000x] (rpt2)nop
+                               :2:0041:0051[40b00004x_00001034x] cmps.f.lt r1.x, c13.x, r0.x
+                               :2:0042:0052[40500000x_00001034x] max.f r0.x, c13.x, r0.x
+                               :0:0043:0053[00000100x_00000000x] (rpt1)nop
+                               :1:0044:0055[200c4004x_00000004x] cov.u32f32 r1.x, r1.x
+                               :3:0045:0056[63800001x_00011020x] mad.f32 r0.y, c8.x, r0.x, r0.y
+                               :3:0046:0057[63800002x_00021021x] mad.f32 r0.z, c8.y, r0.x, r0.z
+                               :3:0047:0058[63800000x_00031022x] mad.f32 r0.x, c8.z, r0.x, r0.w
+                               :3:0048:0059[6382040ex_00011024x] (sat)mad.f32 r3.z, c9.x, r1.x, r0.y
+                               :3:0049:0060[6382040fx_00021025x] (sat)mad.f32 r3.w, c9.y, r1.x, r0.z
+                               :3:0050:0061[63820410x_00001026x] (sat)mad.f32 r4.x, c9.z, r1.x, r0.x
+                               :0:0051:0062[03000000x_00000000x] end
+                               :0:0052:0063[00000000x_00000000x] nop
+                               :0:0053:0064[00000000x_00000000x] nop
+                               :0:0054:0065[00000000x_00000000x] nop
+                               :0:0055:0066[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): 0-8 10-17 (cnt=17, max=17)
+                               - used (merged): 0-17 20-35 (cnt=34, max=35)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): 2-8 (cnt=7, max=8)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): 0-22 28-30 32-34 36-38 52 (cnt=33, max=52)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): 10-17 (cnt=8, max=17)  (estimated)
+                               - shaderdb: 67 instructions, 31 nops, 36 non-nops, (56 instlen), 0 half, 5 full
+                               - shaderdb: 1 (ss), 0 (sy)
+109d068c:                      0000: c0813000 01200000 00000000 10000002 40700000 10030002 40700001 00001004
+109d06ac:                      0020: 63818000 00011007 63818001 00001008 63820000 0001100b 63820001 0000100c
+109d06cc:                      0040: 6382800a 10010002 40700000 0001100f 6382800d 00001005 63818000 00000010
+109d06ec:                      0060: 20244001 00001009 63820000 00000000 00000000 0000100d 6382800b 10020002
+109d070c:                      0080: 40700000 0001101c 40100001 00001006 63818000 00000011 20244002 0000100a
+109d072c:                      00a0: 63820000 00000013 20244004 0000100e 6382800c 00070007 40700000 0002101d
+109d074c:                      00c0: 40100002 00000006 63830000 00041013 40500411 00000008 63840000 00000012
+109d076c:                      00e0: 20244003 00000000 00000200 0003101e 40100003 00000000 00000000 00000000
+109d078c:                      0100: 80300000 00000007 40701004 00000000 00000200 10150004 40700004 00000006
+109d07ac:                      0120: 40700005 00000000 00000200 00041014 63828004 00000008 40700000 00000000
+109d07cc:                      0140: 00000200 00041016 63800000 00000000 00000200 00001034 40b00004 00001034
+109d07ec:                      0160: 40500000 00000000 00000100 00000004 200c4004 00011020 63800001 00021021
+109d080c:                      0180: 63800002 00031022 63800000 00011024 6382040e 00021025 6382040f 00001026
+109d082c:                      01a0: 63820410 00000000 03000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (35 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :2:0000:0000[47300002x_00002000x] bary.f r0.z, 0, r0.x
+                               :2:0001:0001[47300003x_00002001x] bary.f r0.w, 1, r0.x
+                               :2:0002:0002[47300004x_00002002x] bary.f r1.x, 2, r0.x
+                               :2:0003:0003[47308005x_00002003x] bary.f (ei)r1.y, 3, r0.x
+                               :0:0004:0004[03000000x_00000000x] end
+                               :0:0005:0005[00000000x_00000000x] nop
+                               :0:0006:0006[00000000x_00000000x] nop
+                               :0:0007:0007[00000000x_00000000x] nop
+                               :0:0008:0008[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): 0 2-5 (cnt=5, max=5)
+                               - used (merged): 0-1 4-11 (cnt=10, max=11)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): 0 (cnt=1, max=0)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): (cnt=0, max=0)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): 2-5 (cnt=4, max=5)  (estimated)
+                               - shaderdb: 9 instructions, 4 nops, 5 non-nops, (9 instlen), 0 half, 2 full
+                               - shaderdb: 0 (ss), 0 (sy)
+109d0898:                      0000: c0213000 00700000 00000000 00002000 47300002 00002001 47300003 00002002
+109d08b8:                      0020: 47300004 00002003 47308005 00000000 03000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
+109d0924:                      0000: c0002600 00000000
+t3                     opcode: CP_LOAD_STATE4 (30) (51 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
+                               { STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
+109d0938:                              4.276816 0.109522 0.611668 0.517565 0.677381 4.774377 -0.312365 -0.264309
+109d0958:                              2.500000 -1.480991 -0.961761 -0.813798 13.423393 -6.746271 38.893391 42.140564
+109d0978:                              0.000000 0.160000 0.040000 1.000000 -0.064448 0.660942 0.747665 0.000000
+109d0998:                              1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000
+109d09b8:                              0.000000 0.800000 0.200000 1.000000 0.000000 0.000000 0.000000 1.000000
+109d09d8:                              0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000
+109d0938:                              0000: 4088dbad 3de04cdc 3f1c964b 3f047f2c 3f2d68da 4098c7b2 be9fee59 be875387
+109d0958:                              0020: 40200000 bfbd9119 bf7635f5 bf50550b 4156c638 c0d7e173 421b92d5 42288ff0
+109d0978:                              0040: 00000000 3e23d70b 3d23d70b 3f800000 bd83fd0e 3f293379 3f3f66f5 00000000
+109d0998:                              0060: 3f800000 00000000 00000000 00000000 00000000 00000000 00000000 3f800000
+109d09b8:                              0080: 00000000 3f4ccccd 3e4ccccd 3f800000 00000000 00000000 00000000 3f800000
+109d09d8:                              00a0: 00000000 00000000 00000000 3f800000 02020000 02020202 02020202 00000202
+109d092c:                      0000: c0313000 03200000 00000001 4088dbad 3de04cdc 3f1c964b 3f047f2c 3f2d68da
+109d094c:                      0020: 4098c7b2 be9fee59 be875387 40200000 bfbd9119 bf7635f5 bf50550b 4156c638
+109d096c:                      0040: c0d7e173 421b92d5 42288ff0 00000000 3e23d70b 3d23d70b 3f800000 bd83fd0e
+109d098c:                      0060: 3f293379 3f3f66f5 00000000 3f800000 00000000 00000000 00000000 00000000
+109d09ac:                      0080: 00000000 00000000 3f800000 00000000 3f4ccccd 3e4ccccd 3f800000 00000000
+109d09cc:                      00a0: 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000 02020000
+109d09ec:                      00c0: 02020202 02020202 00000202
+t0                     write VFD_INDEX_OFFSET (2208)
+                               VFD_INDEX_OFFSET: 0
+                               UNKNOWN_2209: 0
+109d09f8:                      0000: 00012208 00000000 00000000
+t0                     write PC_RESTART_INDEX (21c6)
+                               PC_RESTART_INDEX: 0xffffffff
+109d0a04:                      0000: 000021c6 ffffffff
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x4a
+                               :0,73,115,74
+109d0a0c:                      0000: 0000057f 0000004a
+t3                     opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
+                               { PRIM_TYPE = DI_PT_TRILIST | SOURCE_SELECT = DI_SRC_SEL_DMA | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_16_BIT | PATCH_TYPE = TESS_QUADS }
+                               { NUM_INSTANCES = 1 }
+                               { NUM_INDICES = 60 }
+                               { FIRST_INDX = 0 }
+                               { INDX_BASE = 0x10bd0f00 }
+                               { INDX_SIZE = 120 }
+                       draw[12] register values
+!+     00000049                        CP_SCRATCH[0x5].REG: 0x49
+                       :0,73,115,74
+!+     0000004a                        CP_SCRATCH[0x7].REG: 0x4a
+                       :0,73,115,74
+ +     00080000                        GRAS_CL_CLIP_CNTL: { 0x80000 }
+!+     00000001                        GRAS_CNTL: { IJ_PERSP }
+ +     00100010                        GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
+ +     00000010                        GRAS_SU_POINT_SIZE: 1.000000
+ +     00000000                        GRAS_ALPHA_CONTROL: { 0 }
+ +     00000000                        GRAS_SU_POLY_OFFSET_SCALE: 0.000000
+ +     00000000                        GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
+ +     00000000                        GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
+ +     00100012                        GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
+ +     012b012b                        GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
+ +     00000000                        GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
+!+     00001000                        RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 | IJ_PERSP_PIXEL }
+ +     00000001                        RB_FS_OUTPUT_REG: { MRT = 1 }
+ +     80000016                        RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_TEST_ENABLE }
+ +     00000000                        RB_VPORT_Z_CLAMP[0].MIN: 0
+ +     00ffffff                        RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
+ +     42001004                        VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
+ +     00040400                        VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
+!+     00000000                        VPC_VARYING_INTERP[0].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x7].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x7].MODE: 0
+ +     02000001                        PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+ +     00000012                        PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+ +     ffffffff                        PC_RESTART_INDEX: 0xffffffff
+ +     00000000                        VFD_INDEX_OFFSET: 0
+ +     00000000                        UNKNOWN_2209: 0
+ +     00140010                        SP_SP_CTRL_REG: { 0x140010 }
+ +     000005ff                        SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+ +     00201400                        SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+ +     08000042                        SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
+ +     0010fc0a                        SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
+ +     00001e0e                        SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
+ +     08080808                        SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
+ +     00000000                        SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+ +     10cd5000                        SP_VS_OBJ_START: 0x10cd5000
+ +     00000004                        SP_VS_LENGTH_REG: 4
+!+     00340802                        SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 2 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+ +     8010003e                        SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
+ +     7e420000                        SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+!+     108cb000                        SP_FS_OBJ_START: 0x108cb000
+ +     00000001                        SP_FS_LENGTH_REG: 1
+ +     0000fc01                        SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+!+     0001a002                        SP_FS_MRT[0].REG: { REGID = r0.z | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+!+     00000002                        SP_FS_MRT[0x1].REG: { REGID = r0.z | MRTFORMAT = 0 }
+!+     00000002                        SP_FS_MRT[0x2].REG: { REGID = r0.z | MRTFORMAT = 0 }
+!+     00000002                        SP_FS_MRT[0x3].REG: { REGID = r0.z | MRTFORMAT = 0 }
+!+     00000002                        SP_FS_MRT[0x4].REG: { REGID = r0.z | MRTFORMAT = 0 }
+!+     00000002                        SP_FS_MRT[0x5].REG: { REGID = r0.z | MRTFORMAT = 0 }
+!+     00000002                        SP_FS_MRT[0x6].REG: { REGID = r0.z | MRTFORMAT = 0 }
+!+     00000002                        SP_FS_MRT[0x7].REG: { REGID = r0.z | MRTFORMAT = 0 }
+ +     7e420000                        SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                        SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                        SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     28000250                        HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+ +     fcfc0100                        HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+ +     fff3f3f0                        HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+!+     fcfcfc00                        HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r0.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+ +     00fcfcfc                        HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+ +     04000042                        HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
+ +     017e423e                        HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+ +     007e4200                        HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                        HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                        HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     00000003                        HLSQ_UPDATE_CONTROL: 0x3
+109d0a14:                      0000: c0053800 00000404 00000001 0000003c 00000000 10bd0f00 00000078
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x4b
+                               :0,73,115,75
+109d0a30:                      0000: 0000057f 0000004b
+t0                     write CP_SCRATCH[0x5].REG (057d)
+                               CP_SCRATCH[0x5].REG: 0x4f
+                               :0,79,115,75
+109d0a38:                      0000: 0000057d 0000004f
+t0                     write RB_DEPTH_CONTROL (2101)
+                               RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_TEST_ENABLE }
+109d0a40:                      0000: 00002101 80000016
+t0                     write GRAS_ALPHA_CONTROL (2073)
+                               GRAS_ALPHA_CONTROL: { 0 }
+109d0a48:                      0000: 00002073 00000000
+t0                     write GRAS_SU_MODE_CONTROL (2078)
+                               GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
+109d0a50:                      0000: 00002078 00100012
+t0                     write GRAS_SU_POINT_MINMAX (2070)
+                               GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
+                               GRAS_SU_POINT_SIZE: 1.000000
+109d0a58:                      0000: 00012070 00100010 00000010
+t0                     write GRAS_SU_POLY_OFFSET_SCALE (2074)
+                               GRAS_SU_POLY_OFFSET_SCALE: 0.000000
+                               GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
+                               GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
+109d0a64:                      0000: 00022074 00000000 00000000 00000000
+t0                     write GRAS_CL_CLIP_CNTL (2000)
+                               GRAS_CL_CLIP_CNTL: { 0x80000 }
+109d0a74:                      0000: 00002000 00080000
+t0                     write PC_PRIM_VTX_CNTL (21c4)
+                               PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+                               PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+109d0a7c:                      0000: 000121c4 02000001 00000012
+t0                     write GRAS_SC_WINDOW_SCISSOR_BR (209c)
+                               GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
+                               GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
+109d0a88:                      0000: 0001209c 012b012b 00000000
+t0                     write RB_VPORT_Z_CLAMP[0].MIN (2120)
+                               RB_VPORT_Z_CLAMP[0].MIN: 0
+                               RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
+109d0a94:                      0000: 00012120 00000000 00ffffff
+t0                     write HLSQ_UPDATE_CONTROL (23db)
+                               HLSQ_UPDATE_CONTROL: 0x3
+109d0aa0:                      0000: 000023db 00000003
+t0                     write HLSQ_CONTROL_0_REG (23c0)
+                               HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+                               HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+                               HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+                               HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+                               HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+109d0aa8:                      0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfcfc 00fcfcfc
+t0                     write HLSQ_VS_CONTROL_REG (23c5)
+                               HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
+                               HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+                               HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+109d0ac0:                      0000: 000423c5 04000042 017e423e 007e4200 007e4200 007e4200
+t0                     write SP_SP_CTRL_REG (22c0)
+                               SP_SP_CTRL_REG: { 0x140010 }
+109d0ad8:                      0000: 000022c0 00140010
+t0                     write SP_INSTR_CACHE_CTRL (22c1)
+                               SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+109d0ae0:                      0000: 000022c1 000005ff
+t0                     write SP_VS_LENGTH_REG (22e5)
+                               SP_VS_LENGTH_REG: 4
+109d0ae8:                      0000: 000022e5 00000004
+t0                     write SP_VS_CTRL_REG0 (22c4)
+                               SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 4 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+                               SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
+                               SP_VS_PARAM_REG: { POSREGID = r1.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
+109d0af0:                      0000: 000222c4 00201000 04000042 0010fc06
+t0                     write SP_VS_OUT[0].REG (22c7)
+                               SP_VS_OUT[0].REG: { A_REGID = r2.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
+109d0b00:                      0000: 000022c7 00001e0a
+t0                     write SP_VS_VPC_DST[0].REG (22d8)
+                               SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
+109d0b08:                      0000: 000022d8 08080808
+t0                     write SP_VS_OBJ_OFFSET_REG (22e0)
+                               SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+                               SP_VS_OBJ_START: 0x10cd0000
+109d0b10:                      0000: 000122e0 00000000 10cd0000
+t0                     write SP_FS_LENGTH_REG (22ef)
+                               SP_FS_LENGTH_REG: 1
+109d0b1c:                      0000: 000022ef 00000001
+t0                     write SP_FS_CTRL_REG0 (22e8)
+                               SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+                               SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
+109d0b24:                      0000: 000122e8 00340402 8010003e
+t0                     write SP_FS_OBJ_OFFSET_REG (22ea)
+                               SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+                               SP_FS_OBJ_START: 0x10cd2000
+109d0b30:                      0000: 000122ea 7e420000 10cd2000
+t0                     write SP_HS_OBJ_OFFSET_REG (230d)
+                               SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109d0b3c:                      0000: 0000230d 7e420000
+t0                     write SP_DS_OBJ_OFFSET_REG (2334)
+                               SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109d0b44:                      0000: 00002334 7e420000
+t0                     write SP_GS_OBJ_OFFSET_REG (235b)
+                               SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109d0b4c:                      0000: 0000235b 7e420000
+t0                     write GRAS_CNTL (2003)
+                               GRAS_CNTL: { 0 }
+109d0b54:                      0000: 00002003 00000000
+t0                     write RB_RENDER_CONTROL2 (20a3)
+                               RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
+109d0b5c:                      0000: 000020a3 00000000
+t0                     write RB_FS_OUTPUT_REG (2100)
+                               RB_FS_OUTPUT_REG: { MRT = 1 }
+109d0b64:                      0000: 00002100 00000001
+t0                     write SP_FS_OUTPUT_REG (22f0)
+                               SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+109d0b6c:                      0000: 000022f0 0000fc01
+t0                     write SP_FS_MRT[0].REG (22f1)
+                               SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+                               SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
+109d0b74:                      0000: 000722f1 0001a000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0                     write VPC_ATTR (2140)
+                               VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
+                               VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
+109d0b98:                      0000: 00012140 42001004 00040400
+t0                     write VPC_VARYING_INTERP[0].MODE (2142)
+                               VPC_VARYING_INTERP[0].MODE: 0x55
+                               VPC_VARYING_INTERP[0x1].MODE: 0
+                               VPC_VARYING_INTERP[0x2].MODE: 0
+                               VPC_VARYING_INTERP[0x3].MODE: 0
+                               VPC_VARYING_INTERP[0x4].MODE: 0
+                               VPC_VARYING_INTERP[0x5].MODE: 0
+                               VPC_VARYING_INTERP[0x6].MODE: 0
+                               VPC_VARYING_INTERP[0x7].MODE: 0
+109d0ba4:                      0000: 00072142 00000055 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0                     write VPC_VARYING_PS_REPL[0].MODE (214a)
+                               VPC_VARYING_PS_REPL[0].MODE: 0
+                               VPC_VARYING_PS_REPL[0x1].MODE: 0
+                               VPC_VARYING_PS_REPL[0x2].MODE: 0
+                               VPC_VARYING_PS_REPL[0x3].MODE: 0
+                               VPC_VARYING_PS_REPL[0x4].MODE: 0
+                               VPC_VARYING_PS_REPL[0x5].MODE: 0
+                               VPC_VARYING_PS_REPL[0x6].MODE: 0
+                               VPC_VARYING_PS_REPL[0x7].MODE: 0
+109d0bc8:                      0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (131 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 4 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :2:0000:0000[40700000x_10000002x] mul.f r0.x, r0.z, c0.x
+                               :2:0001:0001[40700001x_10030002x] mul.f r0.y, r0.z, c0.w
+                               :3:0002:0002[63818000x_00001004x] mad.f32 r0.x, c1.x, r0.w, r0.x
+                               :3:0003:0003[63818001x_00011007x] mad.f32 r0.y, c1.w, r0.w, r0.y
+                               :3:0004:0004[63820000x_00001008x] mad.f32 r0.x, c2.x, r1.x, r0.x
+                               :3:0005:0005[63820001x_0001100bx] mad.f32 r0.y, c2.w, r1.x, r0.y
+                               :3:0006:0006[63828006x_0000100cx] mad.f32 r1.z, c3.x, r1.y, r0.x
+                               :2:0007:0007[40700000x_10010002x] mul.f r0.x, r0.z, c0.y
+                               :3:0008:0008[63828009x_0001100fx] mad.f32 r2.y, c3.w, r1.y, r0.y
+                               :3:0009:0009[63818000x_00001005x] mad.f32 r0.x, c1.y, r0.w, r0.x
+                               :1:0010:0010[20244001x_00000010x] mov.f32f32 r0.y, c4.x
+                               :3:0011:0011[63820000x_00001009x] mad.f32 r0.x, c2.y, r1.x, r0.x
+                               :0:0012:0012[00000000x_00000000x] nop
+                               :3:0013:0013[63828007x_0000100dx] mad.f32 r1.w, c3.y, r1.y, r0.x
+                               :2:0014:0014[40700000x_10020002x] mul.f r0.x, r0.z, c0.z
+                               :1:0015:0015[20244002x_00000015x] mov.f32f32 r0.z, c5.y
+                               :3:0016:0016[63818000x_00001006x] mad.f32 r0.x, c1.z, r0.w, r0.x
+                               :1:0017:0017[20244003x_00000016x] mov.f32f32 r0.w, c5.z
+                               :3:0018:0018[63820000x_0000100ax] mad.f32 r0.x, c2.z, r1.x, r0.x
+                               :1:0019:0019[20244004x_00000017x] mov.f32f32 r1.x, c5.w
+                               :3:0020:0020[63828008x_0000100ex] mad.f32 r2.x, c3.z, r1.y, r0.x
+                               :1:0021:0021[20244000x_00000011x] mov.f32f32 r0.x, c4.y
+                               :2:0022:0022[40100002x_00021021x] add.f r0.z, c8.y, r0.z
+                               :2:0023:0023[4050040dx_00041017x] (sat)max.f r3.y, c5.w, r1.x
+                               :2:0024:0024[40100003x_00031022x] add.f r0.w, c8.z, r0.w
+                               :2:0025:0025[40700000x_00001011x] mul.f r0.x, c4.y, r0.x
+                               :0:0026:0026[00000000x_00000000x] nop
+                               :3:0027:0027[63808000x_00001010x] mad.f32 r0.x, c4.x, r0.y, r0.x
+                               :1:0028:0028[20244001x_00000012x] mov.f32f32 r0.y, c4.z
+                               :0:0029:0029[00000200x_00000000x] (rpt2)nop
+                               :3:0030:0032[63808000x_00001012x] mad.f32 r0.x, c4.z, r0.y, r0.x
+                               :1:0031:0033[20244001x_00000014x] mov.f32f32 r0.y, c5.x
+                               :0:0032:0034[00000200x_00000000x] (rpt2)nop
+                               :2:0033:0037[40100001x_00011020x] add.f r0.y, c8.x, r0.y
+                               :0:0034:0038[00000000x_00000000x] nop
+                               :4:0035:0039[80300000x_00000000x] rsq r0.x, r0.x
+                               :2:0036:0040[40701004x_00001011x] (ss)mul.f r1.x, c4.y, r0.x
+                               :0:0037:0041[00000200x_00000000x] (rpt2)nop
+                               :2:0038:0044[40700004x_10190004x] mul.f r1.x, r1.x, c6.y
+                               :2:0039:0045[40700005x_00001010x] mul.f r1.y, c4.x, r0.x
+                               :0:0040:0046[00000200x_00000000x] (rpt2)nop
+                               :3:0041:0049[63828004x_00041018x] mad.f32 r1.x, c6.x, r1.y, r1.x
+                               :2:0042:0050[40700000x_00001012x] mul.f r0.x, c4.z, r0.x
+                               :0:0043:0051[00000200x_00000000x] (rpt2)nop
+                               :3:0044:0054[63800000x_0004101ax] mad.f32 r0.x, c6.z, r0.x, r1.x
+                               :0:0045:0055[00000200x_00000000x] (rpt2)nop
+                               :2:0046:0058[40b00004x_00001034x] cmps.f.lt r1.x, c13.x, r0.x
+                               :2:0047:0059[40500000x_00001034x] max.f r0.x, c13.x, r0.x
+                               :0:0048:0060[00000100x_00000000x] (rpt1)nop
+                               :1:0049:0062[200c4004x_00000004x] cov.u32f32 r1.x, r1.x
+                               :3:0050:0063[63800001x_00011024x] mad.f32 r0.y, c9.x, r0.x, r0.y
+                               :3:0051:0064[63800002x_00021025x] mad.f32 r0.z, c9.y, r0.x, r0.z
+                               :3:0052:0065[63800000x_00031026x] mad.f32 r0.x, c9.z, r0.x, r0.w
+                               :3:0053:0066[6382040ax_00011028x] (sat)mad.f32 r2.z, c10.x, r1.x, r0.y
+                               :3:0054:0067[6382040bx_00021029x] (sat)mad.f32 r2.w, c10.y, r1.x, r0.z
+                               :3:0055:0068[6382040cx_0000102ax] (sat)mad.f32 r3.x, c10.z, r1.x, r0.x
+                               :0:0056:0069[03000000x_00000000x] end
+                               :0:0057:0070[00000000x_00000000x] nop
+                               :0:0058:0071[00000000x_00000000x] nop
+                               :0:0059:0072[00000000x_00000000x] nop
+                               :0:0060:0073[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): 0-13 (cnt=14, max=13)
+                               - used (merged): 0-27 (cnt=28, max=27)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): 2-5 (cnt=4, max=5)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): 0-18 20-26 32-34 36-38 40-42 52 (cnt=36, max=52)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): 6-13 (cnt=8, max=13)  (estimated)
+                               - shaderdb: 74 instructions, 38 nops, 36 non-nops, (61 instlen), 0 half, 4 full
+                               - shaderdb: 1 (ss), 0 (sy)
+109d0bec:                      0000: c0813000 01200000 00000000 10000002 40700000 10030002 40700001 00001004
+109d0c0c:                      0020: 63818000 00011007 63818001 00001008 63820000 0001100b 63820001 0000100c
+109d0c2c:                      0040: 63828006 10010002 40700000 0001100f 63828009 00001005 63818000 00000010
+109d0c4c:                      0060: 20244001 00001009 63820000 00000000 00000000 0000100d 63828007 10020002
+109d0c6c:                      0080: 40700000 00000015 20244002 00001006 63818000 00000016 20244003 0000100a
+109d0c8c:                      00a0: 63820000 00000017 20244004 0000100e 63828008 00000011 20244000 00021021
+109d0cac:                      00c0: 40100002 00041017 4050040d 00031022 40100003 00001011 40700000 00000000
+109d0ccc:                      00e0: 00000000 00001010 63808000 00000012 20244001 00000000 00000200 00001012
+109d0cec:                      0100: 63808000 00000014 20244001 00000000 00000200 00011020 40100001 00000000
+109d0d0c:                      0120: 00000000 00000000 80300000 00001011 40701004 00000000 00000200 10190004
+109d0d2c:                      0140: 40700004 00001010 40700005 00000000 00000200 00041018 63828004 00001012
+109d0d4c:                      0160: 40700000 00000000 00000200 0004101a 63800000 00000000 00000200 00001034
+109d0d6c:                      0180: 40b00004 00001034 40500000 00000000 00000100 00000004 200c4004 00011024
+109d0d8c:                      01a0: 63800001 00021025 63800002 00031026 63800000 00011028 6382040a 00021029
+109d0dac:                      01c0: 6382040b 0000102a 6382040c 00000000 03000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (35 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :0:0000:0000[00000000x_00000000x] nop
+                               :6:0001:0001[c7c60000x_01c00000x] ldlv.u32 r0.x, l[0], 1
+                               :6:0002:0002[c7c60001x_01c00002x] ldlv.u32 r0.y, l[1], 1
+                               :6:0003:0003[c7c60002x_01c00004x] ldlv.u32 r0.z, l[2], 1
+                               :6:0004:0004[c7c60003x_01c00006x] ldlv.u32 r0.w, l[3], 1
+                               :2:0005:0005[473090fcx_00002000x] (ss)bary.f (ei)r63.x, 0, r0.x
+                               :0:0006:0006[03000000x_00000000x] end
+                               :0:0007:0007[00000000x_00000000x] nop
+                               :0:0008:0008[00000000x_00000000x] nop
+                               :0:0009:0009[00000000x_00000000x] nop
+                               :0:0010:0010[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): 0-3 252 (cnt=5, max=3)
+                               - used (merged): 0-7 504-505 (cnt=10, max=7)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): 0-3 (cnt=4, max=3)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): (cnt=0, max=0)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): 252 (cnt=1, max=0)  (estimated)
+                               - shaderdb: 11 instructions, 5 nops, 6 non-nops, (11 instlen), 0 half, 1 full
+                               - shaderdb: 1 (ss), 0 (sy)
+109d0df8:                      0000: c0213000 00700000 00000000 00000000 00000000 01c00000 c7c60000 01c00002
+109d0e18:                      0020: c7c60001 01c00004 c7c60002 01c00006 c7c60003 00002000 473090fc 00000000
+109d0e38:                      0040: 03000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
+109d0e84:                      0000: c0002600 00000000
+t3                     opcode: CP_LOAD_STATE4 (30) (51 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
+                               { STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
+109d0e98:                              3.924428 -1.210718 0.674073 0.570369 1.829991 4.619613 -0.131666 -0.111410
+109d0eb8:                              2.500000 -1.480991 -0.961761 -0.813798 -13.423393 17.082890 32.944622 37.106991
+109d0ed8:                              0.000000 0.000000 1.000000 1.000000 0.040000 0.040000 0.200000 1.000000
+109d0ef8:                              -0.244131 0.617574 0.747665 0.000000 1.000000 0.000000 0.000000 0.000000
+109d0f18:                              0.000000 0.000000 0.000000 1.000000 0.200000 0.200000 1.000000 1.000000
+109d0f38:                              0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000
+109d0e98:                              0000: 407b29d2 bf9af8cb 3f2c9009 3f1203b9 3fea3d23 4093d3df be06d382 bde42adc
+109d0eb8:                              0020: 40200000 bfbd9119 bf7635f5 bf50550b c156c638 4188a9c2 4203c74b 42146d8f
+109d0ed8:                              0040: 00000000 00000000 3f800000 3f800000 3d23d70b 3d23d70b 3e4ccccd 3f800000
+109d0ef8:                              0060: be79fd80 3f1e194f 3f3f66f5 00000000 3f800000 00000000 00000000 00000000
+109d0f18:                              0080: 00000000 00000000 00000000 3f800000 3e4ccccd 3e4ccccd 3f800000 3f800000
+109d0f38:                              00a0: 00000000 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000
+109d0e8c:                      0000: c0313000 03200000 00000001 407b29d2 bf9af8cb 3f2c9009 3f1203b9 3fea3d23
+109d0eac:                      0020: 4093d3df be06d382 bde42adc 40200000 bfbd9119 bf7635f5 bf50550b c156c638
+109d0ecc:                      0040: 4188a9c2 4203c74b 42146d8f 00000000 00000000 3f800000 3f800000 3d23d70b
+109d0eec:                      0060: 3d23d70b 3e4ccccd 3f800000 be79fd80 3f1e194f 3f3f66f5 00000000 3f800000
+109d0f0c:                      0080: 00000000 00000000 00000000 00000000 00000000 00000000 3f800000 3e4ccccd
+109d0f2c:                      00a0: 3e4ccccd 3f800000 3f800000 00000000 00000000 00000000 3f800000 00000000
+109d0f4c:                      00c0: 00000000 00000000 3f800000
+t3                     opcode: CP_LOAD_STATE4 (30) (7 dwords)
+                               { DST_OFF = 13 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 1 }
+                               { STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
+109d0f64:                              0.000000 -28026765312.000000 -28026765312.000000 -28026765312.000000
+109d0f64:                              0000: 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
+109d0f58:                      0000: c0053000 0060000d 00000001 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
+t0                     write VFD_FETCH[0].INSTR_0 (220a)
+                               VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
+                               VFD_FETCH[0].INSTR_1: 0x107cb000
+                               VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
+                               VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
+109d0f74:                      0000: 0003220a 0000060b 107cb000 00100000 00000001
+t0                     write VFD_DECODE[0].INSTR (228a)
+                               VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
+109d0f88:                      0000: 0000228a 2c0020df
+t0                     write VFD_CONTROL_0 (2200)
+                               VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
+                               VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
+                               VFD_CONTROL_2: 0
+                               VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
+                               VFD_CONTROL_4: 0
+109d0f90:                      0000: 00042200 041a0004 fcfc0081 00000000 0000fc00 00000000
+t0                     write UCHE_INVALIDATE0 (0e8a)
+                               UCHE_INVALIDATE0: 0
+                               UCHE_INVALIDATE1: 0x12
+109d0fa8:                      0000: 00010e8a 00000000 00000012
+t0                     write VFD_INDEX_OFFSET (2208)
+                               VFD_INDEX_OFFSET: 0
+                               UNKNOWN_2209: 0
+109d0fb4:                      0000: 00012208 00000000 00000000
+t0                     write PC_RESTART_INDEX (21c6)
+                               PC_RESTART_INDEX: 0xffffffff
+109d0fc0:                      0000: 000021c6 ffffffff
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x50
+                               :0,79,115,80
+109d0fc8:                      0000: 0000057f 00000050
+t3                     opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
+                               { PRIM_TYPE = DI_PT_TRILIST | SOURCE_SELECT = DI_SRC_SEL_DMA | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_16_BIT | PATCH_TYPE = TESS_QUADS }
+                               { NUM_INSTANCES = 1 }
+                               { NUM_INDICES = 120 }
+                               { FIRST_INDX = 0 }
+                               { INDX_BASE = 0x10bd0f78 }
+                               { INDX_SIZE = 240 }
+                       draw[13] register values
+!+     0000004f                        CP_SCRATCH[0x5].REG: 0x4f
+                       :0,79,115,80
+!+     00000050                        CP_SCRATCH[0x7].REG: 0x50
+                       :0,79,115,80
+ +     00000000                        UCHE_INVALIDATE0: 0
+ +     00000012                        UCHE_INVALIDATE1: 0x12
+ +     00080000                        GRAS_CL_CLIP_CNTL: { 0x80000 }
+!+     00000000                        GRAS_CNTL: { 0 }
+ +     00100010                        GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
+ +     00000010                        GRAS_SU_POINT_SIZE: 1.000000
+ +     00000000                        GRAS_ALPHA_CONTROL: { 0 }
+ +     00000000                        GRAS_SU_POLY_OFFSET_SCALE: 0.000000
+ +     00000000                        GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
+ +     00000000                        GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
+ +     00100012                        GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
+ +     012b012b                        GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
+ +     00000000                        GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
+!+     00000000                        RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
+ +     00000001                        RB_FS_OUTPUT_REG: { MRT = 1 }
+ +     80000016                        RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_TEST_ENABLE }
+ +     00000000                        RB_VPORT_Z_CLAMP[0].MIN: 0
+ +     00ffffff                        RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
+ +     42001004                        VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
+ +     00040400                        VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
+!+     00000055                        VPC_VARYING_INTERP[0].MODE: 0x55
+ +     00000000                        VPC_VARYING_INTERP[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x7].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x7].MODE: 0
+ +     02000001                        PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+ +     00000012                        PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+ +     ffffffff                        PC_RESTART_INDEX: 0xffffffff
+!+     041a0004                        VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
+ +     fcfc0081                        VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
+ +     00000000                        VFD_CONTROL_2: 0
+ +     0000fc00                        VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
+ +     00000000                        VFD_CONTROL_4: 0
+ +     00000000                        VFD_INDEX_OFFSET: 0
+ +     00000000                        UNKNOWN_2209: 0
+!+     0000060b                        VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
+ +     107cb000                        VFD_FETCH[0].INSTR_1: 0x107cb000
+ +     00100000                        VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
+ +     00000001                        VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
+!+     2c0020df                        VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
+ +     00140010                        SP_SP_CTRL_REG: { 0x140010 }
+ +     000005ff                        SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+!+     00201000                        SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 4 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+!+     04000042                        SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
+!+     0010fc06                        SP_VS_PARAM_REG: { POSREGID = r1.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
+!+     00001e0a                        SP_VS_OUT[0].REG: { A_REGID = r2.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
+ +     08080808                        SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
+ +     00000000                        SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+!+     10cd0000                        SP_VS_OBJ_START: 0x10cd0000
+ +     00000004                        SP_VS_LENGTH_REG: 4
+!+     00340402                        SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+ +     8010003e                        SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
+ +     7e420000                        SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+!+     10cd2000                        SP_FS_OBJ_START: 0x10cd2000
+ +     00000001                        SP_FS_LENGTH_REG: 1
+ +     0000fc01                        SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+!+     0001a000                        SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+!+     00000000                        SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     00000000                        SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     00000000                        SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     00000000                        SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     00000000                        SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     00000000                        SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     00000000                        SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     7e420000                        SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                        SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                        SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     28000250                        HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+ +     fcfc0100                        HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+ +     fff3f3f0                        HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+!+     fcfcfcfc                        HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+ +     00fcfcfc                        HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+ +     04000042                        HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
+ +     017e423e                        HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+ +     007e4200                        HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                        HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                        HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     00000003                        HLSQ_UPDATE_CONTROL: 0x3
+109d0fd0:                      0000: c0053800 00000404 00000001 00000078 00000000 10bd0f78 000000f0
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x51
+                               :0,79,115,81
+109d0fec:                      0000: 0000057f 00000051
+t0                     write CP_SCRATCH[0x5].REG (057d)
+                               CP_SCRATCH[0x5].REG: 0x55
+                               :0,85,115,81
+109d0ff4:                      0000: 0000057d 00000055
+t0                     write PC_PRIM_VTX_CNTL (21c4)
+                               PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+                               PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+109d0ffc:                      0000: 000121c4 02000001 00000012
+t0                     write VFD_INDEX_OFFSET (2208)
+                               VFD_INDEX_OFFSET: 0
+                               UNKNOWN_2209: 0
+109d1008:                      0000: 00012208 00000000 00000000
+t0                     write PC_RESTART_INDEX (21c6)
+                               PC_RESTART_INDEX: 0xffffffff
+109d1014:                      0000: 000021c6 ffffffff
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x56
+                               :0,85,115,86
+109d101c:                      0000: 0000057f 00000056
+t3                     opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
+                               { PRIM_TYPE = DI_PT_TRILIST | SOURCE_SELECT = DI_SRC_SEL_DMA | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_16_BIT | PATCH_TYPE = TESS_QUADS }
+                               { NUM_INSTANCES = 1 }
+                               { NUM_INDICES = 60 }
+                               { FIRST_INDX = 0 }
+                               { INDX_BASE = 0x10bd1068 }
+                               { INDX_SIZE = 120 }
+                       draw[14] register values
+!+     00000055                        CP_SCRATCH[0x5].REG: 0x55
+                       :0,85,115,86
+!+     00000056                        CP_SCRATCH[0x7].REG: 0x56
+                       :0,85,115,86
+ +     02000001                        PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+ +     00000012                        PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+ +     ffffffff                        PC_RESTART_INDEX: 0xffffffff
+ +     00000000                        VFD_INDEX_OFFSET: 0
+ +     00000000                        UNKNOWN_2209: 0
+109d1024:                      0000: c0053800 00000404 00000001 0000003c 00000000 10bd1068 00000078
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x57
+                               :0,85,115,87
+109d1040:                      0000: 0000057f 00000057
+t0                     write CP_SCRATCH[0x5].REG (057d)
+                               CP_SCRATCH[0x5].REG: 0x5b
+                               :0,91,115,87
+109d1048:                      0000: 0000057d 0000005b
+t0                     write PC_PRIM_VTX_CNTL (21c4)
+                               PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+                               PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+109d1050:                      0000: 000121c4 02000001 00000012
+t3                     opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
+109d105c:                      0000: c0002600 00000000
+t3                     opcode: CP_LOAD_STATE4 (30) (51 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
+                               { STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
+109d1070:                              3.924428 -1.210718 0.674073 0.570369 1.829991 4.619613 -0.131666 -0.111410
+109d1090:                              2.500000 -1.480991 -0.961761 -0.813798 -13.423393 17.082890 32.944622 37.106991
+109d10b0:                              0.000000 0.000000 -1.000000 1.000000 0.040000 0.040000 0.200000 1.000000
+109d10d0:                              -0.244131 0.617574 0.747665 0.000000 1.000000 0.000000 0.000000 0.000000
+109d10f0:                              0.000000 0.000000 0.000000 1.000000 0.200000 0.200000 1.000000 1.000000
+109d1110:                              0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000
+109d1070:                              0000: 407b29d2 bf9af8cb 3f2c9009 3f1203b9 3fea3d23 4093d3df be06d382 bde42adc
+109d1090:                              0020: 40200000 bfbd9119 bf7635f5 bf50550b c156c638 4188a9c2 4203c74b 42146d8f
+109d10b0:                              0040: 00000000 00000000 bf800000 3f800000 3d23d70b 3d23d70b 3e4ccccd 3f800000
+109d10d0:                              0060: be79fd80 3f1e194f 3f3f66f5 00000000 3f800000 00000000 00000000 00000000
+109d10f0:                              0080: 00000000 00000000 00000000 3f800000 3e4ccccd 3e4ccccd 3f800000 3f800000
+109d1110:                              00a0: 00000000 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000
+109d1064:                      0000: c0313000 03200000 00000001 407b29d2 bf9af8cb 3f2c9009 3f1203b9 3fea3d23
+109d1084:                      0020: 4093d3df be06d382 bde42adc 40200000 bfbd9119 bf7635f5 bf50550b c156c638
+109d10a4:                      0040: 4188a9c2 4203c74b 42146d8f 00000000 00000000 bf800000 3f800000 3d23d70b
+109d10c4:                      0060: 3d23d70b 3e4ccccd 3f800000 be79fd80 3f1e194f 3f3f66f5 00000000 3f800000
+109d10e4:                      0080: 00000000 00000000 00000000 00000000 00000000 00000000 3f800000 3e4ccccd
+109d1104:                      00a0: 3e4ccccd 3f800000 3f800000 00000000 00000000 00000000 3f800000 00000000
+109d1124:                      00c0: 00000000 00000000 3f800000
+t0                     write VFD_INDEX_OFFSET (2208)
+                               VFD_INDEX_OFFSET: 0
+                               UNKNOWN_2209: 0
+109d1130:                      0000: 00012208 00000000 00000000
+t0                     write PC_RESTART_INDEX (21c6)
+                               PC_RESTART_INDEX: 0xffffffff
+109d113c:                      0000: 000021c6 ffffffff
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x5c
+                               :0,91,115,92
+109d1144:                      0000: 0000057f 0000005c
+t3                     opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
+                               { PRIM_TYPE = DI_PT_TRILIST | SOURCE_SELECT = DI_SRC_SEL_DMA | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_16_BIT | PATCH_TYPE = TESS_QUADS }
+                               { NUM_INSTANCES = 1 }
+                               { NUM_INDICES = 120 }
+                               { FIRST_INDX = 0 }
+                               { INDX_BASE = 0x10bd10e0 }
+                               { INDX_SIZE = 240 }
+                       draw[15] register values
+!+     0000005b                        CP_SCRATCH[0x5].REG: 0x5b
+                       :0,91,115,92
+!+     0000005c                        CP_SCRATCH[0x7].REG: 0x5c
+                       :0,91,115,92
+ +     02000001                        PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+ +     00000012                        PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+ +     ffffffff                        PC_RESTART_INDEX: 0xffffffff
+ +     00000000                        VFD_INDEX_OFFSET: 0
+ +     00000000                        UNKNOWN_2209: 0
+109d114c:                      0000: c0053800 00000404 00000001 00000078 00000000 10bd10e0 000000f0
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x5d
+                               :0,91,115,93
+109d1168:                      0000: 0000057f 0000005d
+t0                     write CP_SCRATCH[0x5].REG (057d)
+                               CP_SCRATCH[0x5].REG: 0x61
+                               :0,97,115,93
+109d1170:                      0000: 0000057d 00000061
+t0                     write PC_PRIM_VTX_CNTL (21c4)
+                               PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+                               PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+109d1178:                      0000: 000121c4 02000001 00000012
+t0                     write VFD_INDEX_OFFSET (2208)
+                               VFD_INDEX_OFFSET: 0
+                               UNKNOWN_2209: 0
+109d1184:                      0000: 00012208 00000000 00000000
+t0                     write PC_RESTART_INDEX (21c6)
+                               PC_RESTART_INDEX: 0xffffffff
+109d1190:                      0000: 000021c6 ffffffff
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x62
+                               :0,97,115,98
+109d1198:                      0000: 0000057f 00000062
+t3                     opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
+                               { PRIM_TYPE = DI_PT_TRILIST | SOURCE_SELECT = DI_SRC_SEL_DMA | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_16_BIT | PATCH_TYPE = TESS_QUADS }
+                               { NUM_INSTANCES = 1 }
+                               { NUM_INDICES = 60 }
+                               { FIRST_INDX = 0 }
+                               { INDX_BASE = 0x10bd11d0 }
+                               { INDX_SIZE = 120 }
+                       draw[16] register values
+!+     00000061                        CP_SCRATCH[0x5].REG: 0x61
+                       :0,97,115,98
+!+     00000062                        CP_SCRATCH[0x7].REG: 0x62
+                       :0,97,115,98
+ +     02000001                        PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+ +     00000012                        PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+ +     ffffffff                        PC_RESTART_INDEX: 0xffffffff
+ +     00000000                        VFD_INDEX_OFFSET: 0
+ +     00000000                        UNKNOWN_2209: 0
+109d11a0:                      0000: c0053800 00000404 00000001 0000003c 00000000 10bd11d0 00000078
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x63
+                               :0,97,115,99
+109d11bc:                      0000: 0000057f 00000063
+t0                     write CP_SCRATCH[0x5].REG (057d)
+                               CP_SCRATCH[0x5].REG: 0x67
+                               :0,103,115,99
+109d11c4:                      0000: 0000057d 00000067
+t0                     write RB_DEPTH_CONTROL (2101)
+                               RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_TEST_ENABLE }
+109d11cc:                      0000: 00002101 80000016
+t0                     write GRAS_ALPHA_CONTROL (2073)
+                               GRAS_ALPHA_CONTROL: { 0 }
+109d11d4:                      0000: 00002073 00000000
+t0                     write PC_PRIM_VTX_CNTL (21c4)
+                               PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+                               PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+109d11dc:                      0000: 000121c4 02000001 00000012
+t0                     write HLSQ_UPDATE_CONTROL (23db)
+                               HLSQ_UPDATE_CONTROL: 0x3
+109d11e8:                      0000: 000023db 00000003
+t0                     write HLSQ_CONTROL_0_REG (23c0)
+                               HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+                               HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+                               HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+                               HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+                               HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+109d11f0:                      0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfcfc 00fcfcfc
+t0                     write HLSQ_VS_CONTROL_REG (23c5)
+                               HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
+                               HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+                               HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+109d1208:                      0000: 000423c5 04000042 017e423e 007e4200 007e4200 007e4200
+t0                     write SP_SP_CTRL_REG (22c0)
+                               SP_SP_CTRL_REG: { 0x140010 }
+109d1220:                      0000: 000022c0 00140010
+t0                     write SP_INSTR_CACHE_CTRL (22c1)
+                               SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+109d1228:                      0000: 000022c1 000005ff
+t0                     write SP_VS_LENGTH_REG (22e5)
+                               SP_VS_LENGTH_REG: 4
+109d1230:                      0000: 000022e5 00000004
+t0                     write SP_VS_CTRL_REG0 (22c4)
+                               SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+                               SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
+                               SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
+109d1238:                      0000: 000222c4 00201400 08000042 0010fc0a
+t0                     write SP_VS_OUT[0].REG (22c7)
+                               SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
+109d1248:                      0000: 000022c7 00001e0e
+t0                     write SP_VS_VPC_DST[0].REG (22d8)
+                               SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
+109d1250:                      0000: 000022d8 08080808
+t0                     write SP_VS_OBJ_OFFSET_REG (22e0)
+                               SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+                               SP_VS_OBJ_START: 0x10cd5000
+109d1258:                      0000: 000122e0 00000000 10cd5000
+t0                     write SP_FS_LENGTH_REG (22ef)
+                               SP_FS_LENGTH_REG: 1
+109d1264:                      0000: 000022ef 00000001
+t0                     write SP_FS_CTRL_REG0 (22e8)
+                               SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+                               SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
+109d126c:                      0000: 000122e8 00340402 8010003e
+t0                     write SP_FS_OBJ_OFFSET_REG (22ea)
+                               SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+                               SP_FS_OBJ_START: 0x10cd2000
+109d1278:                      0000: 000122ea 7e420000 10cd2000
+t0                     write SP_HS_OBJ_OFFSET_REG (230d)
+                               SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109d1284:                      0000: 0000230d 7e420000
+t0                     write SP_DS_OBJ_OFFSET_REG (2334)
+                               SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109d128c:                      0000: 00002334 7e420000
+t0                     write SP_GS_OBJ_OFFSET_REG (235b)
+                               SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109d1294:                      0000: 0000235b 7e420000
+t0                     write GRAS_CNTL (2003)
+                               GRAS_CNTL: { 0 }
+109d129c:                      0000: 00002003 00000000
+t0                     write RB_RENDER_CONTROL2 (20a3)
+                               RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
+109d12a4:                      0000: 000020a3 00000000
+t0                     write RB_FS_OUTPUT_REG (2100)
+                               RB_FS_OUTPUT_REG: { MRT = 1 }
+109d12ac:                      0000: 00002100 00000001
+t0                     write SP_FS_OUTPUT_REG (22f0)
+                               SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+109d12b4:                      0000: 000022f0 0000fc01
+t0                     write SP_FS_MRT[0].REG (22f1)
+                               SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+                               SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
+109d12bc:                      0000: 000722f1 0001a000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0                     write VPC_ATTR (2140)
+                               VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
+                               VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
+109d12e0:                      0000: 00012140 42001004 00040400
+t0                     write VPC_VARYING_INTERP[0].MODE (2142)
+                               VPC_VARYING_INTERP[0].MODE: 0x55
+                               VPC_VARYING_INTERP[0x1].MODE: 0
+                               VPC_VARYING_INTERP[0x2].MODE: 0
+                               VPC_VARYING_INTERP[0x3].MODE: 0
+                               VPC_VARYING_INTERP[0x4].MODE: 0
+                               VPC_VARYING_INTERP[0x5].MODE: 0
+                               VPC_VARYING_INTERP[0x6].MODE: 0
+                               VPC_VARYING_INTERP[0x7].MODE: 0
+109d12ec:                      0000: 00072142 00000055 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0                     write VPC_VARYING_PS_REPL[0].MODE (214a)
+                               VPC_VARYING_PS_REPL[0].MODE: 0
+                               VPC_VARYING_PS_REPL[0x1].MODE: 0
+                               VPC_VARYING_PS_REPL[0x2].MODE: 0
+                               VPC_VARYING_PS_REPL[0x3].MODE: 0
+                               VPC_VARYING_PS_REPL[0x4].MODE: 0
+                               VPC_VARYING_PS_REPL[0x5].MODE: 0
+                               VPC_VARYING_PS_REPL[0x6].MODE: 0
+                               VPC_VARYING_PS_REPL[0x7].MODE: 0
+109d1310:                      0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (131 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 4 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :2:0000:0000[40700000x_10000002x] mul.f r0.x, r0.z, c0.x
+                               :2:0001:0001[40700001x_10030002x] mul.f r0.y, r0.z, c0.w
+                               :3:0002:0002[63818000x_00001004x] mad.f32 r0.x, c1.x, r0.w, r0.x
+                               :3:0003:0003[63818001x_00011007x] mad.f32 r0.y, c1.w, r0.w, r0.y
+                               :3:0004:0004[63820000x_00001008x] mad.f32 r0.x, c2.x, r1.x, r0.x
+                               :3:0005:0005[63820001x_0001100bx] mad.f32 r0.y, c2.w, r1.x, r0.y
+                               :3:0006:0006[6382800ax_0000100cx] mad.f32 r2.z, c3.x, r1.y, r0.x
+                               :2:0007:0007[40700000x_10010002x] mul.f r0.x, r0.z, c0.y
+                               :3:0008:0008[6382800dx_0001100fx] mad.f32 r3.y, c3.w, r1.y, r0.y
+                               :3:0009:0009[63818000x_00001005x] mad.f32 r0.x, c1.y, r0.w, r0.x
+                               :1:0010:0010[20244001x_00000010x] mov.f32f32 r0.y, c4.x
+                               :3:0011:0011[63820000x_00001009x] mad.f32 r0.x, c2.y, r1.x, r0.x
+                               :0:0012:0012[00000000x_00000000x] nop
+                               :3:0013:0013[6382800bx_0000100dx] mad.f32 r2.w, c3.y, r1.y, r0.x
+                               :2:0014:0014[40700000x_10020002x] mul.f r0.x, r0.z, c0.z
+                               :2:0015:0015[40100001x_0001101cx] add.f r0.y, c7.x, r0.y
+                               :3:0016:0016[63818000x_00001006x] mad.f32 r0.x, c1.z, r0.w, r0.x
+                               :1:0017:0017[20244002x_00000011x] mov.f32f32 r0.z, c4.y
+                               :3:0018:0018[63820000x_0000100ax] mad.f32 r0.x, c2.z, r1.x, r0.x
+                               :1:0019:0019[20244004x_00000013x] mov.f32f32 r1.x, c4.w
+                               :3:0020:0020[6382800cx_0000100ex] mad.f32 r3.x, c3.z, r1.y, r0.x
+                               :2:0021:0021[40700000x_00070007x] mul.f r0.x, r1.w, r1.w
+                               :2:0022:0022[40100002x_0002101dx] add.f r0.z, c7.y, r0.z
+                               :3:0023:0023[63830000x_00000006x] mad.f32 r0.x, r1.z, r1.z, r0.x
+                               :2:0024:0024[40500411x_00041013x] (sat)max.f r4.y, c4.w, r1.x
+                               :3:0025:0025[63840000x_00000008x] mad.f32 r0.x, r2.x, r2.x, r0.x
+                               :1:0026:0026[20244003x_00000012x] mov.f32f32 r0.w, c4.z
+                               :0:0027:0027[00000200x_00000000x] (rpt2)nop
+                               :2:0028:0030[40100003x_0003101ex] add.f r0.w, c7.z, r0.w
+                               :0:0029:0031[00000000x_00000000x] nop
+                               :4:0030:0032[80300000x_00000000x] rsq r0.x, r0.x
+                               :2:0031:0033[40701004x_00000007x] (ss)mul.f r1.x, r1.w, r0.x
+                               :0:0032:0034[00000200x_00000000x] (rpt2)nop
+                               :2:0033:0037[40700004x_10150004x] mul.f r1.x, r1.x, c5.y
+                               :2:0034:0038[40700005x_00000006x] mul.f r1.y, r1.z, r0.x
+                               :0:0035:0039[00000200x_00000000x] (rpt2)nop
+                               :3:0036:0042[63828004x_00041014x] mad.f32 r1.x, c5.x, r1.y, r1.x
+                               :2:0037:0043[40700000x_00000008x] mul.f r0.x, r2.x, r0.x
+                               :0:0038:0044[00000200x_00000000x] (rpt2)nop
+                               :3:0039:0047[63800000x_00041016x] mad.f32 r0.x, c5.z, r0.x, r1.x
+                               :0:0040:0048[00000200x_00000000x] (rpt2)nop
+                               :2:0041:0051[40b00004x_00001034x] cmps.f.lt r1.x, c13.x, r0.x
+                               :2:0042:0052[40500000x_00001034x] max.f r0.x, c13.x, r0.x
+                               :0:0043:0053[00000100x_00000000x] (rpt1)nop
+                               :1:0044:0055[200c4004x_00000004x] cov.u32f32 r1.x, r1.x
+                               :3:0045:0056[63800001x_00011020x] mad.f32 r0.y, c8.x, r0.x, r0.y
+                               :3:0046:0057[63800002x_00021021x] mad.f32 r0.z, c8.y, r0.x, r0.z
+                               :3:0047:0058[63800000x_00031022x] mad.f32 r0.x, c8.z, r0.x, r0.w
+                               :3:0048:0059[6382040ex_00011024x] (sat)mad.f32 r3.z, c9.x, r1.x, r0.y
+                               :3:0049:0060[6382040fx_00021025x] (sat)mad.f32 r3.w, c9.y, r1.x, r0.z
+                               :3:0050:0061[63820410x_00001026x] (sat)mad.f32 r4.x, c9.z, r1.x, r0.x
+                               :0:0051:0062[03000000x_00000000x] end
+                               :0:0052:0063[00000000x_00000000x] nop
+                               :0:0053:0064[00000000x_00000000x] nop
+                               :0:0054:0065[00000000x_00000000x] nop
+                               :0:0055:0066[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): 0-8 10-17 (cnt=17, max=17)
+                               - used (merged): 0-17 20-35 (cnt=34, max=35)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): 2-8 (cnt=7, max=8)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): 0-22 28-30 32-34 36-38 52 (cnt=33, max=52)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): 10-17 (cnt=8, max=17)  (estimated)
+                               - shaderdb: 67 instructions, 31 nops, 36 non-nops, (56 instlen), 0 half, 5 full
+                               - shaderdb: 1 (ss), 0 (sy)
+109d1334:                      0000: c0813000 01200000 00000000 10000002 40700000 10030002 40700001 00001004
+109d1354:                      0020: 63818000 00011007 63818001 00001008 63820000 0001100b 63820001 0000100c
+109d1374:                      0040: 6382800a 10010002 40700000 0001100f 6382800d 00001005 63818000 00000010
+109d1394:                      0060: 20244001 00001009 63820000 00000000 00000000 0000100d 6382800b 10020002
+109d13b4:                      0080: 40700000 0001101c 40100001 00001006 63818000 00000011 20244002 0000100a
+109d13d4:                      00a0: 63820000 00000013 20244004 0000100e 6382800c 00070007 40700000 0002101d
+109d13f4:                      00c0: 40100002 00000006 63830000 00041013 40500411 00000008 63840000 00000012
+109d1414:                      00e0: 20244003 00000000 00000200 0003101e 40100003 00000000 00000000 00000000
+109d1434:                      0100: 80300000 00000007 40701004 00000000 00000200 10150004 40700004 00000006
+109d1454:                      0120: 40700005 00000000 00000200 00041014 63828004 00000008 40700000 00000000
+109d1474:                      0140: 00000200 00041016 63800000 00000000 00000200 00001034 40b00004 00001034
+109d1494:                      0160: 40500000 00000000 00000100 00000004 200c4004 00011020 63800001 00021021
+109d14b4:                      0180: 63800002 00031022 63800000 00011024 6382040e 00021025 6382040f 00001026
+109d14d4:                      01a0: 63820410 00000000 03000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (35 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :0:0000:0000[00000000x_00000000x] nop
+                               :6:0001:0001[c7c60000x_01c00000x] ldlv.u32 r0.x, l[0], 1
+                               :6:0002:0002[c7c60001x_01c00002x] ldlv.u32 r0.y, l[1], 1
+                               :6:0003:0003[c7c60002x_01c00004x] ldlv.u32 r0.z, l[2], 1
+                               :6:0004:0004[c7c60003x_01c00006x] ldlv.u32 r0.w, l[3], 1
+                               :2:0005:0005[473090fcx_00002000x] (ss)bary.f (ei)r63.x, 0, r0.x
+                               :0:0006:0006[03000000x_00000000x] end
+                               :0:0007:0007[00000000x_00000000x] nop
+                               :0:0008:0008[00000000x_00000000x] nop
+                               :0:0009:0009[00000000x_00000000x] nop
+                               :0:0010:0010[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): 0-3 252 (cnt=5, max=3)
+                               - used (merged): 0-7 504-505 (cnt=10, max=7)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): 0-3 (cnt=4, max=3)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): (cnt=0, max=0)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): 252 (cnt=1, max=0)  (estimated)
+                               - shaderdb: 11 instructions, 5 nops, 6 non-nops, (11 instlen), 0 half, 1 full
+                               - shaderdb: 1 (ss), 0 (sy)
+109d1540:                      0000: c0213000 00700000 00000000 00000000 00000000 01c00000 c7c60000 01c00002
+109d1560:                      0020: c7c60001 01c00004 c7c60002 01c00006 c7c60003 00002000 473090fc 00000000
+109d1580:                      0040: 03000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
+109d15cc:                      0000: c0002600 00000000
+t3                     opcode: CP_LOAD_STATE4 (30) (51 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
+                               { STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
+109d15e0:                              3.924428 -1.210718 0.674073 0.570369 1.829991 4.619613 -0.131666 -0.111410
+109d1600:                              2.500000 -1.480991 -0.961761 -0.813798 -13.423393 17.082890 32.944622 37.106991
+109d1620:                              0.040000 0.040000 0.200000 1.000000 -0.244131 0.617574 0.747665 0.000000
+109d1640:                              1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000
+109d1660:                              0.200000 0.200000 1.000000 1.000000 0.000000 0.000000 0.000000 1.000000
+109d1680:                              0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000
+109d15e0:                              0000: 407b29d2 bf9af8cb 3f2c9009 3f1203b9 3fea3d23 4093d3df be06d382 bde42adc
+109d1600:                              0020: 40200000 bfbd9119 bf7635f5 bf50550b c156c638 4188a9c2 4203c74b 42146d8f
+109d1620:                              0040: 3d23d70b 3d23d70b 3e4ccccd 3f800000 be79fd80 3f1e194f 3f3f66f5 00000000
+109d1640:                              0060: 3f800000 00000000 00000000 00000000 00000000 00000000 00000000 3f800000
+109d1660:                              0080: 3e4ccccd 3e4ccccd 3f800000 3f800000 00000000 00000000 00000000 3f800000
+109d1680:                              00a0: 00000000 00000000 00000000 3f800000 02020000 02020202 02020202 00000202
+109d15d4:                      0000: c0313000 03200000 00000001 407b29d2 bf9af8cb 3f2c9009 3f1203b9 3fea3d23
+109d15f4:                      0020: 4093d3df be06d382 bde42adc 40200000 bfbd9119 bf7635f5 bf50550b c156c638
+109d1614:                      0040: 4188a9c2 4203c74b 42146d8f 3d23d70b 3d23d70b 3e4ccccd 3f800000 be79fd80
+109d1634:                      0060: 3f1e194f 3f3f66f5 00000000 3f800000 00000000 00000000 00000000 00000000
+109d1654:                      0080: 00000000 00000000 3f800000 3e4ccccd 3e4ccccd 3f800000 3f800000 00000000
+109d1674:                      00a0: 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000 02020000
+109d1694:                      00c0: 02020202 02020202 00000202
+t3                     opcode: CP_LOAD_STATE4 (30) (7 dwords)
+                               { DST_OFF = 13 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 1 }
+                               { STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
+109d16ac:                              0.000000 -28026765312.000000 -28026765312.000000 -28026765312.000000
+109d16ac:                              0000: 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
+109d16a0:                      0000: c0053000 0060000d 00000001 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
+t0                     write VFD_FETCH[0].INSTR_0 (220a)
+                               VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 | SWITCHNEXT }
+                               VFD_FETCH[0].INSTR_1: 0x107cb000
+                               VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
+                               VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
+109d16bc:                      0000: 0003220a 00080c0b 107cb000 00100000 00000001
+t0                     write VFD_DECODE[0].INSTR (228a)
+                               VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID | SWITCHNEXT }
+109d16d0:                      0000: 0000228a 6c0020df
+t0                     write VFD_FETCH[0x1].INSTR_0 (220e)
+                               VFD_FETCH[0x1].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 }
+                               VFD_FETCH[0x1].INSTR_1: 0x107cb00c
+                               VFD_FETCH[0x1].INSTR_2: { SIZE = 0xffff4 }
+                               VFD_FETCH[0x1].INSTR_3: { STEPRATE = 1 }
+109d16d8:                      0000: 0003220e 00000c0b 107cb00c 000ffff4 00000001
+t0                     write VFD_DECODE[0x1].INSTR (228b)
+                               VFD_DECODE[0x1].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r1.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
+109d16ec:                      0000: 0000228b 2c0060df
+t0                     write VFD_CONTROL_0 (2200)
+                               VFD_CONTROL_0: { TOTALATTRTOVS = 8 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 2 | STRMFETCHINSTRCNT = 2 | 0xa0000 }
+                               VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
+                               VFD_CONTROL_2: 0
+                               VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
+                               VFD_CONTROL_4: 0
+109d16f4:                      0000: 00042200 082a0008 fcfc0081 00000000 0000fc00 00000000
+t0                     write UCHE_INVALIDATE0 (0e8a)
+                               UCHE_INVALIDATE0: 0
+                               UCHE_INVALIDATE1: 0x12
+109d170c:                      0000: 00010e8a 00000000 00000012
+t0                     write VFD_INDEX_OFFSET (2208)
+                               VFD_INDEX_OFFSET: 0
+                               UNKNOWN_2209: 0
+109d1718:                      0000: 00012208 00000000 00000000
+t0                     write PC_RESTART_INDEX (21c6)
+                               PC_RESTART_INDEX: 0xffffffff
+109d1724:                      0000: 000021c6 ffffffff
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x68
+                               :0,103,115,104
+109d172c:                      0000: 0000057f 00000068
+t3                     opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
+                               { PRIM_TYPE = DI_PT_TRILIST | SOURCE_SELECT = DI_SRC_SEL_DMA | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_16_BIT | PATCH_TYPE = TESS_QUADS }
+                               { NUM_INSTANCES = 1 }
+                               { NUM_INDICES = 240 }
+                               { FIRST_INDX = 0 }
+                               { INDX_BASE = 0x10bd1248 }
+                               { INDX_SIZE = 480 }
+                       draw[17] register values
+!+     00000067                        CP_SCRATCH[0x5].REG: 0x67
+                       :0,103,115,104
+!+     00000068                        CP_SCRATCH[0x7].REG: 0x68
+                       :0,103,115,104
+ +     00000000                        UCHE_INVALIDATE0: 0
+ +     00000012                        UCHE_INVALIDATE1: 0x12
+ +     00000000                        GRAS_CNTL: { 0 }
+ +     00000000                        GRAS_ALPHA_CONTROL: { 0 }
+ +     00000000                        RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
+ +     00000001                        RB_FS_OUTPUT_REG: { MRT = 1 }
+ +     80000016                        RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_TEST_ENABLE }
+ +     42001004                        VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
+ +     00040400                        VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
+ +     00000055                        VPC_VARYING_INTERP[0].MODE: 0x55
+ +     00000000                        VPC_VARYING_INTERP[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x7].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x7].MODE: 0
+ +     02000001                        PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+ +     00000012                        PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+ +     ffffffff                        PC_RESTART_INDEX: 0xffffffff
+!+     082a0008                        VFD_CONTROL_0: { TOTALATTRTOVS = 8 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 2 | STRMFETCHINSTRCNT = 2 | 0xa0000 }
+ +     fcfc0081                        VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
+ +     00000000                        VFD_CONTROL_2: 0
+ +     0000fc00                        VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
+ +     00000000                        VFD_CONTROL_4: 0
+ +     00000000                        VFD_INDEX_OFFSET: 0
+ +     00000000                        UNKNOWN_2209: 0
+!+     00080c0b                        VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 | SWITCHNEXT }
+ +     107cb000                        VFD_FETCH[0].INSTR_1: 0x107cb000
+ +     00100000                        VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
+ +     00000001                        VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
+ +     00000c0b                        VFD_FETCH[0x1].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 }
+ +     107cb00c                        VFD_FETCH[0x1].INSTR_1: 0x107cb00c
+ +     000ffff4                        VFD_FETCH[0x1].INSTR_2: { SIZE = 0xffff4 }
+ +     00000001                        VFD_FETCH[0x1].INSTR_3: { STEPRATE = 1 }
+!+     6c0020df                        VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID | SWITCHNEXT }
+ +     2c0060df                        VFD_DECODE[0x1].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r1.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
+ +     00140010                        SP_SP_CTRL_REG: { 0x140010 }
+ +     000005ff                        SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+!+     00201400                        SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+!+     08000042                        SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
+!+     0010fc0a                        SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
+!+     00001e0e                        SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
+ +     08080808                        SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
+ +     00000000                        SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+!+     10cd5000                        SP_VS_OBJ_START: 0x10cd5000
+ +     00000004                        SP_VS_LENGTH_REG: 4
+ +     00340402                        SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+ +     8010003e                        SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
+ +     7e420000                        SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     10cd2000                        SP_FS_OBJ_START: 0x10cd2000
+ +     00000001                        SP_FS_LENGTH_REG: 1
+ +     0000fc01                        SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+ +     0001a000                        SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+ +     00000000                        SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     00000000                        SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     7e420000                        SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                        SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                        SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     28000250                        HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+ +     fcfc0100                        HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+ +     fff3f3f0                        HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+ +     fcfcfcfc                        HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+ +     00fcfcfc                        HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+ +     04000042                        HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
+ +     017e423e                        HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+ +     007e4200                        HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                        HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                        HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     00000003                        HLSQ_UPDATE_CONTROL: 0x3
+109d1734:                      0000: c0053800 00000404 00000001 000000f0 00000000 10bd1248 000001e0
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x69
+                               :0,103,115,105
+109d1750:                      0000: 0000057f 00000069
+t0                     write CP_SCRATCH[0x5].REG (057d)
+                               CP_SCRATCH[0x5].REG: 0x6d
+                               :0,109,115,105
+109d1758:                      0000: 0000057d 0000006d
+t0                     write RB_DEPTH_CONTROL (2101)
+                               RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_TEST_ENABLE }
+109d1760:                      0000: 00002101 80000016
+t0                     write GRAS_ALPHA_CONTROL (2073)
+                               GRAS_ALPHA_CONTROL: { 0 }
+109d1768:                      0000: 00002073 00000000
+t0                     write GRAS_SU_MODE_CONTROL (2078)
+                               GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
+109d1770:                      0000: 00002078 00100012
+t0                     write GRAS_SU_POINT_MINMAX (2070)
+                               GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
+                               GRAS_SU_POINT_SIZE: 1.000000
+109d1778:                      0000: 00012070 00100010 00000010
+t0                     write GRAS_SU_POLY_OFFSET_SCALE (2074)
+                               GRAS_SU_POLY_OFFSET_SCALE: 0.000000
+                               GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
+                               GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
+109d1784:                      0000: 00022074 00000000 00000000 00000000
+t0                     write GRAS_CL_CLIP_CNTL (2000)
+                               GRAS_CL_CLIP_CNTL: { 0x80000 }
+109d1794:                      0000: 00002000 00080000
+t0                     write PC_PRIM_VTX_CNTL (21c4)
+                               PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+                               PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+109d179c:                      0000: 000121c4 02000001 00000012
+t0                     write GRAS_SC_WINDOW_SCISSOR_BR (209c)
+                               GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
+                               GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
+109d17a8:                      0000: 0001209c 012b012b 00000000
+t0                     write RB_VPORT_Z_CLAMP[0].MIN (2120)
+                               RB_VPORT_Z_CLAMP[0].MIN: 0
+                               RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
+109d17b4:                      0000: 00012120 00000000 00ffffff
+t0                     write HLSQ_UPDATE_CONTROL (23db)
+                               HLSQ_UPDATE_CONTROL: 0x3
+109d17c0:                      0000: 000023db 00000003
+t0                     write HLSQ_CONTROL_0_REG (23c0)
+                               HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+                               HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+                               HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+                               HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r0.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+                               HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+109d17c8:                      0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfc00 00fcfcfc
+t0                     write HLSQ_VS_CONTROL_REG (23c5)
+                               HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
+                               HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+                               HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                               HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+109d17e0:                      0000: 000423c5 04000042 017e423e 007e4200 007e4200 007e4200
+t0                     write SP_SP_CTRL_REG (22c0)
+                               SP_SP_CTRL_REG: { 0x140010 }
+109d17f8:                      0000: 000022c0 00140010
+t0                     write SP_INSTR_CACHE_CTRL (22c1)
+                               SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+109d1800:                      0000: 000022c1 000005ff
+t0                     write SP_VS_LENGTH_REG (22e5)
+                               SP_VS_LENGTH_REG: 4
+109d1808:                      0000: 000022e5 00000004
+t0                     write SP_VS_CTRL_REG0 (22c4)
+                               SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+                               SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
+                               SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
+109d1810:                      0000: 000222c4 00201400 08000042 0010fc0a
+t0                     write SP_VS_OUT[0].REG (22c7)
+                               SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
+109d1820:                      0000: 000022c7 00001e0e
+t0                     write SP_VS_VPC_DST[0].REG (22d8)
+                               SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
+109d1828:                      0000: 000022d8 08080808
+t0                     write SP_VS_OBJ_OFFSET_REG (22e0)
+                               SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+                               SP_VS_OBJ_START: 0x10cd5000
+109d1830:                      0000: 000122e0 00000000 10cd5000
+t0                     write SP_FS_LENGTH_REG (22ef)
+                               SP_FS_LENGTH_REG: 1
+109d183c:                      0000: 000022ef 00000001
+t0                     write SP_FS_CTRL_REG0 (22e8)
+                               SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 2 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+                               SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
+109d1844:                      0000: 000122e8 00340802 8010003e
+t0                     write SP_FS_OBJ_OFFSET_REG (22ea)
+                               SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+                               SP_FS_OBJ_START: 0x108cb000
+109d1850:                      0000: 000122ea 7e420000 108cb000
+t0                     write SP_HS_OBJ_OFFSET_REG (230d)
+                               SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109d185c:                      0000: 0000230d 7e420000
+t0                     write SP_DS_OBJ_OFFSET_REG (2334)
+                               SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109d1864:                      0000: 00002334 7e420000
+t0                     write SP_GS_OBJ_OFFSET_REG (235b)
+                               SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+109d186c:                      0000: 0000235b 7e420000
+t0                     write GRAS_CNTL (2003)
+                               GRAS_CNTL: { IJ_PERSP }
+109d1874:                      0000: 00002003 00000001
+t0                     write RB_RENDER_CONTROL2 (20a3)
+                               RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 | IJ_PERSP_PIXEL }
+109d187c:                      0000: 000020a3 00001000
+t0                     write RB_FS_OUTPUT_REG (2100)
+                               RB_FS_OUTPUT_REG: { MRT = 1 }
+109d1884:                      0000: 00002100 00000001
+t0                     write SP_FS_OUTPUT_REG (22f0)
+                               SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+109d188c:                      0000: 000022f0 0000fc01
+t0                     write SP_FS_MRT[0].REG (22f1)
+                               SP_FS_MRT[0].REG: { REGID = r0.z | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+                               SP_FS_MRT[0x1].REG: { REGID = r0.z | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x2].REG: { REGID = r0.z | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x3].REG: { REGID = r0.z | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x4].REG: { REGID = r0.z | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x5].REG: { REGID = r0.z | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x6].REG: { REGID = r0.z | MRTFORMAT = 0 }
+                               SP_FS_MRT[0x7].REG: { REGID = r0.z | MRTFORMAT = 0 }
+109d1894:                      0000: 000722f1 0001a002 00000002 00000002 00000002 00000002 00000002 00000002
+109d18b4:                      0020: 00000002
+t0                     write VPC_ATTR (2140)
+                               VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
+                               VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
+109d18b8:                      0000: 00012140 42001004 00040400
+t0                     write VPC_VARYING_INTERP[0].MODE (2142)
+                               VPC_VARYING_INTERP[0].MODE: 0
+                               VPC_VARYING_INTERP[0x1].MODE: 0
+                               VPC_VARYING_INTERP[0x2].MODE: 0
+                               VPC_VARYING_INTERP[0x3].MODE: 0
+                               VPC_VARYING_INTERP[0x4].MODE: 0
+                               VPC_VARYING_INTERP[0x5].MODE: 0
+                               VPC_VARYING_INTERP[0x6].MODE: 0
+                               VPC_VARYING_INTERP[0x7].MODE: 0
+109d18c4:                      0000: 00072142 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0                     write VPC_VARYING_PS_REPL[0].MODE (214a)
+                               VPC_VARYING_PS_REPL[0].MODE: 0
+                               VPC_VARYING_PS_REPL[0x1].MODE: 0
+                               VPC_VARYING_PS_REPL[0x2].MODE: 0
+                               VPC_VARYING_PS_REPL[0x3].MODE: 0
+                               VPC_VARYING_PS_REPL[0x4].MODE: 0
+                               VPC_VARYING_PS_REPL[0x5].MODE: 0
+                               VPC_VARYING_PS_REPL[0x6].MODE: 0
+                               VPC_VARYING_PS_REPL[0x7].MODE: 0
+109d18e8:                      0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (131 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 4 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :2:0000:0000[40700000x_10000002x] mul.f r0.x, r0.z, c0.x
+                               :2:0001:0001[40700001x_10030002x] mul.f r0.y, r0.z, c0.w
+                               :3:0002:0002[63818000x_00001004x] mad.f32 r0.x, c1.x, r0.w, r0.x
+                               :3:0003:0003[63818001x_00011007x] mad.f32 r0.y, c1.w, r0.w, r0.y
+                               :3:0004:0004[63820000x_00001008x] mad.f32 r0.x, c2.x, r1.x, r0.x
+                               :3:0005:0005[63820001x_0001100bx] mad.f32 r0.y, c2.w, r1.x, r0.y
+                               :3:0006:0006[6382800ax_0000100cx] mad.f32 r2.z, c3.x, r1.y, r0.x
+                               :2:0007:0007[40700000x_10010002x] mul.f r0.x, r0.z, c0.y
+                               :3:0008:0008[6382800dx_0001100fx] mad.f32 r3.y, c3.w, r1.y, r0.y
+                               :3:0009:0009[63818000x_00001005x] mad.f32 r0.x, c1.y, r0.w, r0.x
+                               :1:0010:0010[20244001x_00000010x] mov.f32f32 r0.y, c4.x
+                               :3:0011:0011[63820000x_00001009x] mad.f32 r0.x, c2.y, r1.x, r0.x
+                               :0:0012:0012[00000000x_00000000x] nop
+                               :3:0013:0013[6382800bx_0000100dx] mad.f32 r2.w, c3.y, r1.y, r0.x
+                               :2:0014:0014[40700000x_10020002x] mul.f r0.x, r0.z, c0.z
+                               :2:0015:0015[40100001x_0001101cx] add.f r0.y, c7.x, r0.y
+                               :3:0016:0016[63818000x_00001006x] mad.f32 r0.x, c1.z, r0.w, r0.x
+                               :1:0017:0017[20244002x_00000011x] mov.f32f32 r0.z, c4.y
+                               :3:0018:0018[63820000x_0000100ax] mad.f32 r0.x, c2.z, r1.x, r0.x
+                               :1:0019:0019[20244004x_00000013x] mov.f32f32 r1.x, c4.w
+                               :3:0020:0020[6382800cx_0000100ex] mad.f32 r3.x, c3.z, r1.y, r0.x
+                               :2:0021:0021[40700000x_00070007x] mul.f r0.x, r1.w, r1.w
+                               :2:0022:0022[40100002x_0002101dx] add.f r0.z, c7.y, r0.z
+                               :3:0023:0023[63830000x_00000006x] mad.f32 r0.x, r1.z, r1.z, r0.x
+                               :2:0024:0024[40500411x_00041013x] (sat)max.f r4.y, c4.w, r1.x
+                               :3:0025:0025[63840000x_00000008x] mad.f32 r0.x, r2.x, r2.x, r0.x
+                               :1:0026:0026[20244003x_00000012x] mov.f32f32 r0.w, c4.z
+                               :0:0027:0027[00000200x_00000000x] (rpt2)nop
+                               :2:0028:0030[40100003x_0003101ex] add.f r0.w, c7.z, r0.w
+                               :0:0029:0031[00000000x_00000000x] nop
+                               :4:0030:0032[80300000x_00000000x] rsq r0.x, r0.x
+                               :2:0031:0033[40701004x_00000007x] (ss)mul.f r1.x, r1.w, r0.x
+                               :0:0032:0034[00000200x_00000000x] (rpt2)nop
+                               :2:0033:0037[40700004x_10150004x] mul.f r1.x, r1.x, c5.y
+                               :2:0034:0038[40700005x_00000006x] mul.f r1.y, r1.z, r0.x
+                               :0:0035:0039[00000200x_00000000x] (rpt2)nop
+                               :3:0036:0042[63828004x_00041014x] mad.f32 r1.x, c5.x, r1.y, r1.x
+                               :2:0037:0043[40700000x_00000008x] mul.f r0.x, r2.x, r0.x
+                               :0:0038:0044[00000200x_00000000x] (rpt2)nop
+                               :3:0039:0047[63800000x_00041016x] mad.f32 r0.x, c5.z, r0.x, r1.x
+                               :0:0040:0048[00000200x_00000000x] (rpt2)nop
+                               :2:0041:0051[40b00004x_00001034x] cmps.f.lt r1.x, c13.x, r0.x
+                               :2:0042:0052[40500000x_00001034x] max.f r0.x, c13.x, r0.x
+                               :0:0043:0053[00000100x_00000000x] (rpt1)nop
+                               :1:0044:0055[200c4004x_00000004x] cov.u32f32 r1.x, r1.x
+                               :3:0045:0056[63800001x_00011020x] mad.f32 r0.y, c8.x, r0.x, r0.y
+                               :3:0046:0057[63800002x_00021021x] mad.f32 r0.z, c8.y, r0.x, r0.z
+                               :3:0047:0058[63800000x_00031022x] mad.f32 r0.x, c8.z, r0.x, r0.w
+                               :3:0048:0059[6382040ex_00011024x] (sat)mad.f32 r3.z, c9.x, r1.x, r0.y
+                               :3:0049:0060[6382040fx_00021025x] (sat)mad.f32 r3.w, c9.y, r1.x, r0.z
+                               :3:0050:0061[63820410x_00001026x] (sat)mad.f32 r4.x, c9.z, r1.x, r0.x
+                               :0:0051:0062[03000000x_00000000x] end
+                               :0:0052:0063[00000000x_00000000x] nop
+                               :0:0053:0064[00000000x_00000000x] nop
+                               :0:0054:0065[00000000x_00000000x] nop
+                               :0:0055:0066[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): 0-8 10-17 (cnt=17, max=17)
+                               - used (merged): 0-17 20-35 (cnt=34, max=35)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): 2-8 (cnt=7, max=8)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): 0-22 28-30 32-34 36-38 52 (cnt=33, max=52)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): 10-17 (cnt=8, max=17)  (estimated)
+                               - shaderdb: 67 instructions, 31 nops, 36 non-nops, (56 instlen), 0 half, 5 full
+                               - shaderdb: 1 (ss), 0 (sy)
+109d190c:                      0000: c0813000 01200000 00000000 10000002 40700000 10030002 40700001 00001004
+109d192c:                      0020: 63818000 00011007 63818001 00001008 63820000 0001100b 63820001 0000100c
+109d194c:                      0040: 6382800a 10010002 40700000 0001100f 6382800d 00001005 63818000 00000010
+109d196c:                      0060: 20244001 00001009 63820000 00000000 00000000 0000100d 6382800b 10020002
+109d198c:                      0080: 40700000 0001101c 40100001 00001006 63818000 00000011 20244002 0000100a
+109d19ac:                      00a0: 63820000 00000013 20244004 0000100e 6382800c 00070007 40700000 0002101d
+109d19cc:                      00c0: 40100002 00000006 63830000 00041013 40500411 00000008 63840000 00000012
+109d19ec:                      00e0: 20244003 00000000 00000200 0003101e 40100003 00000000 00000000 00000000
+109d1a0c:                      0100: 80300000 00000007 40701004 00000000 00000200 10150004 40700004 00000006
+109d1a2c:                      0120: 40700005 00000000 00000200 00041014 63828004 00000008 40700000 00000000
+109d1a4c:                      0140: 00000200 00041016 63800000 00000000 00000200 00001034 40b00004 00001034
+109d1a6c:                      0160: 40500000 00000000 00000100 00000004 200c4004 00011020 63800001 00021021
+109d1a8c:                      0180: 63800002 00031022 63800000 00011024 6382040e 00021025 6382040f 00001026
+109d1aac:                      01a0: 63820410 00000000 03000000 00000000 00000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_LOAD_STATE4 (30) (35 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
+                               { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                               :2:0000:0000[47300002x_00002000x] bary.f r0.z, 0, r0.x
+                               :2:0001:0001[47300003x_00002001x] bary.f r0.w, 1, r0.x
+                               :2:0002:0002[47300004x_00002002x] bary.f r1.x, 2, r0.x
+                               :2:0003:0003[47308005x_00002003x] bary.f (ei)r1.y, 3, r0.x
+                               :0:0004:0004[03000000x_00000000x] end
+                               :0:0005:0005[00000000x_00000000x] nop
+                               :0:0006:0006[00000000x_00000000x] nop
+                               :0:0007:0007[00000000x_00000000x] nop
+                               :0:0008:0008[00000000x_00000000x] nop
+                               Register Stats:
+                               - used (half): (cnt=0, max=0)
+                               - used (full): 0 2-5 (cnt=5, max=5)
+                               - used (merged): 0-1 4-11 (cnt=10, max=11)
+                               - input (half): (cnt=0, max=0)
+                               - input (full): 0 (cnt=1, max=0)
+                               - const (half): (cnt=0, max=0)
+                               - const (full): (cnt=0, max=0)
+                               - output (half): (cnt=0, max=0)  (estimated)
+                               - output (full): 2-5 (cnt=4, max=5)  (estimated)
+                               - shaderdb: 9 instructions, 4 nops, 5 non-nops, (9 instlen), 0 half, 2 full
+                               - shaderdb: 0 (ss), 0 (sy)
+109d1b18:                      0000: c0213000 00700000 00000000 00002000 47300002 00002001 47300003 00002002
+109d1b38:                      0020: 47300004 00002003 47308005 00000000 03000000 00000000 00000000 00000000
+*
+t3                     opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
+109d1ba4:                      0000: c0002600 00000000
+t3                     opcode: CP_LOAD_STATE4 (30) (51 dwords)
+                               { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
+                               { STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
+109d1bb8:                              3.924428 -1.210718 0.674073 0.570369 1.829991 4.619613 -0.131666 -0.111410
+109d1bd8:                              2.500000 -1.480991 -0.961761 -0.813798 -13.423393 17.082890 32.944622 37.106991
+109d1bf8:                              0.040000 0.040000 0.200000 1.000000 -0.244131 0.617574 0.747665 0.000000
+109d1c18:                              1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000
+109d1c38:                              0.200000 0.200000 1.000000 1.000000 0.000000 0.000000 0.000000 1.000000
+109d1c58:                              0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000
+109d1bb8:                              0000: 407b29d2 bf9af8cb 3f2c9009 3f1203b9 3fea3d23 4093d3df be06d382 bde42adc
+109d1bd8:                              0020: 40200000 bfbd9119 bf7635f5 bf50550b c156c638 4188a9c2 4203c74b 42146d8f
+109d1bf8:                              0040: 3d23d70b 3d23d70b 3e4ccccd 3f800000 be79fd80 3f1e194f 3f3f66f5 00000000
+109d1c18:                              0060: 3f800000 00000000 00000000 00000000 00000000 00000000 00000000 3f800000
+109d1c38:                              0080: 3e4ccccd 3e4ccccd 3f800000 3f800000 00000000 00000000 00000000 3f800000
+109d1c58:                              00a0: 00000000 00000000 00000000 3f800000 02020000 02020202 02020202 00000202
+109d1bac:                      0000: c0313000 03200000 00000001 407b29d2 bf9af8cb 3f2c9009 3f1203b9 3fea3d23
+109d1bcc:                      0020: 4093d3df be06d382 bde42adc 40200000 bfbd9119 bf7635f5 bf50550b c156c638
+109d1bec:                      0040: 4188a9c2 4203c74b 42146d8f 3d23d70b 3d23d70b 3e4ccccd 3f800000 be79fd80
+109d1c0c:                      0060: 3f1e194f 3f3f66f5 00000000 3f800000 00000000 00000000 00000000 00000000
+109d1c2c:                      0080: 00000000 00000000 3f800000 3e4ccccd 3e4ccccd 3f800000 3f800000 00000000
+109d1c4c:                      00a0: 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000 02020000
+109d1c6c:                      00c0: 02020202 02020202 00000202
+t0                     write VFD_INDEX_OFFSET (2208)
+                               VFD_INDEX_OFFSET: 0
+                               UNKNOWN_2209: 0
+109d1c78:                      0000: 00012208 00000000 00000000
+t0                     write PC_RESTART_INDEX (21c6)
+                               PC_RESTART_INDEX: 0xffffffff
+109d1c84:                      0000: 000021c6 ffffffff
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x6e
+                               :0,109,115,110
+109d1c8c:                      0000: 0000057f 0000006e
+t3                     opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
+                               { PRIM_TYPE = DI_PT_TRILIST | SOURCE_SELECT = DI_SRC_SEL_DMA | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_16_BIT | PATCH_TYPE = TESS_QUADS }
+                               { NUM_INSTANCES = 1 }
+                               { NUM_INDICES = 60 }
+                               { FIRST_INDX = 0 }
+                               { INDX_BASE = 0x10bd1428 }
+                               { INDX_SIZE = 120 }
+                       draw[18] register values
+!+     0000006d                        CP_SCRATCH[0x5].REG: 0x6d
+                       :0,109,115,110
+!+     0000006e                        CP_SCRATCH[0x7].REG: 0x6e
+                       :0,109,115,110
+ +     00080000                        GRAS_CL_CLIP_CNTL: { 0x80000 }
+!+     00000001                        GRAS_CNTL: { IJ_PERSP }
+ +     00100010                        GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
+ +     00000010                        GRAS_SU_POINT_SIZE: 1.000000
+ +     00000000                        GRAS_ALPHA_CONTROL: { 0 }
+ +     00000000                        GRAS_SU_POLY_OFFSET_SCALE: 0.000000
+ +     00000000                        GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
+ +     00000000                        GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
+ +     00100012                        GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
+ +     012b012b                        GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
+ +     00000000                        GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
+!+     00001000                        RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 | IJ_PERSP_PIXEL }
+ +     00000001                        RB_FS_OUTPUT_REG: { MRT = 1 }
+ +     80000016                        RB_DEPTH_CONTROL: { Z_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_TEST_ENABLE }
+ +     00000000                        RB_VPORT_Z_CLAMP[0].MIN: 0
+ +     00ffffff                        RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
+ +     42001004                        VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
+ +     00040400                        VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
+!+     00000000                        VPC_VARYING_INTERP[0].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_INTERP[0x7].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x1].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x2].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x3].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x4].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x5].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x6].MODE: 0
+ +     00000000                        VPC_VARYING_PS_REPL[0x7].MODE: 0
+ +     02000001                        PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
+ +     00000012                        PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
+ +     ffffffff                        PC_RESTART_INDEX: 0xffffffff
+ +     00000000                        VFD_INDEX_OFFSET: 0
+ +     00000000                        UNKNOWN_2209: 0
+ +     00140010                        SP_SP_CTRL_REG: { 0x140010 }
+ +     000005ff                        SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+ +     00201400                        SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+ +     08000042                        SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
+ +     0010fc0a                        SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
+ +     00001e0e                        SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
+ +     08080808                        SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
+ +     00000000                        SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+ +     10cd5000                        SP_VS_OBJ_START: 0x10cd5000
+ +     00000004                        SP_VS_LENGTH_REG: 4
+!+     00340802                        SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 2 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+ +     8010003e                        SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
+ +     7e420000                        SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+!+     108cb000                        SP_FS_OBJ_START: 0x108cb000
+ +     00000001                        SP_FS_LENGTH_REG: 1
+ +     0000fc01                        SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+!+     0001a002                        SP_FS_MRT[0].REG: { REGID = r0.z | MRTFORMAT = RB4_R8G8B8A8_UNORM }
+!+     00000002                        SP_FS_MRT[0x1].REG: { REGID = r0.z | MRTFORMAT = 0 }
+!+     00000002                        SP_FS_MRT[0x2].REG: { REGID = r0.z | MRTFORMAT = 0 }
+!+     00000002                        SP_FS_MRT[0x3].REG: { REGID = r0.z | MRTFORMAT = 0 }
+!+     00000002                        SP_FS_MRT[0x4].REG: { REGID = r0.z | MRTFORMAT = 0 }
+!+     00000002                        SP_FS_MRT[0x5].REG: { REGID = r0.z | MRTFORMAT = 0 }
+!+     00000002                        SP_FS_MRT[0x6].REG: { REGID = r0.z | MRTFORMAT = 0 }
+!+     00000002                        SP_FS_MRT[0x7].REG: { REGID = r0.z | MRTFORMAT = 0 }
+ +     7e420000                        SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                        SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                        SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     28000250                        HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+ +     fcfc0100                        HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+ +     fff3f3f0                        HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+!+     fcfcfc00                        HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r0.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+ +     00fcfcfc                        HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+ +     04000042                        HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
+ +     017e423e                        HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+ +     007e4200                        HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                        HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                        HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     00000003                        HLSQ_UPDATE_CONTROL: 0x3
+109d1c94:                      0000: c0053800 00000404 00000001 0000003c 00000000 10bd1428 00000078
+t0                     write CP_SCRATCH[0x7].REG (057f)
+                               CP_SCRATCH[0x7].REG: 0x6f
+                               :0,109,115,111
+109d1cb0:                      0000: 0000057f 0000006f
+108ce2d0:              0000: c0013f00 109ce000 00000f2e
+t2             nop
+t0             write RB_DEPTH_CONTROL (2101)
+                       RB_DEPTH_CONTROL: { ZFUNC = FUNC_NEVER }
+108ce2e8:              0000: 00002101 00000000
+t0             write RB_STENCIL_CONTROL (2106)
+                       RB_STENCIL_CONTROL: { FUNC = FUNC_NEVER | FAIL = STENCIL_KEEP | ZPASS = STENCIL_KEEP | ZFAIL = STENCIL_KEEP | FUNC_BF = FUNC_NEVER | FAIL_BF = STENCIL_KEEP | ZPASS_BF = STENCIL_KEEP | ZFAIL_BF = STENCIL_KEEP }
+                       RB_STENCIL_CONTROL2: { 0 }
+108ce2f0:              0000: 00012106 00000000 00000000
+t0             write RB_STENCILREFMASK (210b)
+                       RB_STENCILREFMASK: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0xff | 0xff000000 }
+                       RB_STENCILREFMASK_BF: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0xff | 0xff000000 }
+108ce2fc:              0000: 0001210b ffff0000 ffff0000
+t0             write GRAS_SU_MODE_CONTROL (2078)
+                       GRAS_SU_MODE_CONTROL: { LINEHALFWIDTH = 0.000000 }
+108ce308:              0000: 00002078 00000000
+t3             opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
+108ce310:              0000: c0002600 00000000
+t0             write GRAS_CL_CLIP_CNTL (2000)
+                       GRAS_CL_CLIP_CNTL: { 0x80000 }
+108ce318:              0000: 00002000 00080000
+t0             write GRAS_CL_VPORT_XOFFSET_0 (2008)
+                       GRAS_CL_VPORT_XOFFSET_0: 150.000000
+                       GRAS_CL_VPORT_XSCALE_0: 150.000000
+                       GRAS_CL_VPORT_YOFFSET_0: 150.000000
+                       GRAS_CL_VPORT_YSCALE_0: -150.000000
+                       GRAS_CL_VPORT_ZOFFSET_0: 0.000000
+                       GRAS_CL_VPORT_ZSCALE_0: 1.000000
+108ce320:              0000: 00052008 43160000 43160000 43160000 c3160000 00000000 3f800000
+t0             write RB_RENDER_CONTROL (20a1)
+                       RB_RENDER_CONTROL: { DISABLE_COLOR_PIPE | 0xa }
+108ce33c:              0000: 000020a1 0000002a
+t0             write GRAS_SC_CONTROL (207b)
+                       GRAS_SC_CONTROL: { RENDER_MODE = RB_RESOLVE_PASS | MSAA_SAMPLES = 0 | MSAA_DISABLE | RASTER_MODE = 0x1 }
+108ce344:              0000: 0000207b 00001808
+t0             write PC_PRIM_VTX_CNTL (21c4)
+                       PC_PRIM_VTX_CNTL: { VAROUT = 0 | PROVOKING_VTX_LAST }
+108ce34c:              0000: 000021c4 02000000
+t0             write GRAS_ALPHA_CONTROL (2073)
+                       GRAS_ALPHA_CONTROL: { 0x2 }
+108ce354:              0000: 00002073 00000002
+t0             write GRAS_SC_WINDOW_SCISSOR_BR (209c)
+                       GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
+                       GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
+108ce35c:              0000: 0001209c 012b012b 00000000
+t0             write VFD_INDEX_OFFSET (2208)
+                       VFD_INDEX_OFFSET: 0
+                       UNKNOWN_2209: 0
+108ce368:              0000: 00012208 00000000 00000000
+t0             write HLSQ_UPDATE_CONTROL (23db)
+                       HLSQ_UPDATE_CONTROL: 0x3
+108ce374:              0000: 000023db 00000003
+t0             write HLSQ_CONTROL_0_REG (23c0)
+                       HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+                       HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+                       HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+                       HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+                       HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+108ce37c:              0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfcfc 00fcfcfc
+t0             write HLSQ_VS_CONTROL_REG (23c5)
+                       HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 1 }
+                       HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+                       HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                       HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+                       HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+108ce394:              0000: 000423c5 01000042 017e423e 007e4200 007e4200 007e4200
+t0             write SP_SP_CTRL_REG (22c0)
+                       SP_SP_CTRL_REG: { 0x140010 }
+108ce3ac:              0000: 000022c0 00140010
+t0             write SP_INSTR_CACHE_CTRL (22c1)
+                       SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+108ce3b4:              0000: 000022c1 000005ff
+t0             write SP_VS_LENGTH_REG (22e5)
+                       SP_VS_LENGTH_REG: 1
+108ce3bc:              0000: 000022e5 00000001
+t0             write SP_VS_CTRL_REG0 (22c4)
+                       SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+                       SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
+                       SP_VS_PARAM_REG: { POSREGID = r0.x | PSIZEREGID = r63.x | TOTALVSOUTVAR = 0 }
+108ce3c4:              0000: 000222c4 00200400 04000042 0000fc00
+t0             write SP_VS_OBJ_OFFSET_REG (22e0)
+                       SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+                       SP_VS_OBJ_START: 0x1073c000
+108ce3d4:              0000: 000122e0 00000000 1073c000
+t0             write SP_FS_LENGTH_REG (22ef)
+                       SP_FS_LENGTH_REG: 1
+108ce3e0:              0000: 000022ef 00000001
+t0             write SP_FS_CTRL_REG0 (22e8)
+                       SP_FS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+                       SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | 0x80000000 }
+108ce3e8:              0000: 000122e8 00340400 8000003e
+t0             write SP_FS_OBJ_OFFSET_REG (22ea)
+                       SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+                       SP_FS_OBJ_START: 0x1073b000
+108ce3f4:              0000: 000122ea 7e420000 1073b000
+t0             write SP_HS_OBJ_OFFSET_REG (230d)
+                       SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+108ce400:              0000: 0000230d 7e420000
+t0             write SP_DS_OBJ_OFFSET_REG (2334)
+                       SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+108ce408:              0000: 00002334 7e420000
+t0             write SP_GS_OBJ_OFFSET_REG (235b)
+                       SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+108ce410:              0000: 0000235b 7e420000
+t0             write GRAS_CNTL (2003)
+                       GRAS_CNTL: { 0 }
+108ce418:              0000: 00002003 00000000
+t0             write RB_RENDER_CONTROL2 (20a3)
+                       RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
+108ce420:              0000: 000020a3 00000000
+t0             write RB_FS_OUTPUT_REG (2100)
+                       RB_FS_OUTPUT_REG: { MRT = 0 }
+108ce428:              0000: 00002100 00000000
+t0             write SP_FS_OUTPUT_REG (22f0)
+                       SP_FS_OUTPUT_REG: { MRT = 0 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+108ce430:              0000: 000022f0 0000fc00
+t0             write SP_FS_MRT[0].REG (22f1)
+                       SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                       SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                       SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                       SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                       SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                       SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                       SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
+                       SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
+108ce438:              0000: 000722f1 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0             write VPC_ATTR (2140)
+                       VPC_ATTR: { TOTALATTR = 0 | THRDASSIGN = 1 | 0x40000000 }
+                       VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 0 | NUMNONPOSVSVAR = 0 }
+108ce45c:              0000: 00012140 40001000 00000000
+t0             write VPC_VARYING_INTERP[0].MODE (2142)
+                       VPC_VARYING_INTERP[0].MODE: 0
+                       VPC_VARYING_INTERP[0x1].MODE: 0
+                       VPC_VARYING_INTERP[0x2].MODE: 0
+                       VPC_VARYING_INTERP[0x3].MODE: 0
+                       VPC_VARYING_INTERP[0x4].MODE: 0
+                       VPC_VARYING_INTERP[0x5].MODE: 0
+                       VPC_VARYING_INTERP[0x6].MODE: 0
+                       VPC_VARYING_INTERP[0x7].MODE: 0
+108ce468:              0000: 00072142 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t0             write VPC_VARYING_PS_REPL[0].MODE (214a)
+                       VPC_VARYING_PS_REPL[0].MODE: 0
+                       VPC_VARYING_PS_REPL[0x1].MODE: 0
+                       VPC_VARYING_PS_REPL[0x2].MODE: 0
+                       VPC_VARYING_PS_REPL[0x3].MODE: 0
+                       VPC_VARYING_PS_REPL[0x4].MODE: 0
+                       VPC_VARYING_PS_REPL[0x5].MODE: 0
+                       VPC_VARYING_PS_REPL[0x6].MODE: 0
+                       VPC_VARYING_PS_REPL[0x7].MODE: 0
+108ce48c:              0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
+*
+t3             opcode: CP_LOAD_STATE4 (30) (35 dwords)
+                       { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 1 }
+                       { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                       :0:0000:0000[03000000x_00000000x] end
+                       :0:0001:0001[00000000x_00000000x] nop
+                       :0:0002:0002[00000000x_00000000x] nop
+                       :0:0003:0003[00000000x_00000000x] nop
+                       :0:0004:0004[00000000x_00000000x] nop
+                       Register Stats:
+                       - used (half): (cnt=0, max=0)
+                       - used (full): (cnt=0, max=0)
+                       - used (merged): (cnt=0, max=0)
+                       - input (half): (cnt=0, max=0)
+                       - input (full): (cnt=0, max=0)
+                       - const (half): (cnt=0, max=0)
+                       - const (full): (cnt=0, max=0)
+                       - output (half): (cnt=0, max=0)  (estimated)
+                       - output (full): (cnt=0, max=0)  (estimated)
+                       - shaderdb: 5 instructions, 4 nops, 1 non-nops, (5 instlen), 0 half, 0 full
+                       - shaderdb: 0 (ss), 0 (sy)
+108ce4b0:              0000: c0213000 00600000 00000000 00000000 03000000 00000000 00000000 00000000
+*
+t3             opcode: CP_LOAD_STATE4 (30) (35 dwords)
+                       { DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
+                       { STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
+                       :1:0000:0000[20244000x_00000000x] mov.f32f32 r0.x, c0.x
+                       :1:0001:0001[20244001x_00000001x] mov.f32f32 r0.y, c0.y
+                       :1:0002:0002[20244002x_00000002x] mov.f32f32 r0.z, c0.z
+                       :1:0003:0003[20244003x_00000003x] mov.f32f32 r0.w, c0.w
+                       :0:0004:0004[03000000x_00000000x] end
+                       :0:0005:0005[00000000x_00000000x] nop
+                       :0:0006:0006[00000000x_00000000x] nop
+                       :0:0007:0007[00000000x_00000000x] nop
+                       :0:0008:0008[00000000x_00000000x] nop
+                       Register Stats:
+                       - used (half): (cnt=0, max=0)
+                       - used (full): 0-3 (cnt=4, max=3)
+                       - used (merged): 0-7 (cnt=8, max=7)
+                       - input (half): (cnt=0, max=0)
+                       - input (full): (cnt=0, max=0)
+                       - const (half): (cnt=0, max=0)
+                       - const (full): 0-3 (cnt=4, max=3)
+                       - output (half): (cnt=0, max=0)  (estimated)
+                       - output (full): 0-3 (cnt=4, max=3)  (estimated)
+                       - shaderdb: 9 instructions, 8 nops, 1 non-nops, (9 instlen), 0 half, 1 full
+                       - shaderdb: 0 (ss), 0 (sy)
+108ce53c:              0000: c0213000 00700000 00000000 00000000 20244000 00000001 20244001 00000002
+108ce55c:              0020: 20244002 00000003 20244003 00000000 03000000 00000000 00000000 00000000
+*
+t0             write VFD_FETCH[0].INSTR_0 (220a)
+                       VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
+                       VFD_FETCH[0].INSTR_1: 0x1074a000
+                       VFD_FETCH[0].INSTR_2: { SIZE = 0x1000 }
+                       VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
+108ce5c8:              0000: 0003220a 0000060b 1074a000 00001000 00000001
+t0             write VFD_DECODE[0].INSTR (228a)
+                       VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.x | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
+108ce5dc:              0000: 0000228a 2c0000df
+t0             write VFD_CONTROL_0 (2200)
+                       VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
+                       VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
+                       VFD_CONTROL_2: 0
+                       VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
+                       VFD_CONTROL_4: 0
+108ce5e4:              0000: 00042200 041a0004 fcfc0081 00000000 0000fc00 00000000
+t0             write UCHE_INVALIDATE0 (0e8a)
+                       UCHE_INVALIDATE0: 0
+                       UCHE_INVALIDATE1: 0x12
+108ce5fc:              0000: 00010e8a 00000000 00000012
+t0             write RB_COPY_CONTROL (20fc)
+                       RB_COPY_CONTROL: { MSAA_RESOLVE = MSAA_ONE | MODE = RB_COPY_RESOLVE | FASTCLEAR = 0 | GMEM_BASE = 0x64000 }
+                       RB_COPY_DEST_BASE: { BASE = 0x10edc000 }
+                       RB_COPY_DEST_PITCH: { PITCH = 1280 }
+                       RB_COPY_DEST_INFO: { FORMAT = RB4_R8G8B8A8_UNORM | SWAP = WZYX | DITHER_MODE = DITHER_DISABLE | COMPONENT_ENABLE = 0xf | ENDIAN = ENDIAN_NONE | TILE = TILE4_LINEAR }
+108ce608:              0000: 000320fc 00064010 10edc000 00000028 0003c068
+t0             write CP_SCRATCH[0x7].REG (057f)
+                       CP_SCRATCH[0x7].REG: 0x75
+                       :0,109,115,117
+108ce61c:              0000: 0000057f 00000075
+t3             opcode: CP_DRAW_INDX_OFFSET (38) (4 dwords)
+                       { PRIM_TYPE = DI_PT_RECTLIST | SOURCE_SELECT = DI_SRC_SEL_AUTO_INDEX | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_8_BIT | PATCH_TYPE = TESS_QUADS }
+                       { NUM_INSTANCES = 1 }
+                       { NUM_INDICES = 2 }
+               draw[19] register values
+!+     00000075                CP_SCRATCH[0x7].REG: 0x75
+               :0,109,115,117
+ +     00000000                UCHE_INVALIDATE0: 0
+ +     00000012                UCHE_INVALIDATE1: 0x12
+ +     00080000                GRAS_CL_CLIP_CNTL: { 0x80000 }
+!+     00000000                GRAS_CNTL: { 0 }
+ +     43160000                GRAS_CL_VPORT_XOFFSET_0: 150.000000
+ +     43160000                GRAS_CL_VPORT_XSCALE_0: 150.000000
+ +     43160000                GRAS_CL_VPORT_YOFFSET_0: 150.000000
+ +     c3160000                GRAS_CL_VPORT_YSCALE_0: -150.000000
+!+     00000000                GRAS_CL_VPORT_ZOFFSET_0: 0.000000
+!+     3f800000                GRAS_CL_VPORT_ZSCALE_0: 1.000000
+!+     00000002                GRAS_ALPHA_CONTROL: { 0x2 }
+!+     00000000                GRAS_SU_MODE_CONTROL: { LINEHALFWIDTH = 0.000000 }
+!+     00001808                GRAS_SC_CONTROL: { RENDER_MODE = RB_RESOLVE_PASS | MSAA_SAMPLES = 0 | MSAA_DISABLE | RASTER_MODE = 0x1 }
+ +     012b012b                GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
+ +     00000000                GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
+!+     0000002a                RB_RENDER_CONTROL: { DISABLE_COLOR_PIPE | 0xa }
+!+     00000000                RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
+!+     00064010                RB_COPY_CONTROL: { MSAA_RESOLVE = MSAA_ONE | MODE = RB_COPY_RESOLVE | FASTCLEAR = 0 | GMEM_BASE = 0x64000 }
+!+     10edc000                RB_COPY_DEST_BASE: { BASE = 0x10edc000 }
+!+     00000028                RB_COPY_DEST_PITCH: { PITCH = 1280 }
+!+     0003c068                RB_COPY_DEST_INFO: { FORMAT = RB4_R8G8B8A8_UNORM | SWAP = WZYX | DITHER_MODE = DITHER_DISABLE | COMPONENT_ENABLE = 0xf | ENDIAN = ENDIAN_NONE | TILE = TILE4_LINEAR }
+!+     00000000                RB_FS_OUTPUT_REG: { MRT = 0 }
+!+     00000000                RB_DEPTH_CONTROL: { ZFUNC = FUNC_NEVER }
+ +     00000000                RB_STENCIL_CONTROL: { FUNC = FUNC_NEVER | FAIL = STENCIL_KEEP | ZPASS = STENCIL_KEEP | ZFAIL = STENCIL_KEEP | FUNC_BF = FUNC_NEVER | FAIL_BF = STENCIL_KEEP | ZPASS_BF = STENCIL_KEEP | ZFAIL_BF = STENCIL_KEEP }
+ +     00000000                RB_STENCIL_CONTROL2: { 0 }
+!+     ffff0000                RB_STENCILREFMASK: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0xff | 0xff000000 }
+!+     ffff0000                RB_STENCILREFMASK_BF: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0xff | 0xff000000 }
+!+     40001000                VPC_ATTR: { TOTALATTR = 0 | THRDASSIGN = 1 | 0x40000000 }
+!+     00000000                VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 0 | NUMNONPOSVSVAR = 0 }
+ +     00000000                VPC_VARYING_INTERP[0].MODE: 0
+ +     00000000                VPC_VARYING_INTERP[0x1].MODE: 0
+ +     00000000                VPC_VARYING_INTERP[0x2].MODE: 0
+ +     00000000                VPC_VARYING_INTERP[0x3].MODE: 0
+ +     00000000                VPC_VARYING_INTERP[0x4].MODE: 0
+ +     00000000                VPC_VARYING_INTERP[0x5].MODE: 0
+ +     00000000                VPC_VARYING_INTERP[0x6].MODE: 0
+ +     00000000                VPC_VARYING_INTERP[0x7].MODE: 0
+ +     00000000                VPC_VARYING_PS_REPL[0].MODE: 0
+ +     00000000                VPC_VARYING_PS_REPL[0x1].MODE: 0
+ +     00000000                VPC_VARYING_PS_REPL[0x2].MODE: 0
+ +     00000000                VPC_VARYING_PS_REPL[0x3].MODE: 0
+ +     00000000                VPC_VARYING_PS_REPL[0x4].MODE: 0
+ +     00000000                VPC_VARYING_PS_REPL[0x5].MODE: 0
+ +     00000000                VPC_VARYING_PS_REPL[0x6].MODE: 0
+ +     00000000                VPC_VARYING_PS_REPL[0x7].MODE: 0
+!+     02000000                PC_PRIM_VTX_CNTL: { VAROUT = 0 | PROVOKING_VTX_LAST }
+!+     041a0004                VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
+ +     fcfc0081                VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
+ +     00000000                VFD_CONTROL_2: 0
+ +     0000fc00                VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
+ +     00000000                VFD_CONTROL_4: 0
+ +     00000000                VFD_INDEX_OFFSET: 0
+ +     00000000                UNKNOWN_2209: 0
+!+     0000060b                VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
+!+     1074a000                VFD_FETCH[0].INSTR_1: 0x1074a000
+!+     00001000                VFD_FETCH[0].INSTR_2: { SIZE = 0x1000 }
+ +     00000001                VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
+!+     2c0000df                VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.x | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
+ +     00140010                SP_SP_CTRL_REG: { 0x140010 }
+ +     000005ff                SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
+!+     00200400                SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
+!+     04000042                SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
+!+     0000fc00                SP_VS_PARAM_REG: { POSREGID = r0.x | PSIZEREGID = r63.x | TOTALVSOUTVAR = 0 }
+ +     00000000                SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
+!+     1073c000                SP_VS_OBJ_START: 0x1073c000
+!+     00000001                SP_VS_LENGTH_REG: 1
+!+     00340400                SP_FS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
+!+     8000003e                SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | 0x80000000 }
+ +     7e420000                SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+!+     1073b000                SP_FS_OBJ_START: 0x1073b000
+ +     00000001                SP_FS_LENGTH_REG: 1
+!+     0000fc00                SP_FS_OUTPUT_REG: { MRT = 0 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
+!+     00000000                SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     00000000                SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     00000000                SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     00000000                SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     00000000                SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     00000000                SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     00000000                SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
+!+     00000000                SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
+ +     7e420000                SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     7e420000                SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
+ +     28000250                HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
+ +     fcfc0100                HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
+ +     fff3f3f0                HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
+!+     fcfcfcfc                HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
+ +     00fcfcfc                HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
+!+     01000042                HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 1 }
+ +     017e423e                HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
+ +     007e4200                HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     007e4200                HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
+ +     00000003                HLSQ_UPDATE_CONTROL: 0x3
+108ce624:              0000: c0023800 00000088 00000001 00000002
+t0             write CP_SCRATCH[0x7].REG (057f)
+                       CP_SCRATCH[0x7].REG: 0x76
+                       :0,109,115,118
+108ce634:              0000: 0000057f 00000076
+t0             write RB_COPY_CONTROL (20fc)
+                       RB_COPY_CONTROL: { MSAA_RESOLVE = MSAA_ONE | MODE = RB_COPY_RESOLVE | FASTCLEAR = 0 | GMEM_BASE = 0 }
+                       RB_COPY_DEST_BASE: { BASE = 0x10f3c000 }
+                       RB_COPY_DEST_PITCH: { PITCH = 1280 }
+                       RB_COPY_DEST_INFO: { FORMAT = RB4_R8G8B8A8_UNORM | SWAP = WXYZ | DITHER_MODE = DITHER_DISABLE | COMPONENT_ENABLE = 0xf | ENDIAN = ENDIAN_NONE | TILE = TILE4_LINEAR }
+108ce63c:              0000: 000320fc 00000010 10f3c000 00000028 0003c168
+t0             write CP_SCRATCH[0x7].REG (057f)
+                       CP_SCRATCH[0x7].REG: 0x77
+                       :0,109,115,119
+108ce650:              0000: 0000057f 00000077
+t3             opcode: CP_DRAW_INDX_OFFSET (38) (4 dwords)
+                       { PRIM_TYPE = DI_PT_RECTLIST | SOURCE_SELECT = DI_SRC_SEL_AUTO_INDEX | VIS_CULL = IGNORE_VISIBILITY | INDEX_SIZE = INDEX4_SIZE_8_BIT | PATCH_TYPE = TESS_QUADS }
+                       { NUM_INSTANCES = 1 }
+                       { NUM_INDICES = 2 }
+               draw[20] register values
+!+     00000077                CP_SCRATCH[0x7].REG: 0x77
+               :0,109,115,119
+!+     00000010                RB_COPY_CONTROL: { MSAA_RESOLVE = MSAA_ONE | MODE = RB_COPY_RESOLVE | FASTCLEAR = 0 | GMEM_BASE = 0 }
+!+     10f3c000                RB_COPY_DEST_BASE: { BASE = 0x10f3c000 }
+ +     00000028                RB_COPY_DEST_PITCH: { PITCH = 1280 }
+!+     0003c168                RB_COPY_DEST_INFO: { FORMAT = RB4_R8G8B8A8_UNORM | SWAP = WXYZ | DITHER_MODE = DITHER_DISABLE | COMPONENT_ENABLE = 0xf | ENDIAN = ENDIAN_NONE | TILE = TILE4_LINEAR }
+108ce658:              0000: c0023800 00000088 00000001 00000002
+t0             write CP_SCRATCH[0x7].REG (057f)
+                       CP_SCRATCH[0x7].REG: 0x78
+                       :0,109,115,120
+108ce668:              0000: 0000057f 00000078
+t0             write GRAS_SC_CONTROL (207b)
+                       GRAS_SC_CONTROL: { RENDER_MODE = RB_RENDERING_PASS | MSAA_SAMPLES = 0 | MSAA_DISABLE | RASTER_MODE = 0 }
+108ce670:              0000: 0000207b 00000800
+############################################################
+vertices: 0
+cmd: glxgears/23375: fence=1029605
+cmd: glxgears/23375: fence=1029606
+cmd: glxgears/23375: fence=1029607
+cmd: glxgears/23375: fence=1029608
+cmd: glxgears/23375: fence=1029609
+cmd: glxgears/23375: fence=1029610
+cmd: glxgears/23375: fence=1029611
+cmd: glxgears/23375: fence=1029612
+cmd: glxgears/23375: fence=1029613
+cmd: glxgears/23375: fence=1029614
+cmd: glxgears/23375: fence=1029615
+cmd: glxgears/23375: fence=1029616
+cmd: glxgears/23375: fence=1029617
+cmd: glxgears/23375: fence=1029618
+cmd: glxgears/23375: fence=1029619
+cmd: glxgears/23375: fence=1029620
+cmd: glxgears/23375: fence=1029621
+cmd: glxgears/23375: fence=1029622
+cmd: glxgears/23375: fence=1029623
+cmd: glxgears/23375: fence=1029624
+cmd: glxgears/23375: fence=1029625
+cmd: glxgears/23375: fence=1029626
+cmd: glxgears/23375: fence=1029627
+cmd: glxgears/23375: fence=1029628
+cmd: glxgears/23375: fence=1029629
+cmd: glxgears/23375: fence=1029630
+cmd: glxgears/23375: fence=1029631
+cmd: glxgears/23375: fence=1029632
+cmd: glxgears/23375: fence=1029633
+cmd: glxgears/23375: fence=1029634
+cmd: glxgears/23375: fence=1029635
+cmd: glxgears/23375: fence=1029636
+cmd: glxgears/23375: fence=1029637
+cmd: glxgears/23375: fence=1029638
+cmd: glxgears/23375: fence=1029639
+cmd: glxgears/23375: fence=1029640
+cmd: glxgears/23375: fence=1029641
+cmd: glxgears/23375: fence=1029642
+cmd: glxgears/23375: fence=1029643
+cmd: glxgears/23375: fence=1029644
+cmd: glxgears/23375: fence=1029645
+cmd: glxgears/23375: fence=1029646
+cmd: glxgears/23375: fence=1029647
+cmd: glxgears/23375: fence=1029648
+cmd: glxgears/23375: fence=1029649
+cmd: glxgears/23375: fence=1029650
+cmd: glxgears/23375: fence=1029651
+cmd: glxgears/23375: fence=1029652
+cmd: glxgears/23375: fence=1029653
+cmd: glxgears/23375: fence=1029654
+cmd: glxgears/23375: fence=1029655
+cmd: glxgears/23375: fence=1029656
+cmd: glxgears/23375: fence=1029657
+cmd: glxgears/23375: fence=1029658
+cmd: glxgears/23375: fence=1029659
+cmd: glxgears/23375: fence=1029660
+cmd: glxgears/23375: fence=1029661
+cmd: glxgears/23375: fence=1029662
+cmd: glxgears/23375: fence=1029663
+cmd: glxgears/23375: fence=1029664
+cmd: glxgears/23375: fence=1029665
+cmd: glxgears/23375: fence=1029666
+cmd: glxgears/23375: fence=1029667
+cmd: glxgears/23375: fence=1029668
+cmd: glxgears/23375: fence=1029669
+cmd: glxgears/23375: fence=1029670
+cmd: glxgears/23375: fence=1029671
+cmd: glxgears/23375: fence=1029672
+cmd: glxgears/23375: fence=1029673
+cmd: glxgears/23375: fence=1029674
+cmd: glxgears/23375: fence=1029675
+cmd: glxgears/23375: fence=1029676
+cmd: glxgears/23375: fence=1029677
+cmd: glxgears/23375: fence=1029678
+cmd: glxgears/23375: fence=1029679
+cmd: glxgears/23375: fence=1029680
+cmd: glxgears/23375: fence=1029681
+cmd: glxgears/23375: fence=1029682
+cmd: glxgears/23375: fence=1029683
+cmd: glxgears/23375: fence=1029684
+cmd: glxgears/23375: fence=1029685
+cmd: glxgears/23375: fence=1029686
+cmd: glxgears/23375: fence=1029687
+cmd: glxgears/23375: fence=1029688
+cmd: glxgears/23375: fence=1029689
+cmd: glxgears/23375: fence=1029690
+cmd: glxgears/23375: fence=1029691
+cmd: glxgears/23375: fence=1029692
+cmd: glxgears/23375: fence=1029693
+cmd: glxgears/23375: fence=1029694
+cmd: glxgears/23375: fence=1029695
+cmd: glxgears/23375: fence=1029696
+cmd: glxgears/23375: fence=1029697
+cmd: glxgears/23375: fence=1029698
+cmd: glxgears/23375: fence=1029699
+cmd: glxgears/23375: fence=1029700
+cmd: glxgears/23375: fence=1029701
+cmd: glxgears/23375: fence=1029702
+cmd: glxgears/23375: fence=1029703
+cmd: glxgears/23375: fence=1029704
+cmd: glxgears/23375: fence=1029705
+cmd: glxgears/23375: fence=1029706
+cmd: glxgears/23375: fence=1029707
+cmd: glxgears/23375: fence=1029708
+cmd: glxgears/23375: fence=1029709
+cmd: glxgears/23375: fence=1029710
+cmd: glxgears/23375: fence=1029711
+cmd: glxgears/23375: fence=1029712
+cmd: glxgears/23375: fence=1029713
+cmd: glxgears/23375: fence=1029714
+cmd: glxgears/23375: fence=1029715
+cmd: glxgears/23375: fence=1029716
+cmd: glxgears/23375: fence=1029717
+cmd: glxgears/23375: fence=1029718
+cmd: glxgears/23375: fence=1029719
+cmd: glxgears/23375: fence=1029720
+cmd: glxgears/23375: fence=1029721
+cmd: glxgears/23375: fence=1029722
+cmd: glxgears/23375: fence=1029723
+cmd: glxgears/23375: fence=1029724
+cmd: glxgears/23375: fence=1029725
+cmd: glxgears/23375: fence=1029726
+cmd: glxgears/23375: fence=1029727
+cmd: glxgears/23375: fence=1029728
+cmd: glxgears/23375: fence=1029729
+cmd: glxgears/23375: fence=1029730
+cmd: glxgears/23375: fence=1029731
+cmd: glxgears/23375: fence=1029732
+cmd: glxgears/23375: fence=1029733
+cmd: glxgears/23375: fence=1029734
+cmd: glxgears/23375: fence=1029735
+cmd: glxgears/23375: fence=1029736
+cmd: glxgears/23375: fence=1029737
+cmd: glxgears/23375: fence=1029738
+cmd: glxgears/23375: fence=1029739
+cmd: glxgears/23375: fence=1029740
+cmd: glxgears/23375: fence=1029741
+cmd: glxgears/23375: fence=1029742
+cmd: glxgears/23375: fence=1029743
+cmd: glxgears/23375: fence=1029744
+cmd: glxgears/23375: fence=1029745
+cmd: glxgears/23375: fence=1029746
+cmd: glxgears/23375: fence=1029747
+cmd: glxgears/23375: fence=1029748
+cmd: glxgears/23375: fence=1029749
+cmd: glxgears/23375: fence=1029750
+cmd: glxgears/23375: fence=1029751
+cmd: glxgears/23375: fence=1029752
+cmd: glxgears/23375: fence=1029753
+cmd: glxgears/23375: fence=1029754
+cmd: glxgears/23375: fence=1029755
+cmd: glxgears/23375: fence=1029756
+cmd: glxgears/23375: fence=1029757
+cmd: glxgears/23375: fence=1029758
+cmd: glxgears/23375: fence=1029759
+cmd: glxgears/23375: fence=1029760
+cmd: glxgears/23375: fence=1029761
+cmd: glxgears/23375: fence=1029762
+cmd: glxgears/23375: fence=1029763
+cmd: glxgears/23375: fence=1029764
+cmd: glxgears/23375: fence=1029765
+cmd: glxgears/23375: fence=1029766
+cmd: glxgears/23375: fence=1029767
+cmd: glxgears/23375: fence=1029768
+cmd: glxgears/23375: fence=1029769
+cmd: glxgears/23375: fence=1029770
+cmd: glxgears/23375: fence=1029771
+cmd: glxgears/23375: fence=1029772
+cmd: glxgears/23375: fence=1029773
+cmd: glxgears/23375: fence=1029774
+cmd: glxgears/23375: fence=1029775
+cmd: glxgears/23375: fence=1029776
+cmd: glxgears/23375: fence=1029777
+cmd: glxgears/23375: fence=1029778
+cmd: glxgears/23375: fence=1029779
+cmd: glxgears/23375: fence=1029780
+cmd: glxgears/23375: fence=1029781
+cmd: glxgears/23375: fence=1029782
+cmd: glxgears/23375: fence=1029783
+cmd: glxgears/23375: fence=1029784
+cmd: glxgears/23375: fence=1029785
+cmd: glxgears/23375: fence=1029786
+cmd: glxgears/23375: fence=1029787
+cmd: glxgears/23375: fence=1029788
+cmd: glxgears/23375: fence=1029789
+cmd: glxgears/23375: fence=1029790
+cmd: glxgears/23375: fence=1029791
+cmd: glxgears/23375: fence=1029792
+cmd: glxgears/23375: fence=1029793
+cmd: glxgears/23375: fence=1029794
+cmd: glxgears/23375: fence=1029795
+cmd: glxgears/23375: fence=1029796
+cmd: glxgears/23375: fence=1029797
+cmd: glxgears/23375: fence=1029798
+cmd: glxgears/23375: fence=1029799
+cmd: glxgears/23375: fence=1029800
+cmd: glxgears/23375: fence=1029801
+cmd: glxgears/23375: fence=1029802
+cmd: glxgears/23375: fence=1029803
+cmd: glxgears/23375: fence=1029804
+cmd: glxgears/23375: fence=1029805
+cmd: glxgears/23375: fence=1029806
+cmd: glxgears/23375: fence=1029807
+cmd: glxgears/23375: fence=1029808
+cmd: glxgears/23375: fence=1029809
+cmd: glxgears/23375: fence=1029810
+cmd: glxgears/23375: fence=1029811
+cmd: glxgears/23375: fence=1029812
+cmd: glxgears/23375: fence=1029813
+cmd: glxgears/23375: fence=1029814
+cmd: glxgears/23375: fence=1029815
+cmd: glxgears/23375: fence=1029816
+cmd: glxgears/23375: fence=1029817
+cmd: glxgears/23375: fence=1029818
+cmd: glxgears/23375: fence=1029819
+cmd: glxgears/23375: fence=1029820
+cmd: glxgears/23375: fence=1029821
+cmd: glxgears/23375: fence=1029822
+cmd: glxgears/23375: fence=1029823
+cmd: glxgears/23375: fence=1029824
+cmd: glxgears/23375: fence=1029825
+cmd: glxgears/23375: fence=1029826
+cmd: glxgears/23375: fence=1029827
+cmd: glxgears/23375: fence=1029828
+cmd: X/23360: fence=1029829
+cmd: glxgears/23375: fence=1029830
+cmd: glxgears/23375: fence=1029831
+cmd: X/23360: fence=1029832
+cmd: glxgears/23375: fence=1029833
+cmd: glxgears/23375: fence=1029834
+cmd: X/23360: fence=1029835
+cmd: glxgears/23375: fence=1029836
+cmd: glxgears/23375: fence=1029837
+cmd: X/23360: fence=1029838
+cmd: glxgears/23375: fence=1029839
+cmd: glxgears/23375: fence=1029840
+cmd: X/23360: fence=1029841
+cmd: glxgears/23375: fence=1029842
+cmd: glxgears/23375: fence=1029843
+cmd: X/23360: fence=1029844
+cmd: glxgears/23375: fence=1029845
+cmd: glxgears/23375: fence=1029846
+cmd: X/23360: fence=1029847