1bf215546Sopenharmony_cigpu_id: 420
2bf215546Sopenharmony_cicmd: X/23360: fence=1029603
3bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029604
4bf215546Sopenharmony_ci############################################################
5bf215546Sopenharmony_cicmdstream: 414 dwords
6bf215546Sopenharmony_cit0		write RBBM_PERFCTR_CTL (0170)
7bf215546Sopenharmony_ci			RBBM_PERFCTR_CTL: 0x1
8bf215546Sopenharmony_ci108ce000:		0000: 00000170 00000001
9bf215546Sopenharmony_cit0		write GRAS_DEBUG_ECO_CONTROL (0c81)
10bf215546Sopenharmony_ci			GRAS_DEBUG_ECO_CONTROL: 0
11bf215546Sopenharmony_ci108ce008:		0000: 00000c81 00000000
12bf215546Sopenharmony_cit0		write SP_MODE_CONTROL (0ec3)
13bf215546Sopenharmony_ci			SP_MODE_CONTROL: 0x6
14bf215546Sopenharmony_ci108ce010:		0000: 00000ec3 00000006
15bf215546Sopenharmony_cit0		write TPL1_TP_MODE_CONTROL (0f03)
16bf215546Sopenharmony_ci			TPL1_TP_MODE_CONTROL: 0x3a
17bf215546Sopenharmony_ci108ce018:		0000: 00000f03 0000003a
18bf215546Sopenharmony_cit0		write UNKNOWN_0D01 (0d01)
19bf215546Sopenharmony_ci			UNKNOWN_0D01: 0x1
20bf215546Sopenharmony_ci108ce020:		0000: 00000d01 00000001
21bf215546Sopenharmony_cit0		write UNKNOWN_0E42 (0e42)
22bf215546Sopenharmony_ci			UNKNOWN_0E42: 0
23bf215546Sopenharmony_ci108ce028:		0000: 00000e42 00000000
24bf215546Sopenharmony_cit0		write UCHE_CACHE_WAYS_VFD (0e8c)
25bf215546Sopenharmony_ci			UCHE_CACHE_WAYS_VFD: 0x7
26bf215546Sopenharmony_ci108ce030:		0000: 00000e8c 00000007
27bf215546Sopenharmony_cit0		write UCHE_CACHE_MODE_CONTROL (0e80)
28bf215546Sopenharmony_ci			UCHE_CACHE_MODE_CONTROL: 0
29bf215546Sopenharmony_ci108ce038:		0000: 00000e80 00000000
30bf215546Sopenharmony_cit0		write UCHE_INVALIDATE0 (0e8a)
31bf215546Sopenharmony_ci			UCHE_INVALIDATE0: 0
32bf215546Sopenharmony_ci			UCHE_INVALIDATE1: 0x12
33bf215546Sopenharmony_ci108ce040:		0000: 00010e8a 00000000 00000012
34bf215546Sopenharmony_cit0		write HLSQ_MODE_CONTROL (0e05)
35bf215546Sopenharmony_ci			HLSQ_MODE_CONTROL: 0
36bf215546Sopenharmony_ci108ce04c:		0000: 00000e05 00000000
37bf215546Sopenharmony_cit0		write UNKNOWN_0CC5 (0cc5)
38bf215546Sopenharmony_ci			UNKNOWN_0CC5: 0x6
39bf215546Sopenharmony_ci108ce054:		0000: 00000cc5 00000006
40bf215546Sopenharmony_cit0		write UNKNOWN_0CC6 (0cc6)
41bf215546Sopenharmony_ci			UNKNOWN_0CC6: 0
42bf215546Sopenharmony_ci108ce05c:		0000: 00000cc6 00000000
43bf215546Sopenharmony_cit0		write UNKNOWN_0EC2 (0ec2)
44bf215546Sopenharmony_ci			UNKNOWN_0EC2: 0x40000
45bf215546Sopenharmony_ci108ce064:		0000: 00000ec2 00040000
46bf215546Sopenharmony_cit0		write UNKNOWN_2001 (2001)
47bf215546Sopenharmony_ci			UNKNOWN_2001: 0
48bf215546Sopenharmony_ci108ce06c:		0000: 00002001 00000000
49bf215546Sopenharmony_cit3		opcode: CP_INVALIDATE_STATE (3b) (2 dwords)
50bf215546Sopenharmony_ci108ce074:		0000: c0003b00 00001000
51bf215546Sopenharmony_cit0		write UNKNOWN_20EF (20ef)
52bf215546Sopenharmony_ci			UNKNOWN_20EF: 0
53bf215546Sopenharmony_ci108ce07c:		0000: 000020ef 00000000
54bf215546Sopenharmony_cit0		write RB_BLEND_RED (20f0)
55bf215546Sopenharmony_ci			RB_BLEND_RED: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
56bf215546Sopenharmony_ci			RB_BLEND_RED_F32: 0.000000
57bf215546Sopenharmony_ci			RB_BLEND_GREEN: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
58bf215546Sopenharmony_ci			RB_BLEND_GREEN_F32: 0.007813
59bf215546Sopenharmony_ci108ce084:		0000: 000320f0 00000000 00000000 00000000 3c0000ff
60bf215546Sopenharmony_cit0		write UNKNOWN_2152 (2152)
61bf215546Sopenharmony_ci			UNKNOWN_2152: 0
62bf215546Sopenharmony_ci108ce098:		0000: 00002152 00000000
63bf215546Sopenharmony_cit0		write UNKNOWN_2153 (2153)
64bf215546Sopenharmony_ci			UNKNOWN_2153: 0
65bf215546Sopenharmony_ci108ce0a0:		0000: 00002153 00000000
66bf215546Sopenharmony_cit0		write UNKNOWN_2154 (2154)
67bf215546Sopenharmony_ci			UNKNOWN_2154: 0
68bf215546Sopenharmony_ci108ce0a8:		0000: 00002154 00000000
69bf215546Sopenharmony_cit0		write UNKNOWN_2155 (2155)
70bf215546Sopenharmony_ci			UNKNOWN_2155: 0
71bf215546Sopenharmony_ci108ce0b0:		0000: 00002155 00000000
72bf215546Sopenharmony_cit0		write UNKNOWN_2156 (2156)
73bf215546Sopenharmony_ci			UNKNOWN_2156: 0
74bf215546Sopenharmony_ci108ce0b8:		0000: 00002156 00000000
75bf215546Sopenharmony_cit0		write UNKNOWN_2157 (2157)
76bf215546Sopenharmony_ci			UNKNOWN_2157: 0
77bf215546Sopenharmony_ci108ce0c0:		0000: 00002157 00000000
78bf215546Sopenharmony_cit0		write UNKNOWN_21C3 (21c3)
79bf215546Sopenharmony_ci			UNKNOWN_21C3: 0x1d
80bf215546Sopenharmony_ci108ce0c8:		0000: 000021c3 0000001d
81bf215546Sopenharmony_cit0		write PC_GS_PARAM (21e5)
82bf215546Sopenharmony_ci			PC_GS_PARAM: { MAX_VERTICES = 0 | INVOCATIONS = 0 | PRIMTYPE = PC_DRAW_POINTS }
83bf215546Sopenharmony_ci108ce0d0:		0000: 000021e5 00000000
84bf215546Sopenharmony_cit0		write UNKNOWN_21E6 (21e6)
85bf215546Sopenharmony_ci			UNKNOWN_21E6: 0x1
86bf215546Sopenharmony_ci108ce0d8:		0000: 000021e6 00000001
87bf215546Sopenharmony_cit0		write PC_HS_PARAM (21e7)
88bf215546Sopenharmony_ci			PC_HS_PARAM: { VERTICES_OUT = 0 | SPACING = EQUAL_SPACING }
89bf215546Sopenharmony_ci108ce0e0:		0000: 000021e7 00000000
90bf215546Sopenharmony_cit0		write UNKNOWN_22D7 (22d7)
91bf215546Sopenharmony_ci			UNKNOWN_22D7: 0
92bf215546Sopenharmony_ci108ce0e8:		0000: 000022d7 00000000
93bf215546Sopenharmony_cit0		write TPL1_TP_TEX_OFFSET (2380)
94bf215546Sopenharmony_ci			TPL1_TP_TEX_OFFSET: 0
95bf215546Sopenharmony_ci108ce0f0:		0000: 00002380 00000000
96bf215546Sopenharmony_cit0		write TPL1_TP_TEX_COUNT (2381)
97bf215546Sopenharmony_ci			TPL1_TP_TEX_COUNT: { VS = 16 | HS = 0 | DS = 0 | GS = 0 }
98bf215546Sopenharmony_ci108ce0f8:		0000: 00002381 00000010
99bf215546Sopenharmony_cit0		write TPL1_TP_FS_TEX_COUNT (23a0)
100bf215546Sopenharmony_ci			TPL1_TP_FS_TEX_COUNT: { FS = 16 | CS = 0 }
101bf215546Sopenharmony_ci108ce100:		0000: 000023a0 00000010
102bf215546Sopenharmony_cit3		opcode: CP_SET_DRAW_STATE (43) (3 dwords)
103bf215546Sopenharmony_ci			{ COUNT = 0 | DISABLE_ALL_GROUPS | GROUP_ID = 0 }
104bf215546Sopenharmony_ci			{ ADDR_LO = 0 }
105bf215546Sopenharmony_ci108ce108:		0000: c0014300 00040000 00000000
106bf215546Sopenharmony_cit0		write SP_VS_PVT_MEM_PARAM (22e2)
107bf215546Sopenharmony_ci			SP_VS_PVT_MEM_PARAM: 0x8000001
108bf215546Sopenharmony_ci			SP_VS_PVT_MEM_ADDR: 0x10cd7000
109bf215546Sopenharmony_ci108ce114:		0000: 000122e2 08000001 10cd7000
110bf215546Sopenharmony_cit0		write SP_FS_PVT_MEM_PARAM (22ec)
111bf215546Sopenharmony_ci			SP_FS_PVT_MEM_PARAM: 0x8000001
112bf215546Sopenharmony_ci			SP_FS_PVT_MEM_ADDR: 0x10cd9000
113bf215546Sopenharmony_ci108ce120:		0000: 000122ec 08000001 10cd9000
114bf215546Sopenharmony_cit0		write GRAS_SC_CONTROL (207b)
115bf215546Sopenharmony_ci			GRAS_SC_CONTROL: { RENDER_MODE = RB_RENDERING_PASS | MSAA_SAMPLES = 0 | MSAA_DISABLE | RASTER_MODE = 0 }
116bf215546Sopenharmony_ci108ce12c:		0000: 0000207b 00000800
117bf215546Sopenharmony_cit0		write RB_MSAA_CONTROL (20a2)
118bf215546Sopenharmony_ci			RB_MSAA_CONTROL: { DISABLE | SAMPLES = 0 }
119bf215546Sopenharmony_ci108ce134:		0000: 000020a2 00001000
120bf215546Sopenharmony_cit0		write GRAS_CL_GB_CLIP_ADJ (2004)
121bf215546Sopenharmony_ci			GRAS_CL_GB_CLIP_ADJ: { HORZ = 0 | VERT = 0 }
122bf215546Sopenharmony_ci108ce13c:		0000: 00002004 00000000
123bf215546Sopenharmony_cit0		write RB_ALPHA_CONTROL (20f8)
124bf215546Sopenharmony_ci			RB_ALPHA_CONTROL: { ALPHA_REF = 0 | ALPHA_TEST_FUNC = FUNC_ALWAYS }
125bf215546Sopenharmony_ci108ce144:		0000: 000020f8 00000e00
126bf215546Sopenharmony_cit0		write RB_FS_OUTPUT (20f9)
127bf215546Sopenharmony_ci			RB_FS_OUTPUT: { ENABLE_BLEND = 0 | SAMPLE_MASK = 0xffff }
128bf215546Sopenharmony_ci108ce14c:		0000: 000020f9 ffff0000
129bf215546Sopenharmony_cit0		write GRAS_ALPHA_CONTROL (2073)
130bf215546Sopenharmony_ci			GRAS_ALPHA_CONTROL: { 0 }
131bf215546Sopenharmony_ci108ce154:		0000: 00002073 00000000
132bf215546Sopenharmony_cit0		write VSC_BIN_SIZE (0c00)
133bf215546Sopenharmony_ci			VSC_BIN_SIZE: { WIDTH = 320 | HEIGHT = 320 }
134bf215546Sopenharmony_ci108ce15c:		0000: 00000c00 0000014a
135bf215546Sopenharmony_cit0		write VSC_SIZE_ADDRESS (0c01)
136bf215546Sopenharmony_ci			VSC_SIZE_ADDRESS: 0x10cdb000
137bf215546Sopenharmony_ci108ce164:		0000: 00000c01 10cdb000
138bf215546Sopenharmony_cit0		write VSC_PIPE_CONFIG[0].REG (0c08)
139bf215546Sopenharmony_ci			VSC_PIPE_CONFIG[0].REG: { X = 0 | Y = 0 | W = 1 | H = 1 }
140bf215546Sopenharmony_ci			VSC_PIPE_CONFIG[0x1].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
141bf215546Sopenharmony_ci			VSC_PIPE_CONFIG[0x2].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
142bf215546Sopenharmony_ci			VSC_PIPE_CONFIG[0x3].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
143bf215546Sopenharmony_ci			VSC_PIPE_CONFIG[0x4].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
144bf215546Sopenharmony_ci			VSC_PIPE_CONFIG[0x5].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
145bf215546Sopenharmony_ci			VSC_PIPE_CONFIG[0x6].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
146bf215546Sopenharmony_ci			VSC_PIPE_CONFIG[0x7].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
147bf215546Sopenharmony_ci108ce16c:		0000: 00070c08 01100000 00000000 00000000 00000000 00000000 00000000 00000000
148bf215546Sopenharmony_ci*
149bf215546Sopenharmony_cit0		write VSC_PIPE_DATA_ADDRESS[0].REG (0c10)
150bf215546Sopenharmony_ci			VSC_PIPE_DATA_ADDRESS[0].REG: 0x10cdc000
151bf215546Sopenharmony_ci			VSC_PIPE_DATA_ADDRESS[0x1].REG: 0x10d1c000
152bf215546Sopenharmony_ci			VSC_PIPE_DATA_ADDRESS[0x2].REG: 0x10d5c000
153bf215546Sopenharmony_ci			VSC_PIPE_DATA_ADDRESS[0x3].REG: 0x10d9c000
154bf215546Sopenharmony_ci			VSC_PIPE_DATA_ADDRESS[0x4].REG: 0x10ddc000
155bf215546Sopenharmony_ci			VSC_PIPE_DATA_ADDRESS[0x5].REG: 0x10e1c000
156bf215546Sopenharmony_ci			VSC_PIPE_DATA_ADDRESS[0x6].REG: 0x10e5c000
157bf215546Sopenharmony_ci			VSC_PIPE_DATA_ADDRESS[0x7].REG: 0x10e9c000
158bf215546Sopenharmony_ci108ce190:		0000: 00070c10 10cdc000 10d1c000 10d5c000 10d9c000 10ddc000 10e1c000 10e5c000
159bf215546Sopenharmony_ci108ce1b0:		0020: 10e9c000
160bf215546Sopenharmony_cit0		write VSC_PIPE_DATA_LENGTH[0].REG (0c18)
161bf215546Sopenharmony_ci			VSC_PIPE_DATA_LENGTH[0].REG: 0x3ffe0
162bf215546Sopenharmony_ci			VSC_PIPE_DATA_LENGTH[0x1].REG: 0x3ffe0
163bf215546Sopenharmony_ci			VSC_PIPE_DATA_LENGTH[0x2].REG: 0x3ffe0
164bf215546Sopenharmony_ci			VSC_PIPE_DATA_LENGTH[0x3].REG: 0x3ffe0
165bf215546Sopenharmony_ci			VSC_PIPE_DATA_LENGTH[0x4].REG: 0x3ffe0
166bf215546Sopenharmony_ci			VSC_PIPE_DATA_LENGTH[0x5].REG: 0x3ffe0
167bf215546Sopenharmony_ci			VSC_PIPE_DATA_LENGTH[0x6].REG: 0x3ffe0
168bf215546Sopenharmony_ci			VSC_PIPE_DATA_LENGTH[0x7].REG: 0x3ffe0
169bf215546Sopenharmony_ci108ce1b4:		0000: 00070c18 0003ffe0 0003ffe0 0003ffe0 0003ffe0 0003ffe0 0003ffe0 0003ffe0
170bf215546Sopenharmony_ci108ce1d4:		0020: 0003ffe0
171bf215546Sopenharmony_cit3		opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
172bf215546Sopenharmony_ci108ce1d8:		0000: c0002600 00000000
173bf215546Sopenharmony_cit0		write RB_FRAME_BUFFER_DIMENSION (0ce0)
174bf215546Sopenharmony_ci			RB_FRAME_BUFFER_DIMENSION: { WIDTH = 300 | HEIGHT = 300 }
175bf215546Sopenharmony_ci108ce1e0:		0000: 00000ce0 012c012c
176bf215546Sopenharmony_cit0		write RB_MODE_CONTROL (20a0)
177bf215546Sopenharmony_ci			RB_MODE_CONTROL: { WIDTH = 320 | HEIGHT = 320 | ENABLE_GMEM }
178bf215546Sopenharmony_ci108ce1e8:		0000: 000020a0 00010a0a
179bf215546Sopenharmony_cit0		write RB_DEPTH_INFO (2103)
180bf215546Sopenharmony_ci			RB_DEPTH_INFO: { DEPTH_FORMAT = DEPTH4_24_8 | DEPTH_BASE = 0x64000 }
181bf215546Sopenharmony_ci			RB_DEPTH_PITCH: 1280
182bf215546Sopenharmony_ci			RB_DEPTH_PITCH2: 1280
183bf215546Sopenharmony_ci108ce1f0:		0000: 00022103 00064002 00000028 00000028
184bf215546Sopenharmony_cit0		write RB_STENCIL_INFO (2108)
185bf215546Sopenharmony_ci			RB_STENCIL_INFO: { STENCIL_BASE = 0 }
186bf215546Sopenharmony_ci			RB_STENCIL_PITCH: 0
187bf215546Sopenharmony_ci108ce200:		0000: 00012108 00000000 00000000
188bf215546Sopenharmony_cit0		write GRAS_DEPTH_CONTROL (2077)
189bf215546Sopenharmony_ci			GRAS_DEPTH_CONTROL: { FORMAT = DEPTH4_24_8 }
190bf215546Sopenharmony_ci108ce20c:		0000: 00002077 00000002
191bf215546Sopenharmony_cit0		write PC_VSTREAM_CONTROL (21c2)
192bf215546Sopenharmony_ci			PC_VSTREAM_CONTROL: { SIZE = 0 | N = 0 }
193bf215546Sopenharmony_ci108ce214:		0000: 000021c2 00000000
194bf215546Sopenharmony_cit3		opcode: (null) (4c) (4 dwords)
195bf215546Sopenharmony_ci108ce21c:		0000: c0024c00 00000000 00000000 012b012b
196bf215546Sopenharmony_cit0		write RB_MRT[0].BUF_INFO (20a5)
197bf215546Sopenharmony_ci			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 }
198bf215546Sopenharmony_ci			RB_MRT[0].BASE: 0
199bf215546Sopenharmony_ci			RB_MRT[0].CONTROL3: { STRIDE = 1280 }
200bf215546Sopenharmony_ci108ce22c:		0000: 000220a5 0014089a 00000000 00002800
201bf215546Sopenharmony_cit0		write RB_MRT[0x1].BUF_INFO (20aa)
202bf215546Sopenharmony_ci			RB_MRT[0x1].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
203bf215546Sopenharmony_ci			RB_MRT[0x1].BASE: 0
204bf215546Sopenharmony_ci			RB_MRT[0x1].CONTROL3: { STRIDE = 0 }
205bf215546Sopenharmony_ci108ce23c:		0000: 000220aa 00000080 00000000 00000000
206bf215546Sopenharmony_cit0		write RB_MRT[0x2].BUF_INFO (20af)
207bf215546Sopenharmony_ci			RB_MRT[0x2].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
208bf215546Sopenharmony_ci			RB_MRT[0x2].BASE: 0
209bf215546Sopenharmony_ci			RB_MRT[0x2].CONTROL3: { STRIDE = 0 }
210bf215546Sopenharmony_ci108ce24c:		0000: 000220af 00000080 00000000 00000000
211bf215546Sopenharmony_cit0		write RB_MRT[0x3].BUF_INFO (20b4)
212bf215546Sopenharmony_ci			RB_MRT[0x3].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
213bf215546Sopenharmony_ci			RB_MRT[0x3].BASE: 0
214bf215546Sopenharmony_ci			RB_MRT[0x3].CONTROL3: { STRIDE = 0 }
215bf215546Sopenharmony_ci108ce25c:		0000: 000220b4 00000080 00000000 00000000
216bf215546Sopenharmony_cit0		write RB_MRT[0x4].BUF_INFO (20b9)
217bf215546Sopenharmony_ci			RB_MRT[0x4].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
218bf215546Sopenharmony_ci			RB_MRT[0x4].BASE: 0
219bf215546Sopenharmony_ci			RB_MRT[0x4].CONTROL3: { STRIDE = 0 }
220bf215546Sopenharmony_ci108ce26c:		0000: 000220b9 00000080 00000000 00000000
221bf215546Sopenharmony_cit0		write RB_MRT[0x5].BUF_INFO (20be)
222bf215546Sopenharmony_ci			RB_MRT[0x5].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
223bf215546Sopenharmony_ci			RB_MRT[0x5].BASE: 0
224bf215546Sopenharmony_ci			RB_MRT[0x5].CONTROL3: { STRIDE = 0 }
225bf215546Sopenharmony_ci108ce27c:		0000: 000220be 00000080 00000000 00000000
226bf215546Sopenharmony_cit0		write RB_MRT[0x6].BUF_INFO (20c3)
227bf215546Sopenharmony_ci			RB_MRT[0x6].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
228bf215546Sopenharmony_ci			RB_MRT[0x6].BASE: 0
229bf215546Sopenharmony_ci			RB_MRT[0x6].CONTROL3: { STRIDE = 0 }
230bf215546Sopenharmony_ci108ce28c:		0000: 000220c3 00000080 00000000 00000000
231bf215546Sopenharmony_cit0		write RB_MRT[0x7].BUF_INFO (20c8)
232bf215546Sopenharmony_ci			RB_MRT[0x7].BUF_INFO: { COLOR_FORMAT = 0 | COLOR_TILE_MODE = TILE4_2 | DITHER_MODE = DITHER_DISABLE | COLOR_SWAP = WZYX | COLOR_BUF_PITCH = 0 }
233bf215546Sopenharmony_ci			RB_MRT[0x7].BASE: 0
234bf215546Sopenharmony_ci			RB_MRT[0x7].CONTROL3: { STRIDE = 0 }
235bf215546Sopenharmony_ci108ce29c:		0000: 000220c8 00000080 00000000 00000000
236bf215546Sopenharmony_cit0		write RB_BIN_OFFSET (210d)
237bf215546Sopenharmony_ci			RB_BIN_OFFSET: { X = 0 | Y = 0 }
238bf215546Sopenharmony_ci108ce2ac:		0000: 0000210d 00000000
239bf215546Sopenharmony_cit0		write GRAS_SC_SCREEN_SCISSOR_TL (207c)
240bf215546Sopenharmony_ci			GRAS_SC_SCREEN_SCISSOR_TL: { X = 0 | Y = 0 }
241bf215546Sopenharmony_ci			GRAS_SC_SCREEN_SCISSOR_BR: { X = 299 | Y = 299 }
242bf215546Sopenharmony_ci108ce2b4:		0000: 0001207c 00000000 012b012b
243bf215546Sopenharmony_cit0		write RB_RENDER_CONTROL (20a1)
244bf215546Sopenharmony_ci			RB_RENDER_CONTROL: { 0x8 }
245bf215546Sopenharmony_ci108ce2c0:		0000: 000020a1 00000008
246bf215546Sopenharmony_cit0		write CP_SCRATCH[0x6].REG (057e)
247bf215546Sopenharmony_ci			CP_SCRATCH[0x6].REG: 0x73
248bf215546Sopenharmony_ci			:0,0,115,0
249bf215546Sopenharmony_ci108ce2c8:		0000: 0000057e 00000073
250bf215546Sopenharmony_cit3		opcode: CP_INDIRECT_BUFFER (3f) (3 dwords)
251bf215546Sopenharmony_ci		ibaddr:109ce000
252bf215546Sopenharmony_ci		ibsize:00000f2e
253bf215546Sopenharmony_cit0			write CP_SCRATCH[0x5].REG (057d)
254bf215546Sopenharmony_ci				CP_SCRATCH[0x5].REG: 0x1
255bf215546Sopenharmony_ci				:0,1,115,0
256bf215546Sopenharmony_ci109ce000:			0000: 0000057d 00000001
257bf215546Sopenharmony_cit0			write RB_RENDER_COMPONENTS (20fb)
258bf215546Sopenharmony_ci				RB_RENDER_COMPONENTS: { RT0 = 0xf | RT1 = 0 | RT2 = 0 | RT3 = 0 | RT4 = 0 | RT5 = 0 | RT6 = 0 | RT7 = 0 }
259bf215546Sopenharmony_ci109ce008:			0000: 000020fb 0000000f
260bf215546Sopenharmony_cit0			write RB_ALPHA_CONTROL (20f8)
261bf215546Sopenharmony_ci				RB_ALPHA_CONTROL: { ALPHA_REF = 0 | ALPHA_TEST_FUNC = FUNC_NEVER }
262bf215546Sopenharmony_ci109ce010:			0000: 000020f8 00000000
263bf215546Sopenharmony_cit0			write RB_STENCIL_CONTROL (2106)
264bf215546Sopenharmony_ci				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 }
265bf215546Sopenharmony_ci				RB_STENCIL_CONTROL2: { 0 }
266bf215546Sopenharmony_ci109ce018:			0000: 00012106 00000000 00000000
267bf215546Sopenharmony_cit0			write RB_STENCILREFMASK (210b)
268bf215546Sopenharmony_ci				RB_STENCILREFMASK: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0 }
269bf215546Sopenharmony_ci				RB_STENCILREFMASK_BF: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0 }
270bf215546Sopenharmony_ci109ce024:			0000: 0001210b 00000000 00000000
271bf215546Sopenharmony_cit0			write RB_DEPTH_CONTROL (2101)
272bf215546Sopenharmony_ci				RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_ALWAYS | Z_READ_ENABLE }
273bf215546Sopenharmony_ci109ce030:			0000: 00002101 80000076
274bf215546Sopenharmony_cit0			write GRAS_ALPHA_CONTROL (2073)
275bf215546Sopenharmony_ci				GRAS_ALPHA_CONTROL: { 0 }
276bf215546Sopenharmony_ci109ce038:			0000: 00002073 00000000
277bf215546Sopenharmony_cit0			write GRAS_SU_MODE_CONTROL (2078)
278bf215546Sopenharmony_ci				GRAS_SU_MODE_CONTROL: { FRONT_CW | LINEHALFWIDTH = 0.000000 | RENDERING_PASS }
279bf215546Sopenharmony_ci109ce040:			0000: 00002078 00100004
280bf215546Sopenharmony_cit0			write GRAS_SU_POINT_MINMAX (2070)
281bf215546Sopenharmony_ci				GRAS_SU_POINT_MINMAX: { MIN = 0.000000 | MAX = 0.000000 }
282bf215546Sopenharmony_ci				GRAS_SU_POINT_SIZE: 0.000000
283bf215546Sopenharmony_ci109ce048:			0000: 00012070 00000000 00000000
284bf215546Sopenharmony_cit0			write GRAS_SU_POLY_OFFSET_SCALE (2074)
285bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_SCALE: 0.000000
286bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
287bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
288bf215546Sopenharmony_ci109ce054:			0000: 00022074 00000000 00000000 00000000
289bf215546Sopenharmony_cit0			write GRAS_CL_CLIP_CNTL (2000)
290bf215546Sopenharmony_ci				GRAS_CL_CLIP_CNTL: { 0x80000 }
291bf215546Sopenharmony_ci109ce064:			0000: 00002000 00080000
292bf215546Sopenharmony_cit0			write PC_PRIM_VTX_CNTL (21c4)
293bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL: { VAROUT = 0 | PROVOKING_VTX_LAST }
294bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
295bf215546Sopenharmony_ci109ce06c:			0000: 000121c4 02000000 00000012
296bf215546Sopenharmony_cit0			write GRAS_SC_WINDOW_SCISSOR_BR (209c)
297bf215546Sopenharmony_ci				GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
298bf215546Sopenharmony_ci				GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
299bf215546Sopenharmony_ci109ce078:			0000: 0001209c 012b012b 00000000
300bf215546Sopenharmony_cit3			opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
301bf215546Sopenharmony_ci109ce084:			0000: c0002600 00000000
302bf215546Sopenharmony_cit0			write GRAS_CL_VPORT_XOFFSET_0 (2008)
303bf215546Sopenharmony_ci				GRAS_CL_VPORT_XOFFSET_0: 150.000000
304bf215546Sopenharmony_ci				GRAS_CL_VPORT_XSCALE_0: 150.000000
305bf215546Sopenharmony_ci				GRAS_CL_VPORT_YOFFSET_0: 150.000000
306bf215546Sopenharmony_ci				GRAS_CL_VPORT_YSCALE_0: -150.000000
307bf215546Sopenharmony_ci				GRAS_CL_VPORT_ZOFFSET_0: 0.000000
308bf215546Sopenharmony_ci				GRAS_CL_VPORT_ZSCALE_0: 1.000000
309bf215546Sopenharmony_ci109ce08c:			0000: 00052008 43160000 43160000 43160000 c3160000 00000000 3f800000
310bf215546Sopenharmony_cit0			write RB_VPORT_Z_CLAMP[0].MIN (2120)
311bf215546Sopenharmony_ci				RB_VPORT_Z_CLAMP[0].MIN: 0
312bf215546Sopenharmony_ci				RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
313bf215546Sopenharmony_ci109ce0a8:			0000: 00012120 00000000 00ffffff
314bf215546Sopenharmony_cit0			write HLSQ_UPDATE_CONTROL (23db)
315bf215546Sopenharmony_ci				HLSQ_UPDATE_CONTROL: 0x3
316bf215546Sopenharmony_ci109ce0b4:			0000: 000023db 00000003
317bf215546Sopenharmony_cit0			write HLSQ_CONTROL_0_REG (23c0)
318bf215546Sopenharmony_ci				HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
319bf215546Sopenharmony_ci				HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
320bf215546Sopenharmony_ci				HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
321bf215546Sopenharmony_ci				HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
322bf215546Sopenharmony_ci				HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
323bf215546Sopenharmony_ci109ce0bc:			0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfcfc 00fcfcfc
324bf215546Sopenharmony_cit0			write HLSQ_VS_CONTROL_REG (23c5)
325bf215546Sopenharmony_ci				HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 1 }
326bf215546Sopenharmony_ci				HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
327bf215546Sopenharmony_ci				HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
328bf215546Sopenharmony_ci				HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
329bf215546Sopenharmony_ci				HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
330bf215546Sopenharmony_ci109ce0d4:			0000: 000423c5 01000042 017e423e 007e4200 007e4200 007e4200
331bf215546Sopenharmony_cit0			write SP_SP_CTRL_REG (22c0)
332bf215546Sopenharmony_ci				SP_SP_CTRL_REG: { 0x140010 }
333bf215546Sopenharmony_ci109ce0ec:			0000: 000022c0 00140010
334bf215546Sopenharmony_cit0			write SP_INSTR_CACHE_CTRL (22c1)
335bf215546Sopenharmony_ci				SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
336bf215546Sopenharmony_ci109ce0f4:			0000: 000022c1 000005ff
337bf215546Sopenharmony_cit0			write SP_VS_LENGTH_REG (22e5)
338bf215546Sopenharmony_ci				SP_VS_LENGTH_REG: 1
339bf215546Sopenharmony_ci109ce0fc:			0000: 000022e5 00000001
340bf215546Sopenharmony_cit0			write SP_VS_CTRL_REG0 (22c4)
341bf215546Sopenharmony_ci				SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
342bf215546Sopenharmony_ci				SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
343bf215546Sopenharmony_ci				SP_VS_PARAM_REG: { POSREGID = r0.x | PSIZEREGID = r63.x | TOTALVSOUTVAR = 0 }
344bf215546Sopenharmony_ci109ce104:			0000: 000222c4 00200400 04000042 0000fc00
345bf215546Sopenharmony_cit0			write SP_VS_OBJ_OFFSET_REG (22e0)
346bf215546Sopenharmony_ci				SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
347bf215546Sopenharmony_ci				SP_VS_OBJ_START: 0x1073c000
348bf215546Sopenharmony_ci109ce114:			0000: 000122e0 00000000 1073c000
349bf215546Sopenharmony_cit0			write SP_FS_LENGTH_REG (22ef)
350bf215546Sopenharmony_ci				SP_FS_LENGTH_REG: 1
351bf215546Sopenharmony_ci109ce120:			0000: 000022ef 00000001
352bf215546Sopenharmony_cit0			write SP_FS_CTRL_REG0 (22e8)
353bf215546Sopenharmony_ci				SP_FS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
354bf215546Sopenharmony_ci				SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | 0x80000000 }
355bf215546Sopenharmony_ci109ce128:			0000: 000122e8 00340400 8000003e
356bf215546Sopenharmony_cit0			write SP_FS_OBJ_OFFSET_REG (22ea)
357bf215546Sopenharmony_ci				SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
358bf215546Sopenharmony_ci				SP_FS_OBJ_START: 0x1073b000
359bf215546Sopenharmony_ci109ce134:			0000: 000122ea 7e420000 1073b000
360bf215546Sopenharmony_cit0			write SP_HS_OBJ_OFFSET_REG (230d)
361bf215546Sopenharmony_ci				SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
362bf215546Sopenharmony_ci109ce140:			0000: 0000230d 7e420000
363bf215546Sopenharmony_cit0			write SP_DS_OBJ_OFFSET_REG (2334)
364bf215546Sopenharmony_ci				SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
365bf215546Sopenharmony_ci109ce148:			0000: 00002334 7e420000
366bf215546Sopenharmony_cit0			write SP_GS_OBJ_OFFSET_REG (235b)
367bf215546Sopenharmony_ci				SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
368bf215546Sopenharmony_ci109ce150:			0000: 0000235b 7e420000
369bf215546Sopenharmony_cit0			write GRAS_CNTL (2003)
370bf215546Sopenharmony_ci				GRAS_CNTL: { 0 }
371bf215546Sopenharmony_ci109ce158:			0000: 00002003 00000000
372bf215546Sopenharmony_cit0			write RB_RENDER_CONTROL2 (20a3)
373bf215546Sopenharmony_ci				RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
374bf215546Sopenharmony_ci109ce160:			0000: 000020a3 00000000
375bf215546Sopenharmony_cit0			write RB_FS_OUTPUT_REG (2100)
376bf215546Sopenharmony_ci				RB_FS_OUTPUT_REG: { MRT = 1 }
377bf215546Sopenharmony_ci109ce168:			0000: 00002100 00000001
378bf215546Sopenharmony_cit0			write SP_FS_OUTPUT_REG (22f0)
379bf215546Sopenharmony_ci				SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
380bf215546Sopenharmony_ci109ce170:			0000: 000022f0 0000fc01
381bf215546Sopenharmony_cit0			write SP_FS_MRT[0].REG (22f1)
382bf215546Sopenharmony_ci				SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
383bf215546Sopenharmony_ci				SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
384bf215546Sopenharmony_ci				SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
385bf215546Sopenharmony_ci				SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
386bf215546Sopenharmony_ci				SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
387bf215546Sopenharmony_ci				SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
388bf215546Sopenharmony_ci				SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
389bf215546Sopenharmony_ci				SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
390bf215546Sopenharmony_ci109ce178:			0000: 000722f1 0001a000 00000000 00000000 00000000 00000000 00000000 00000000
391bf215546Sopenharmony_ci*
392bf215546Sopenharmony_cit0			write VPC_ATTR (2140)
393bf215546Sopenharmony_ci				VPC_ATTR: { TOTALATTR = 0 | THRDASSIGN = 1 | 0x40000000 }
394bf215546Sopenharmony_ci				VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 0 | NUMNONPOSVSVAR = 0 }
395bf215546Sopenharmony_ci109ce19c:			0000: 00012140 40001000 00000000
396bf215546Sopenharmony_cit0			write VPC_VARYING_INTERP[0].MODE (2142)
397bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0].MODE: 0
398bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x1].MODE: 0
399bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x2].MODE: 0
400bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x3].MODE: 0
401bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x4].MODE: 0
402bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x5].MODE: 0
403bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x6].MODE: 0
404bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x7].MODE: 0
405bf215546Sopenharmony_ci109ce1a8:			0000: 00072142 00000000 00000000 00000000 00000000 00000000 00000000 00000000
406bf215546Sopenharmony_ci*
407bf215546Sopenharmony_cit0			write VPC_VARYING_PS_REPL[0].MODE (214a)
408bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0].MODE: 0
409bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x1].MODE: 0
410bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x2].MODE: 0
411bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x3].MODE: 0
412bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x4].MODE: 0
413bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x5].MODE: 0
414bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x6].MODE: 0
415bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x7].MODE: 0
416bf215546Sopenharmony_ci109ce1cc:			0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
417bf215546Sopenharmony_ci*
418bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (35 dwords)
419bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 1 }
420bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
421bf215546Sopenharmony_ci				:0:0000:0000[03000000x_00000000x] end
422bf215546Sopenharmony_ci				:0:0001:0001[00000000x_00000000x] nop
423bf215546Sopenharmony_ci				:0:0002:0002[00000000x_00000000x] nop
424bf215546Sopenharmony_ci				:0:0003:0003[00000000x_00000000x] nop
425bf215546Sopenharmony_ci				:0:0004:0004[00000000x_00000000x] nop
426bf215546Sopenharmony_ci				Stats:
427bf215546Sopenharmony_ci				- shaderdb: 5 instr, 4 nops, 1 non-nops, 0 mov, 0 cov
428bf215546Sopenharmony_ci				- shaderdb: 0 last-baryf, 0 half, 0 full, 0 constlen
429bf215546Sopenharmony_ci				- shaderdb: 5 cat0, 0 cat1, 0 cat2, 0 cat3, 0 cat4, 0 cat5, 0 cat6, 0 cat7
430bf215546Sopenharmony_ci				- shaderdb: 0 sstall, 0 (ss), 0 (sy)
431bf215546Sopenharmony_ci109ce1f0:			0000: c0213000 00600000 00000000 00000000 03000000 00000000 00000000 00000000
432bf215546Sopenharmony_ci*
433bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (35 dwords)
434bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
435bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
436bf215546Sopenharmony_ci				:1:0000:0000[20244000x_00000000x] mov.f32f32 r0.x, c0.x
437bf215546Sopenharmony_ci				:1:0001:0001[20244001x_00000001x] mov.f32f32 r0.y, c0.y
438bf215546Sopenharmony_ci				:1:0002:0002[20244002x_00000002x] mov.f32f32 r0.z, c0.z
439bf215546Sopenharmony_ci				:1:0003:0003[20244003x_00000003x] mov.f32f32 r0.w, c0.w
440bf215546Sopenharmony_ci				:0:0004:0004[03000000x_00000000x] end
441bf215546Sopenharmony_ci				:0:0005:0005[00000000x_00000000x] nop
442bf215546Sopenharmony_ci				:0:0006:0006[00000000x_00000000x] nop
443bf215546Sopenharmony_ci				:0:0007:0007[00000000x_00000000x] nop
444bf215546Sopenharmony_ci				:0:0008:0008[00000000x_00000000x] nop
445bf215546Sopenharmony_ci				Stats:
446bf215546Sopenharmony_ci				- shaderdb: 9 instr, 4 nops, 5 non-nops, 4 mov, 0 cov
447bf215546Sopenharmony_ci				- shaderdb: 0 last-baryf, 0 half, 1 full, 1 constlen
448bf215546Sopenharmony_ci				- shaderdb: 5 cat0, 4 cat1, 0 cat2, 0 cat3, 0 cat4, 0 cat5, 0 cat6, 0 cat7
449bf215546Sopenharmony_ci				- shaderdb: 0 sstall, 0 (ss), 0 (sy)
450bf215546Sopenharmony_ci109ce27c:			0000: c0213000 00700000 00000000 00000000 20244000 00000001 20244001 00000002
451bf215546Sopenharmony_ci109ce29c:			0020: 20244002 00000003 20244003 00000000 03000000 00000000 00000000 00000000
452bf215546Sopenharmony_ci*
453bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (19 dwords)
454bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 4 }
455bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
456bf215546Sopenharmony_ci109ce314:				0.000000 0.000000 0.000000 0.000000     -nan     -nan 0.000000 0.000000
457bf215546Sopenharmony_ci109ce334:				0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
458bf215546Sopenharmony_ci109ce314:				0000: 00000000 00000000 00000000 00000000 ffffffff ffffffff 00000405 00000000
459bf215546Sopenharmony_ci109ce334:				0020: 00000000 00000000 02070000 00000000 00000000 00000000 00000000 00000000
460bf215546Sopenharmony_ci109ce308:			0000: c0113000 01300000 00000001 00000000 00000000 00000000 00000000 ffffffff
461bf215546Sopenharmony_ci109ce328:			0020: ffffffff 00000405 00000000 00000000 00000000 02070000 00000000 00000000
462bf215546Sopenharmony_ci*
463bf215546Sopenharmony_cit0			write RB_MRT[0].CONTROL (20a4)
464bf215546Sopenharmony_ci				RB_MRT[0].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
465bf215546Sopenharmony_ci109ce354:			0000: 000020a4 0f000c00
466bf215546Sopenharmony_cit0			write RB_MRT[0].BLEND_CONTROL (20a8)
467bf215546Sopenharmony_ci				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 }
468bf215546Sopenharmony_ci109ce35c:			0000: 000020a8 00000000
469bf215546Sopenharmony_cit0			write RB_MRT[0x1].CONTROL (20a9)
470bf215546Sopenharmony_ci				RB_MRT[0x1].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
471bf215546Sopenharmony_ci109ce364:			0000: 000020a9 00000c00
472bf215546Sopenharmony_cit0			write RB_MRT[0x1].BLEND_CONTROL (20ad)
473bf215546Sopenharmony_ci				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 }
474bf215546Sopenharmony_ci109ce36c:			0000: 000020ad 00000000
475bf215546Sopenharmony_cit0			write RB_MRT[0x2].CONTROL (20ae)
476bf215546Sopenharmony_ci				RB_MRT[0x2].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
477bf215546Sopenharmony_ci109ce374:			0000: 000020ae 00000c00
478bf215546Sopenharmony_cit0			write RB_MRT[0x2].BLEND_CONTROL (20b2)
479bf215546Sopenharmony_ci				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 }
480bf215546Sopenharmony_ci109ce37c:			0000: 000020b2 00000000
481bf215546Sopenharmony_cit0			write RB_MRT[0x3].CONTROL (20b3)
482bf215546Sopenharmony_ci				RB_MRT[0x3].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
483bf215546Sopenharmony_ci109ce384:			0000: 000020b3 00000c00
484bf215546Sopenharmony_cit0			write RB_MRT[0x3].BLEND_CONTROL (20b7)
485bf215546Sopenharmony_ci				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 }
486bf215546Sopenharmony_ci109ce38c:			0000: 000020b7 00000000
487bf215546Sopenharmony_cit0			write RB_MRT[0x4].CONTROL (20b8)
488bf215546Sopenharmony_ci				RB_MRT[0x4].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
489bf215546Sopenharmony_ci109ce394:			0000: 000020b8 00000c00
490bf215546Sopenharmony_cit0			write RB_MRT[0x4].BLEND_CONTROL (20bc)
491bf215546Sopenharmony_ci				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 }
492bf215546Sopenharmony_ci109ce39c:			0000: 000020bc 00000000
493bf215546Sopenharmony_cit0			write RB_MRT[0x5].CONTROL (20bd)
494bf215546Sopenharmony_ci				RB_MRT[0x5].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
495bf215546Sopenharmony_ci109ce3a4:			0000: 000020bd 00000c00
496bf215546Sopenharmony_cit0			write RB_MRT[0x5].BLEND_CONTROL (20c1)
497bf215546Sopenharmony_ci				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 }
498bf215546Sopenharmony_ci109ce3ac:			0000: 000020c1 00000000
499bf215546Sopenharmony_cit0			write RB_MRT[0x6].CONTROL (20c2)
500bf215546Sopenharmony_ci				RB_MRT[0x6].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
501bf215546Sopenharmony_ci109ce3b4:			0000: 000020c2 00000c00
502bf215546Sopenharmony_cit0			write RB_MRT[0x6].BLEND_CONTROL (20c6)
503bf215546Sopenharmony_ci				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 }
504bf215546Sopenharmony_ci109ce3bc:			0000: 000020c6 00000000
505bf215546Sopenharmony_cit0			write RB_MRT[0x7].CONTROL (20c7)
506bf215546Sopenharmony_ci				RB_MRT[0x7].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
507bf215546Sopenharmony_ci109ce3c4:			0000: 000020c7 00000c00
508bf215546Sopenharmony_cit0			write RB_MRT[0x7].BLEND_CONTROL (20cb)
509bf215546Sopenharmony_ci				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 }
510bf215546Sopenharmony_ci109ce3cc:			0000: 000020cb 00000000
511bf215546Sopenharmony_cit0			write RB_FS_OUTPUT (20f9)
512bf215546Sopenharmony_ci				RB_FS_OUTPUT: { ENABLE_BLEND = 0 | INDEPENDENT_BLEND | SAMPLE_MASK = 0xffff }
513bf215546Sopenharmony_ci109ce3d4:			0000: 000020f9 ffff0100
514bf215546Sopenharmony_cit0			write RB_BLEND_RED (20f0)
515bf215546Sopenharmony_ci				RB_BLEND_RED: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
516bf215546Sopenharmony_ci				RB_BLEND_RED_F32: 0.000000
517bf215546Sopenharmony_ci				RB_BLEND_GREEN: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
518bf215546Sopenharmony_ci				RB_BLEND_GREEN_F32: 0.000000
519bf215546Sopenharmony_ci				RB_BLEND_BLUE: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
520bf215546Sopenharmony_ci				RB_BLEND_BLUE_F32: 0.000000
521bf215546Sopenharmony_ci				RB_BLEND_ALPHA: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
522bf215546Sopenharmony_ci				RB_BLEND_ALPHA_F32: 0.000000
523bf215546Sopenharmony_ci109ce3dc:			0000: 000720f0 00000000 00000000 00000000 00000000 00000000 00000000 00000000
524bf215546Sopenharmony_ci*
525bf215546Sopenharmony_cit0			write VFD_FETCH[0].INSTR_0 (220a)
526bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
527bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_1: 0x1074a000
528bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_2: { SIZE = 0x1000 }
529bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
530bf215546Sopenharmony_ci109ce400:			0000: 0003220a 0000060b 1074a000 00001000 00000001
531bf215546Sopenharmony_cit0			write VFD_DECODE[0].INSTR (228a)
532bf215546Sopenharmony_ci				VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.x | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
533bf215546Sopenharmony_ci109ce414:			0000: 0000228a 2c0000df
534bf215546Sopenharmony_cit0			write VFD_CONTROL_0 (2200)
535bf215546Sopenharmony_ci				VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
536bf215546Sopenharmony_ci				VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
537bf215546Sopenharmony_ci				VFD_CONTROL_2: 0
538bf215546Sopenharmony_ci				VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
539bf215546Sopenharmony_ci				VFD_CONTROL_4: 0
540bf215546Sopenharmony_ci109ce41c:			0000: 00042200 041a0004 fcfc0081 00000000 0000fc00 00000000
541bf215546Sopenharmony_cit0			write UCHE_INVALIDATE0 (0e8a)
542bf215546Sopenharmony_ci				UCHE_INVALIDATE0: 0
543bf215546Sopenharmony_ci				UCHE_INVALIDATE1: 0x12
544bf215546Sopenharmony_ci109ce434:			0000: 00010e8a 00000000 00000012
545bf215546Sopenharmony_cit0			write VFD_INDEX_OFFSET (2208)
546bf215546Sopenharmony_ci				VFD_INDEX_OFFSET: 0
547bf215546Sopenharmony_ci				UNKNOWN_2209: 0
548bf215546Sopenharmony_ci109ce440:			0000: 00012208 00000000 00000000
549bf215546Sopenharmony_cit0			write PC_RESTART_INDEX (21c6)
550bf215546Sopenharmony_ci				PC_RESTART_INDEX: 0xffffffff
551bf215546Sopenharmony_ci109ce44c:			0000: 000021c6 ffffffff
552bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
553bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x2
554bf215546Sopenharmony_ci				:0,1,115,2
555bf215546Sopenharmony_ci109ce454:			0000: 0000057f 00000002
556bf215546Sopenharmony_cit3			opcode: CP_DRAW_INDX_OFFSET (38) (4 dwords)
557bf215546Sopenharmony_ci				{ 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 }
558bf215546Sopenharmony_ci				{ NUM_INSTANCES = 1 }
559bf215546Sopenharmony_ci				{ NUM_INDICES = 2 }
560bf215546Sopenharmony_ci			draw[0] register values
561bf215546Sopenharmony_ci!+	00000001			RBBM_PERFCTR_CTL: 0x1
562bf215546Sopenharmony_ci!+	00000001			CP_SCRATCH[0x5].REG: 0x1
563bf215546Sopenharmony_ci			:0,1,115,2
564bf215546Sopenharmony_ci!+	00000073			CP_SCRATCH[0x6].REG: 0x73
565bf215546Sopenharmony_ci			:0,1,115,2
566bf215546Sopenharmony_ci!+	00000002			CP_SCRATCH[0x7].REG: 0x2
567bf215546Sopenharmony_ci			:0,1,115,2
568bf215546Sopenharmony_ci!+	0000014a			VSC_BIN_SIZE: { WIDTH = 320 | HEIGHT = 320 }
569bf215546Sopenharmony_ci!+	10cdb000			VSC_SIZE_ADDRESS: 0x10cdb000
570bf215546Sopenharmony_ci!+	01100000			VSC_PIPE_CONFIG[0].REG: { X = 0 | Y = 0 | W = 1 | H = 1 }
571bf215546Sopenharmony_ci +	00000000			VSC_PIPE_CONFIG[0x1].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
572bf215546Sopenharmony_ci +	00000000			VSC_PIPE_CONFIG[0x2].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
573bf215546Sopenharmony_ci +	00000000			VSC_PIPE_CONFIG[0x3].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
574bf215546Sopenharmony_ci +	00000000			VSC_PIPE_CONFIG[0x4].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
575bf215546Sopenharmony_ci +	00000000			VSC_PIPE_CONFIG[0x5].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
576bf215546Sopenharmony_ci +	00000000			VSC_PIPE_CONFIG[0x6].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
577bf215546Sopenharmony_ci +	00000000			VSC_PIPE_CONFIG[0x7].REG: { X = 0 | Y = 0 | W = 0 | H = 0 }
578bf215546Sopenharmony_ci!+	10cdc000			VSC_PIPE_DATA_ADDRESS[0].REG: 0x10cdc000
579bf215546Sopenharmony_ci!+	10d1c000			VSC_PIPE_DATA_ADDRESS[0x1].REG: 0x10d1c000
580bf215546Sopenharmony_ci!+	10d5c000			VSC_PIPE_DATA_ADDRESS[0x2].REG: 0x10d5c000
581bf215546Sopenharmony_ci!+	10d9c000			VSC_PIPE_DATA_ADDRESS[0x3].REG: 0x10d9c000
582bf215546Sopenharmony_ci!+	10ddc000			VSC_PIPE_DATA_ADDRESS[0x4].REG: 0x10ddc000
583bf215546Sopenharmony_ci!+	10e1c000			VSC_PIPE_DATA_ADDRESS[0x5].REG: 0x10e1c000
584bf215546Sopenharmony_ci!+	10e5c000			VSC_PIPE_DATA_ADDRESS[0x6].REG: 0x10e5c000
585bf215546Sopenharmony_ci!+	10e9c000			VSC_PIPE_DATA_ADDRESS[0x7].REG: 0x10e9c000
586bf215546Sopenharmony_ci!+	0003ffe0			VSC_PIPE_DATA_LENGTH[0].REG: 0x3ffe0
587bf215546Sopenharmony_ci!+	0003ffe0			VSC_PIPE_DATA_LENGTH[0x1].REG: 0x3ffe0
588bf215546Sopenharmony_ci!+	0003ffe0			VSC_PIPE_DATA_LENGTH[0x2].REG: 0x3ffe0
589bf215546Sopenharmony_ci!+	0003ffe0			VSC_PIPE_DATA_LENGTH[0x3].REG: 0x3ffe0
590bf215546Sopenharmony_ci!+	0003ffe0			VSC_PIPE_DATA_LENGTH[0x4].REG: 0x3ffe0
591bf215546Sopenharmony_ci!+	0003ffe0			VSC_PIPE_DATA_LENGTH[0x5].REG: 0x3ffe0
592bf215546Sopenharmony_ci!+	0003ffe0			VSC_PIPE_DATA_LENGTH[0x6].REG: 0x3ffe0
593bf215546Sopenharmony_ci!+	0003ffe0			VSC_PIPE_DATA_LENGTH[0x7].REG: 0x3ffe0
594bf215546Sopenharmony_ci +	00000000			GRAS_DEBUG_ECO_CONTROL: 0
595bf215546Sopenharmony_ci!+	00000006			UNKNOWN_0CC5: 0x6
596bf215546Sopenharmony_ci +	00000000			UNKNOWN_0CC6: 0
597bf215546Sopenharmony_ci!+	012c012c			RB_FRAME_BUFFER_DIMENSION: { WIDTH = 300 | HEIGHT = 300 }
598bf215546Sopenharmony_ci!+	00000001			UNKNOWN_0D01: 0x1
599bf215546Sopenharmony_ci +	00000000			HLSQ_MODE_CONTROL: 0
600bf215546Sopenharmony_ci +	00000000			UNKNOWN_0E42: 0
601bf215546Sopenharmony_ci +	00000000			UCHE_CACHE_MODE_CONTROL: 0
602bf215546Sopenharmony_ci +	00000000			UCHE_INVALIDATE0: 0
603bf215546Sopenharmony_ci!+	00000012			UCHE_INVALIDATE1: 0x12
604bf215546Sopenharmony_ci!+	00000007			UCHE_CACHE_WAYS_VFD: 0x7
605bf215546Sopenharmony_ci!+	00040000			UNKNOWN_0EC2: 0x40000
606bf215546Sopenharmony_ci!+	00000006			SP_MODE_CONTROL: 0x6
607bf215546Sopenharmony_ci!+	0000003a			TPL1_TP_MODE_CONTROL: 0x3a
608bf215546Sopenharmony_ci!+	00080000			GRAS_CL_CLIP_CNTL: { 0x80000 }
609bf215546Sopenharmony_ci +	00000000			UNKNOWN_2001: 0
610bf215546Sopenharmony_ci +	00000000			GRAS_CNTL: { 0 }
611bf215546Sopenharmony_ci +	00000000			GRAS_CL_GB_CLIP_ADJ: { HORZ = 0 | VERT = 0 }
612bf215546Sopenharmony_ci!+	43160000			GRAS_CL_VPORT_XOFFSET_0: 150.000000
613bf215546Sopenharmony_ci!+	43160000			GRAS_CL_VPORT_XSCALE_0: 150.000000
614bf215546Sopenharmony_ci!+	43160000			GRAS_CL_VPORT_YOFFSET_0: 150.000000
615bf215546Sopenharmony_ci!+	c3160000			GRAS_CL_VPORT_YSCALE_0: -150.000000
616bf215546Sopenharmony_ci +	00000000			GRAS_CL_VPORT_ZOFFSET_0: 0.000000
617bf215546Sopenharmony_ci!+	3f800000			GRAS_CL_VPORT_ZSCALE_0: 1.000000
618bf215546Sopenharmony_ci +	00000000			GRAS_SU_POINT_MINMAX: { MIN = 0.000000 | MAX = 0.000000 }
619bf215546Sopenharmony_ci +	00000000			GRAS_SU_POINT_SIZE: 0.000000
620bf215546Sopenharmony_ci +	00000000			GRAS_ALPHA_CONTROL: { 0 }
621bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_SCALE: 0.000000
622bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
623bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
624bf215546Sopenharmony_ci!+	00000002			GRAS_DEPTH_CONTROL: { FORMAT = DEPTH4_24_8 }
625bf215546Sopenharmony_ci!+	00100004			GRAS_SU_MODE_CONTROL: { FRONT_CW | LINEHALFWIDTH = 0.000000 | RENDERING_PASS }
626bf215546Sopenharmony_ci!+	00000800			GRAS_SC_CONTROL: { RENDER_MODE = RB_RENDERING_PASS | MSAA_SAMPLES = 0 | MSAA_DISABLE | RASTER_MODE = 0 }
627bf215546Sopenharmony_ci +	00000000			GRAS_SC_SCREEN_SCISSOR_TL: { X = 0 | Y = 0 }
628bf215546Sopenharmony_ci!+	012b012b			GRAS_SC_SCREEN_SCISSOR_BR: { X = 299 | Y = 299 }
629bf215546Sopenharmony_ci!+	012b012b			GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
630bf215546Sopenharmony_ci +	00000000			GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
631bf215546Sopenharmony_ci!+	00010a0a			RB_MODE_CONTROL: { WIDTH = 320 | HEIGHT = 320 | ENABLE_GMEM }
632bf215546Sopenharmony_ci!+	00000008			RB_RENDER_CONTROL: { 0x8 }
633bf215546Sopenharmony_ci!+	00001000			RB_MSAA_CONTROL: { DISABLE | SAMPLES = 0 }
634bf215546Sopenharmony_ci +	00000000			RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
635bf215546Sopenharmony_ci!+	0f000c00			RB_MRT[0].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
636bf215546Sopenharmony_ci!+	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 }
637bf215546Sopenharmony_ci +	00000000			RB_MRT[0].BASE: 0
638bf215546Sopenharmony_ci!+	00002800			RB_MRT[0].CONTROL3: { STRIDE = 1280 }
639bf215546Sopenharmony_ci +	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 }
640bf215546Sopenharmony_ci!+	00000c00			RB_MRT[0x1].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
641bf215546Sopenharmony_ci!+	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 }
642bf215546Sopenharmony_ci +	00000000			RB_MRT[0x1].BASE: 0
643bf215546Sopenharmony_ci +	00000000			RB_MRT[0x1].CONTROL3: { STRIDE = 0 }
644bf215546Sopenharmony_ci +	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 }
645bf215546Sopenharmony_ci!+	00000c00			RB_MRT[0x2].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
646bf215546Sopenharmony_ci!+	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 }
647bf215546Sopenharmony_ci +	00000000			RB_MRT[0x2].BASE: 0
648bf215546Sopenharmony_ci +	00000000			RB_MRT[0x2].CONTROL3: { STRIDE = 0 }
649bf215546Sopenharmony_ci +	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 }
650bf215546Sopenharmony_ci!+	00000c00			RB_MRT[0x3].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
651bf215546Sopenharmony_ci!+	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 }
652bf215546Sopenharmony_ci +	00000000			RB_MRT[0x3].BASE: 0
653bf215546Sopenharmony_ci +	00000000			RB_MRT[0x3].CONTROL3: { STRIDE = 0 }
654bf215546Sopenharmony_ci +	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 }
655bf215546Sopenharmony_ci!+	00000c00			RB_MRT[0x4].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
656bf215546Sopenharmony_ci!+	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 }
657bf215546Sopenharmony_ci +	00000000			RB_MRT[0x4].BASE: 0
658bf215546Sopenharmony_ci +	00000000			RB_MRT[0x4].CONTROL3: { STRIDE = 0 }
659bf215546Sopenharmony_ci +	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 }
660bf215546Sopenharmony_ci!+	00000c00			RB_MRT[0x5].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
661bf215546Sopenharmony_ci!+	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 }
662bf215546Sopenharmony_ci +	00000000			RB_MRT[0x5].BASE: 0
663bf215546Sopenharmony_ci +	00000000			RB_MRT[0x5].CONTROL3: { STRIDE = 0 }
664bf215546Sopenharmony_ci +	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 }
665bf215546Sopenharmony_ci!+	00000c00			RB_MRT[0x6].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
666bf215546Sopenharmony_ci!+	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 }
667bf215546Sopenharmony_ci +	00000000			RB_MRT[0x6].BASE: 0
668bf215546Sopenharmony_ci +	00000000			RB_MRT[0x6].CONTROL3: { STRIDE = 0 }
669bf215546Sopenharmony_ci +	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 }
670bf215546Sopenharmony_ci!+	00000c00			RB_MRT[0x7].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0 }
671bf215546Sopenharmony_ci!+	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 }
672bf215546Sopenharmony_ci +	00000000			RB_MRT[0x7].BASE: 0
673bf215546Sopenharmony_ci +	00000000			RB_MRT[0x7].CONTROL3: { STRIDE = 0 }
674bf215546Sopenharmony_ci +	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 }
675bf215546Sopenharmony_ci +	00000000			UNKNOWN_20EF: 0
676bf215546Sopenharmony_ci +	00000000			RB_BLEND_RED: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
677bf215546Sopenharmony_ci +	00000000			RB_BLEND_RED_F32: 0.000000
678bf215546Sopenharmony_ci +	00000000			RB_BLEND_GREEN: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
679bf215546Sopenharmony_ci +	00000000			RB_BLEND_GREEN_F32: 0.000000
680bf215546Sopenharmony_ci +	00000000			RB_BLEND_BLUE: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
681bf215546Sopenharmony_ci +	00000000			RB_BLEND_BLUE_F32: 0.000000
682bf215546Sopenharmony_ci +	00000000			RB_BLEND_ALPHA: { UINT = 0 | SINT = 0 | FLOAT = 0.000000 }
683bf215546Sopenharmony_ci +	00000000			RB_BLEND_ALPHA_F32: 0.000000
684bf215546Sopenharmony_ci +	00000000			RB_ALPHA_CONTROL: { ALPHA_REF = 0 | ALPHA_TEST_FUNC = FUNC_NEVER }
685bf215546Sopenharmony_ci!+	ffff0100			RB_FS_OUTPUT: { ENABLE_BLEND = 0 | INDEPENDENT_BLEND | SAMPLE_MASK = 0xffff }
686bf215546Sopenharmony_ci!+	0000000f			RB_RENDER_COMPONENTS: { RT0 = 0xf | RT1 = 0 | RT2 = 0 | RT3 = 0 | RT4 = 0 | RT5 = 0 | RT6 = 0 | RT7 = 0 }
687bf215546Sopenharmony_ci!+	00000001			RB_FS_OUTPUT_REG: { MRT = 1 }
688bf215546Sopenharmony_ci!+	80000076			RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_ALWAYS | Z_READ_ENABLE }
689bf215546Sopenharmony_ci!+	00064002			RB_DEPTH_INFO: { DEPTH_FORMAT = DEPTH4_24_8 | DEPTH_BASE = 0x64000 }
690bf215546Sopenharmony_ci!+	00000028			RB_DEPTH_PITCH: 1280
691bf215546Sopenharmony_ci!+	00000028			RB_DEPTH_PITCH2: 1280
692bf215546Sopenharmony_ci +	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 }
693bf215546Sopenharmony_ci +	00000000			RB_STENCIL_CONTROL2: { 0 }
694bf215546Sopenharmony_ci +	00000000			RB_STENCIL_INFO: { STENCIL_BASE = 0 }
695bf215546Sopenharmony_ci +	00000000			RB_STENCIL_PITCH: 0
696bf215546Sopenharmony_ci +	00000000			RB_STENCILREFMASK: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0 }
697bf215546Sopenharmony_ci +	00000000			RB_STENCILREFMASK_BF: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0 }
698bf215546Sopenharmony_ci +	00000000			RB_BIN_OFFSET: { X = 0 | Y = 0 }
699bf215546Sopenharmony_ci +	00000000			RB_VPORT_Z_CLAMP[0].MIN: 0
700bf215546Sopenharmony_ci!+	00ffffff			RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
701bf215546Sopenharmony_ci!+	40001000			VPC_ATTR: { TOTALATTR = 0 | THRDASSIGN = 1 | 0x40000000 }
702bf215546Sopenharmony_ci +	00000000			VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 0 | NUMNONPOSVSVAR = 0 }
703bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0].MODE: 0
704bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x1].MODE: 0
705bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x2].MODE: 0
706bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x3].MODE: 0
707bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x4].MODE: 0
708bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x5].MODE: 0
709bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x6].MODE: 0
710bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x7].MODE: 0
711bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0].MODE: 0
712bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x1].MODE: 0
713bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x2].MODE: 0
714bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x3].MODE: 0
715bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x4].MODE: 0
716bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x5].MODE: 0
717bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x6].MODE: 0
718bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x7].MODE: 0
719bf215546Sopenharmony_ci +	00000000			UNKNOWN_2152: 0
720bf215546Sopenharmony_ci +	00000000			UNKNOWN_2153: 0
721bf215546Sopenharmony_ci +	00000000			UNKNOWN_2154: 0
722bf215546Sopenharmony_ci +	00000000			UNKNOWN_2155: 0
723bf215546Sopenharmony_ci +	00000000			UNKNOWN_2156: 0
724bf215546Sopenharmony_ci +	00000000			UNKNOWN_2157: 0
725bf215546Sopenharmony_ci +	00000000			PC_VSTREAM_CONTROL: { SIZE = 0 | N = 0 }
726bf215546Sopenharmony_ci!+	0000001d			UNKNOWN_21C3: 0x1d
727bf215546Sopenharmony_ci!+	02000000			PC_PRIM_VTX_CNTL: { VAROUT = 0 | PROVOKING_VTX_LAST }
728bf215546Sopenharmony_ci!+	00000012			PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
729bf215546Sopenharmony_ci!+	ffffffff			PC_RESTART_INDEX: 0xffffffff
730bf215546Sopenharmony_ci +	00000000			PC_GS_PARAM: { MAX_VERTICES = 0 | INVOCATIONS = 0 | PRIMTYPE = PC_DRAW_POINTS }
731bf215546Sopenharmony_ci!+	00000001			UNKNOWN_21E6: 0x1
732bf215546Sopenharmony_ci +	00000000			PC_HS_PARAM: { VERTICES_OUT = 0 | SPACING = EQUAL_SPACING }
733bf215546Sopenharmony_ci!+	041a0004			VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
734bf215546Sopenharmony_ci!+	fcfc0081			VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
735bf215546Sopenharmony_ci +	00000000			VFD_CONTROL_2: 0
736bf215546Sopenharmony_ci!+	0000fc00			VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
737bf215546Sopenharmony_ci +	00000000			VFD_CONTROL_4: 0
738bf215546Sopenharmony_ci +	00000000			VFD_INDEX_OFFSET: 0
739bf215546Sopenharmony_ci +	00000000			UNKNOWN_2209: 0
740bf215546Sopenharmony_ci!+	0000060b			VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
741bf215546Sopenharmony_ci!+	1074a000			VFD_FETCH[0].INSTR_1: 0x1074a000
742bf215546Sopenharmony_ci!+	00001000			VFD_FETCH[0].INSTR_2: { SIZE = 0x1000 }
743bf215546Sopenharmony_ci!+	00000001			VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
744bf215546Sopenharmony_ci!+	2c0000df			VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.x | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
745bf215546Sopenharmony_ci!+	00140010			SP_SP_CTRL_REG: { 0x140010 }
746bf215546Sopenharmony_ci!+	000005ff			SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
747bf215546Sopenharmony_ci!+	00200400			SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
748bf215546Sopenharmony_ci!+	04000042			SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
749bf215546Sopenharmony_ci!+	0000fc00			SP_VS_PARAM_REG: { POSREGID = r0.x | PSIZEREGID = r63.x | TOTALVSOUTVAR = 0 }
750bf215546Sopenharmony_ci +	00000000			UNKNOWN_22D7: 0
751bf215546Sopenharmony_ci +	00000000			SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
752bf215546Sopenharmony_ci!+	1073c000			SP_VS_OBJ_START: 0x1073c000
753bf215546Sopenharmony_ci!+	08000001			SP_VS_PVT_MEM_PARAM: 0x8000001
754bf215546Sopenharmony_ci!+	10cd7000			SP_VS_PVT_MEM_ADDR: 0x10cd7000
755bf215546Sopenharmony_ci!+	00000001			SP_VS_LENGTH_REG: 1
756bf215546Sopenharmony_ci!+	00340400			SP_FS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
757bf215546Sopenharmony_ci!+	8000003e			SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | 0x80000000 }
758bf215546Sopenharmony_ci!+	7e420000			SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
759bf215546Sopenharmony_ci!+	1073b000			SP_FS_OBJ_START: 0x1073b000
760bf215546Sopenharmony_ci!+	08000001			SP_FS_PVT_MEM_PARAM: 0x8000001
761bf215546Sopenharmony_ci!+	10cd9000			SP_FS_PVT_MEM_ADDR: 0x10cd9000
762bf215546Sopenharmony_ci!+	00000001			SP_FS_LENGTH_REG: 1
763bf215546Sopenharmony_ci!+	0000fc01			SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
764bf215546Sopenharmony_ci!+	0001a000			SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
765bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
766bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
767bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
768bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
769bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
770bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
771bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
772bf215546Sopenharmony_ci!+	7e420000			SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
773bf215546Sopenharmony_ci!+	7e420000			SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
774bf215546Sopenharmony_ci!+	7e420000			SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
775bf215546Sopenharmony_ci +	00000000			TPL1_TP_TEX_OFFSET: 0
776bf215546Sopenharmony_ci!+	00000010			TPL1_TP_TEX_COUNT: { VS = 16 | HS = 0 | DS = 0 | GS = 0 }
777bf215546Sopenharmony_ci!+	00000010			TPL1_TP_FS_TEX_COUNT: { FS = 16 | CS = 0 }
778bf215546Sopenharmony_ci!+	28000250			HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
779bf215546Sopenharmony_ci!+	fcfc0100			HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
780bf215546Sopenharmony_ci!+	fff3f3f0			HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
781bf215546Sopenharmony_ci!+	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 }
782bf215546Sopenharmony_ci!+	00fcfcfc			HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
783bf215546Sopenharmony_ci!+	01000042			HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 1 }
784bf215546Sopenharmony_ci!+	017e423e			HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
785bf215546Sopenharmony_ci!+	007e4200			HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
786bf215546Sopenharmony_ci!+	007e4200			HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
787bf215546Sopenharmony_ci!+	007e4200			HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
788bf215546Sopenharmony_ci!+	00000003			HLSQ_UPDATE_CONTROL: 0x3
789bf215546Sopenharmony_ci109ce45c:			0000: c0023800 00000888 00000001 00000002
790bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
791bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x3
792bf215546Sopenharmony_ci				:0,1,115,3
793bf215546Sopenharmony_ci109ce46c:			0000: 0000057f 00000003
794bf215546Sopenharmony_cit0			write CP_SCRATCH[0x5].REG (057d)
795bf215546Sopenharmony_ci				CP_SCRATCH[0x5].REG: 0x7
796bf215546Sopenharmony_ci				:0,7,115,3
797bf215546Sopenharmony_ci109ce474:			0000: 0000057d 00000007
798bf215546Sopenharmony_cit0			write RB_ALPHA_CONTROL (20f8)
799bf215546Sopenharmony_ci				RB_ALPHA_CONTROL: { ALPHA_REF = 0 | ALPHA_TEST_FUNC = FUNC_NEVER }
800bf215546Sopenharmony_ci109ce47c:			0000: 000020f8 00000000
801bf215546Sopenharmony_cit0			write RB_STENCIL_CONTROL (2106)
802bf215546Sopenharmony_ci				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 }
803bf215546Sopenharmony_ci				RB_STENCIL_CONTROL2: { 0 }
804bf215546Sopenharmony_ci109ce484:			0000: 00012106 00000000 00000000
805bf215546Sopenharmony_cit0			write RB_STENCILREFMASK (210b)
806bf215546Sopenharmony_ci				RB_STENCILREFMASK: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0 }
807bf215546Sopenharmony_ci				RB_STENCILREFMASK_BF: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0 }
808bf215546Sopenharmony_ci109ce490:			0000: 0001210b 00000000 00000000
809bf215546Sopenharmony_cit0			write RB_DEPTH_CONTROL (2101)
810bf215546Sopenharmony_ci				RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_READ_ENABLE }
811bf215546Sopenharmony_ci109ce49c:			0000: 00002101 80000016
812bf215546Sopenharmony_cit0			write GRAS_ALPHA_CONTROL (2073)
813bf215546Sopenharmony_ci				GRAS_ALPHA_CONTROL: { 0 }
814bf215546Sopenharmony_ci109ce4a4:			0000: 00002073 00000000
815bf215546Sopenharmony_cit0			write GRAS_SU_MODE_CONTROL (2078)
816bf215546Sopenharmony_ci				GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
817bf215546Sopenharmony_ci109ce4ac:			0000: 00002078 00100012
818bf215546Sopenharmony_cit0			write GRAS_SU_POINT_MINMAX (2070)
819bf215546Sopenharmony_ci				GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
820bf215546Sopenharmony_ci				GRAS_SU_POINT_SIZE: 1.000000
821bf215546Sopenharmony_ci109ce4b4:			0000: 00012070 00100010 00000010
822bf215546Sopenharmony_cit0			write GRAS_SU_POLY_OFFSET_SCALE (2074)
823bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_SCALE: 0.000000
824bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
825bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
826bf215546Sopenharmony_ci109ce4c0:			0000: 00022074 00000000 00000000 00000000
827bf215546Sopenharmony_cit0			write GRAS_CL_CLIP_CNTL (2000)
828bf215546Sopenharmony_ci				GRAS_CL_CLIP_CNTL: { 0x80000 }
829bf215546Sopenharmony_ci109ce4d0:			0000: 00002000 00080000
830bf215546Sopenharmony_cit0			write PC_PRIM_VTX_CNTL (21c4)
831bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
832bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
833bf215546Sopenharmony_ci109ce4d8:			0000: 000121c4 02000001 00000012
834bf215546Sopenharmony_cit0			write GRAS_SC_WINDOW_SCISSOR_BR (209c)
835bf215546Sopenharmony_ci				GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
836bf215546Sopenharmony_ci				GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
837bf215546Sopenharmony_ci109ce4e4:			0000: 0001209c 012b012b 00000000
838bf215546Sopenharmony_cit3			opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
839bf215546Sopenharmony_ci109ce4f0:			0000: c0002600 00000000
840bf215546Sopenharmony_cit0			write GRAS_CL_VPORT_XOFFSET_0 (2008)
841bf215546Sopenharmony_ci				GRAS_CL_VPORT_XOFFSET_0: 150.000000
842bf215546Sopenharmony_ci				GRAS_CL_VPORT_XSCALE_0: 150.000000
843bf215546Sopenharmony_ci				GRAS_CL_VPORT_YOFFSET_0: 150.000000
844bf215546Sopenharmony_ci				GRAS_CL_VPORT_YSCALE_0: -150.000000
845bf215546Sopenharmony_ci				GRAS_CL_VPORT_ZOFFSET_0: 0.500000
846bf215546Sopenharmony_ci				GRAS_CL_VPORT_ZSCALE_0: 0.500000
847bf215546Sopenharmony_ci109ce4f8:			0000: 00052008 43160000 43160000 43160000 c3160000 3f000000 3f000000
848bf215546Sopenharmony_cit0			write RB_VPORT_Z_CLAMP[0].MIN (2120)
849bf215546Sopenharmony_ci				RB_VPORT_Z_CLAMP[0].MIN: 0
850bf215546Sopenharmony_ci				RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
851bf215546Sopenharmony_ci109ce514:			0000: 00012120 00000000 00ffffff
852bf215546Sopenharmony_cit0			write HLSQ_UPDATE_CONTROL (23db)
853bf215546Sopenharmony_ci				HLSQ_UPDATE_CONTROL: 0x3
854bf215546Sopenharmony_ci109ce520:			0000: 000023db 00000003
855bf215546Sopenharmony_cit0			write HLSQ_CONTROL_0_REG (23c0)
856bf215546Sopenharmony_ci				HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
857bf215546Sopenharmony_ci				HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
858bf215546Sopenharmony_ci				HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
859bf215546Sopenharmony_ci				HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
860bf215546Sopenharmony_ci				HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
861bf215546Sopenharmony_ci109ce528:			0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfcfc 00fcfcfc
862bf215546Sopenharmony_cit0			write HLSQ_VS_CONTROL_REG (23c5)
863bf215546Sopenharmony_ci				HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
864bf215546Sopenharmony_ci				HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
865bf215546Sopenharmony_ci				HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
866bf215546Sopenharmony_ci				HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
867bf215546Sopenharmony_ci				HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
868bf215546Sopenharmony_ci109ce540:			0000: 000423c5 04000042 017e423e 007e4200 007e4200 007e4200
869bf215546Sopenharmony_cit0			write SP_SP_CTRL_REG (22c0)
870bf215546Sopenharmony_ci				SP_SP_CTRL_REG: { 0x140010 }
871bf215546Sopenharmony_ci109ce558:			0000: 000022c0 00140010
872bf215546Sopenharmony_cit0			write SP_INSTR_CACHE_CTRL (22c1)
873bf215546Sopenharmony_ci				SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
874bf215546Sopenharmony_ci109ce560:			0000: 000022c1 000005ff
875bf215546Sopenharmony_cit0			write SP_VS_LENGTH_REG (22e5)
876bf215546Sopenharmony_ci				SP_VS_LENGTH_REG: 4
877bf215546Sopenharmony_ci109ce568:			0000: 000022e5 00000004
878bf215546Sopenharmony_cit0			write SP_VS_CTRL_REG0 (22c4)
879bf215546Sopenharmony_ci				SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 4 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
880bf215546Sopenharmony_ci				SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
881bf215546Sopenharmony_ci				SP_VS_PARAM_REG: { POSREGID = r1.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
882bf215546Sopenharmony_ci109ce570:			0000: 000222c4 00201000 04000042 0010fc06
883bf215546Sopenharmony_cit0			write SP_VS_OUT[0].REG (22c7)
884bf215546Sopenharmony_ci				SP_VS_OUT[0].REG: { A_REGID = r2.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
885bf215546Sopenharmony_ci109ce580:			0000: 000022c7 00001e0a
886bf215546Sopenharmony_cit0			write SP_VS_VPC_DST[0].REG (22d8)
887bf215546Sopenharmony_ci				SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
888bf215546Sopenharmony_ci109ce588:			0000: 000022d8 08080808
889bf215546Sopenharmony_cit0			write SP_VS_OBJ_OFFSET_REG (22e0)
890bf215546Sopenharmony_ci				SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
891bf215546Sopenharmony_ci				SP_VS_OBJ_START: 0x10cd0000
892bf215546Sopenharmony_ci109ce590:			0000: 000122e0 00000000 10cd0000
893bf215546Sopenharmony_cit0			write SP_FS_LENGTH_REG (22ef)
894bf215546Sopenharmony_ci				SP_FS_LENGTH_REG: 1
895bf215546Sopenharmony_ci109ce59c:			0000: 000022ef 00000001
896bf215546Sopenharmony_cit0			write SP_FS_CTRL_REG0 (22e8)
897bf215546Sopenharmony_ci				SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
898bf215546Sopenharmony_ci				SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
899bf215546Sopenharmony_ci109ce5a4:			0000: 000122e8 00340402 8010003e
900bf215546Sopenharmony_cit0			write SP_FS_OBJ_OFFSET_REG (22ea)
901bf215546Sopenharmony_ci				SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
902bf215546Sopenharmony_ci				SP_FS_OBJ_START: 0x10cd2000
903bf215546Sopenharmony_ci109ce5b0:			0000: 000122ea 7e420000 10cd2000
904bf215546Sopenharmony_cit0			write SP_HS_OBJ_OFFSET_REG (230d)
905bf215546Sopenharmony_ci				SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
906bf215546Sopenharmony_ci109ce5bc:			0000: 0000230d 7e420000
907bf215546Sopenharmony_cit0			write SP_DS_OBJ_OFFSET_REG (2334)
908bf215546Sopenharmony_ci				SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
909bf215546Sopenharmony_ci109ce5c4:			0000: 00002334 7e420000
910bf215546Sopenharmony_cit0			write SP_GS_OBJ_OFFSET_REG (235b)
911bf215546Sopenharmony_ci				SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
912bf215546Sopenharmony_ci109ce5cc:			0000: 0000235b 7e420000
913bf215546Sopenharmony_cit0			write GRAS_CNTL (2003)
914bf215546Sopenharmony_ci				GRAS_CNTL: { 0 }
915bf215546Sopenharmony_ci109ce5d4:			0000: 00002003 00000000
916bf215546Sopenharmony_cit0			write RB_RENDER_CONTROL2 (20a3)
917bf215546Sopenharmony_ci				RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
918bf215546Sopenharmony_ci109ce5dc:			0000: 000020a3 00000000
919bf215546Sopenharmony_cit0			write RB_FS_OUTPUT_REG (2100)
920bf215546Sopenharmony_ci				RB_FS_OUTPUT_REG: { MRT = 1 }
921bf215546Sopenharmony_ci109ce5e4:			0000: 00002100 00000001
922bf215546Sopenharmony_cit0			write SP_FS_OUTPUT_REG (22f0)
923bf215546Sopenharmony_ci				SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
924bf215546Sopenharmony_ci109ce5ec:			0000: 000022f0 0000fc01
925bf215546Sopenharmony_cit0			write SP_FS_MRT[0].REG (22f1)
926bf215546Sopenharmony_ci				SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
927bf215546Sopenharmony_ci				SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
928bf215546Sopenharmony_ci				SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
929bf215546Sopenharmony_ci				SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
930bf215546Sopenharmony_ci				SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
931bf215546Sopenharmony_ci				SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
932bf215546Sopenharmony_ci				SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
933bf215546Sopenharmony_ci				SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
934bf215546Sopenharmony_ci109ce5f4:			0000: 000722f1 0001a000 00000000 00000000 00000000 00000000 00000000 00000000
935bf215546Sopenharmony_ci*
936bf215546Sopenharmony_cit0			write VPC_ATTR (2140)
937bf215546Sopenharmony_ci				VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
938bf215546Sopenharmony_ci				VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
939bf215546Sopenharmony_ci109ce618:			0000: 00012140 42001004 00040400
940bf215546Sopenharmony_cit0			write VPC_VARYING_INTERP[0].MODE (2142)
941bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0].MODE: 0x55
942bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x1].MODE: 0
943bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x2].MODE: 0
944bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x3].MODE: 0
945bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x4].MODE: 0
946bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x5].MODE: 0
947bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x6].MODE: 0
948bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x7].MODE: 0
949bf215546Sopenharmony_ci109ce624:			0000: 00072142 00000055 00000000 00000000 00000000 00000000 00000000 00000000
950bf215546Sopenharmony_ci*
951bf215546Sopenharmony_cit0			write VPC_VARYING_PS_REPL[0].MODE (214a)
952bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0].MODE: 0
953bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x1].MODE: 0
954bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x2].MODE: 0
955bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x3].MODE: 0
956bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x4].MODE: 0
957bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x5].MODE: 0
958bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x6].MODE: 0
959bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x7].MODE: 0
960bf215546Sopenharmony_ci109ce648:			0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
961bf215546Sopenharmony_ci*
962bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (131 dwords)
963bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 4 }
964bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
965bf215546Sopenharmony_ci				:2:0000:0000[40700000x_10000002x] mul.f r0.x, r0.z, c0.x
966bf215546Sopenharmony_ci				:2:0001:0001[40700001x_10030002x] mul.f r0.y, r0.z, c0.w
967bf215546Sopenharmony_ci				:3:0002:0002[63818000x_00001004x] mad.f32 r0.x, c1.x, r0.w, r0.x
968bf215546Sopenharmony_ci				:3:0003:0003[63818001x_00011007x] mad.f32 r0.y, c1.w, r0.w, r0.y
969bf215546Sopenharmony_ci				:3:0004:0004[63820000x_00001008x] mad.f32 r0.x, c2.x, r1.x, r0.x
970bf215546Sopenharmony_ci				:3:0005:0005[63820001x_0001100bx] mad.f32 r0.y, c2.w, r1.x, r0.y
971bf215546Sopenharmony_ci				:3:0006:0006[63828006x_0000100cx] mad.f32 r1.z, c3.x, r1.y, r0.x
972bf215546Sopenharmony_ci				:2:0007:0007[40700000x_10010002x] mul.f r0.x, r0.z, c0.y
973bf215546Sopenharmony_ci				:3:0008:0008[63828009x_0001100fx] mad.f32 r2.y, c3.w, r1.y, r0.y
974bf215546Sopenharmony_ci				:3:0009:0009[63818000x_00001005x] mad.f32 r0.x, c1.y, r0.w, r0.x
975bf215546Sopenharmony_ci				:1:0010:0010[20244001x_00000010x] mov.f32f32 r0.y, c4.x
976bf215546Sopenharmony_ci				:3:0011:0011[63820000x_00001009x] mad.f32 r0.x, c2.y, r1.x, r0.x
977bf215546Sopenharmony_ci				:0:0012:0012[00000000x_00000000x] nop
978bf215546Sopenharmony_ci				:3:0013:0013[63828007x_0000100dx] mad.f32 r1.w, c3.y, r1.y, r0.x
979bf215546Sopenharmony_ci				:2:0014:0014[40700000x_10020002x] mul.f r0.x, r0.z, c0.z
980bf215546Sopenharmony_ci				:1:0015:0015[20244002x_00000015x] mov.f32f32 r0.z, c5.y
981bf215546Sopenharmony_ci				:3:0016:0016[63818000x_00001006x] mad.f32 r0.x, c1.z, r0.w, r0.x
982bf215546Sopenharmony_ci				:1:0017:0017[20244003x_00000016x] mov.f32f32 r0.w, c5.z
983bf215546Sopenharmony_ci				:3:0018:0018[63820000x_0000100ax] mad.f32 r0.x, c2.z, r1.x, r0.x
984bf215546Sopenharmony_ci				:1:0019:0019[20244004x_00000017x] mov.f32f32 r1.x, c5.w
985bf215546Sopenharmony_ci				:3:0020:0020[63828008x_0000100ex] mad.f32 r2.x, c3.z, r1.y, r0.x
986bf215546Sopenharmony_ci				:1:0021:0021[20244000x_00000011x] mov.f32f32 r0.x, c4.y
987bf215546Sopenharmony_ci				:2:0022:0022[40100002x_00021021x] add.f r0.z, c8.y, r0.z
988bf215546Sopenharmony_ci				:2:0023:0023[4050040dx_00041017x] (sat)max.f r3.y, c5.w, r1.x
989bf215546Sopenharmony_ci				:2:0024:0024[40100003x_00031022x] add.f r0.w, c8.z, r0.w
990bf215546Sopenharmony_ci				:2:0025:0025[40700000x_00001011x] mul.f r0.x, c4.y, r0.x
991bf215546Sopenharmony_ci				:0:0026:0026[00000000x_00000000x] nop
992bf215546Sopenharmony_ci				:3:0027:0027[63808000x_00001010x] mad.f32 r0.x, c4.x, r0.y, r0.x
993bf215546Sopenharmony_ci				:1:0028:0028[20244001x_00000012x] mov.f32f32 r0.y, c4.z
994bf215546Sopenharmony_ci				:0:0029:0029[00000200x_00000000x] (rpt2)nop
995bf215546Sopenharmony_ci				:3:0030:0032[63808000x_00001012x] mad.f32 r0.x, c4.z, r0.y, r0.x
996bf215546Sopenharmony_ci				:1:0031:0033[20244001x_00000014x] mov.f32f32 r0.y, c5.x
997bf215546Sopenharmony_ci				:0:0032:0034[00000200x_00000000x] (rpt2)nop
998bf215546Sopenharmony_ci				:2:0033:0037[40100001x_00011020x] add.f r0.y, c8.x, r0.y
999bf215546Sopenharmony_ci				:0:0034:0038[00000000x_00000000x] nop
1000bf215546Sopenharmony_ci				:4:0035:0039[80300000x_00000000x] rsq r0.x, r0.x
1001bf215546Sopenharmony_ci				:2:0036:0040[40701004x_00001011x] (ss)mul.f r1.x, c4.y, r0.x
1002bf215546Sopenharmony_ci				:0:0037:0041[00000200x_00000000x] (rpt2)nop
1003bf215546Sopenharmony_ci				:2:0038:0044[40700004x_10190004x] mul.f r1.x, r1.x, c6.y
1004bf215546Sopenharmony_ci				:2:0039:0045[40700005x_00001010x] mul.f r1.y, c4.x, r0.x
1005bf215546Sopenharmony_ci				:0:0040:0046[00000200x_00000000x] (rpt2)nop
1006bf215546Sopenharmony_ci				:3:0041:0049[63828004x_00041018x] mad.f32 r1.x, c6.x, r1.y, r1.x
1007bf215546Sopenharmony_ci				:2:0042:0050[40700000x_00001012x] mul.f r0.x, c4.z, r0.x
1008bf215546Sopenharmony_ci				:0:0043:0051[00000200x_00000000x] (rpt2)nop
1009bf215546Sopenharmony_ci				:3:0044:0054[63800000x_0004101ax] mad.f32 r0.x, c6.z, r0.x, r1.x
1010bf215546Sopenharmony_ci				:0:0045:0055[00000200x_00000000x] (rpt2)nop
1011bf215546Sopenharmony_ci				:2:0046:0058[40b00004x_00001034x] cmps.f.lt r1.x, c13.x, r0.x
1012bf215546Sopenharmony_ci				:2:0047:0059[40500000x_00001034x] max.f r0.x, c13.x, r0.x
1013bf215546Sopenharmony_ci				:0:0048:0060[00000100x_00000000x] (rpt1)nop
1014bf215546Sopenharmony_ci				:1:0049:0062[200c4004x_00000004x] cov.u32f32 r1.x, r1.x
1015bf215546Sopenharmony_ci				:3:0050:0063[63800001x_00011024x] mad.f32 r0.y, c9.x, r0.x, r0.y
1016bf215546Sopenharmony_ci				:3:0051:0064[63800002x_00021025x] mad.f32 r0.z, c9.y, r0.x, r0.z
1017bf215546Sopenharmony_ci				:3:0052:0065[63800000x_00031026x] mad.f32 r0.x, c9.z, r0.x, r0.w
1018bf215546Sopenharmony_ci				:3:0053:0066[6382040ax_00011028x] (sat)mad.f32 r2.z, c10.x, r1.x, r0.y
1019bf215546Sopenharmony_ci				:3:0054:0067[6382040bx_00021029x] (sat)mad.f32 r2.w, c10.y, r1.x, r0.z
1020bf215546Sopenharmony_ci				:3:0055:0068[6382040cx_0000102ax] (sat)mad.f32 r3.x, c10.z, r1.x, r0.x
1021bf215546Sopenharmony_ci				:0:0056:0069[03000000x_00000000x] end
1022bf215546Sopenharmony_ci				:0:0057:0070[00000000x_00000000x] nop
1023bf215546Sopenharmony_ci				:0:0058:0071[00000000x_00000000x] nop
1024bf215546Sopenharmony_ci				:0:0059:0072[00000000x_00000000x] nop
1025bf215546Sopenharmony_ci				:0:0060:0073[00000000x_00000000x] nop
1026bf215546Sopenharmony_ci				Stats:
1027bf215546Sopenharmony_ci				- shaderdb: 74 instr, 27 nops, 47 non-nops, 7 mov, 1 cov
1028bf215546Sopenharmony_ci				- shaderdb: 0 last-baryf, 0 half, 4 full, 13 constlen
1029bf215546Sopenharmony_ci				- shaderdb: 28 cat0, 8 cat1, 15 cat2, 22 cat3, 1 cat4, 0 cat5, 0 cat6, 0 cat7
1030bf215546Sopenharmony_ci				- shaderdb: 10 sstall, 1 (ss), 0 (sy)
1031bf215546Sopenharmony_ci109ce66c:			0000: c0813000 01200000 00000000 10000002 40700000 10030002 40700001 00001004
1032bf215546Sopenharmony_ci109ce68c:			0020: 63818000 00011007 63818001 00001008 63820000 0001100b 63820001 0000100c
1033bf215546Sopenharmony_ci109ce6ac:			0040: 63828006 10010002 40700000 0001100f 63828009 00001005 63818000 00000010
1034bf215546Sopenharmony_ci109ce6cc:			0060: 20244001 00001009 63820000 00000000 00000000 0000100d 63828007 10020002
1035bf215546Sopenharmony_ci109ce6ec:			0080: 40700000 00000015 20244002 00001006 63818000 00000016 20244003 0000100a
1036bf215546Sopenharmony_ci109ce70c:			00a0: 63820000 00000017 20244004 0000100e 63828008 00000011 20244000 00021021
1037bf215546Sopenharmony_ci109ce72c:			00c0: 40100002 00041017 4050040d 00031022 40100003 00001011 40700000 00000000
1038bf215546Sopenharmony_ci109ce74c:			00e0: 00000000 00001010 63808000 00000012 20244001 00000000 00000200 00001012
1039bf215546Sopenharmony_ci109ce76c:			0100: 63808000 00000014 20244001 00000000 00000200 00011020 40100001 00000000
1040bf215546Sopenharmony_ci109ce78c:			0120: 00000000 00000000 80300000 00001011 40701004 00000000 00000200 10190004
1041bf215546Sopenharmony_ci109ce7ac:			0140: 40700004 00001010 40700005 00000000 00000200 00041018 63828004 00001012
1042bf215546Sopenharmony_ci109ce7cc:			0160: 40700000 00000000 00000200 0004101a 63800000 00000000 00000200 00001034
1043bf215546Sopenharmony_ci109ce7ec:			0180: 40b00004 00001034 40500000 00000000 00000100 00000004 200c4004 00011024
1044bf215546Sopenharmony_ci109ce80c:			01a0: 63800001 00021025 63800002 00031026 63800000 00011028 6382040a 00021029
1045bf215546Sopenharmony_ci109ce82c:			01c0: 6382040b 0000102a 6382040c 00000000 03000000 00000000 00000000 00000000
1046bf215546Sopenharmony_ci*
1047bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (35 dwords)
1048bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
1049bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
1050bf215546Sopenharmony_ci				:0:0000:0000[00000000x_00000000x] nop
1051bf215546Sopenharmony_ci				:6:0001:0001[c7c60000x_01c00000x] ldlv.u32 r0.x, l[0], 1
1052bf215546Sopenharmony_ci				:6:0002:0002[c7c60001x_01c00002x] ldlv.u32 r0.y, l[1], 1
1053bf215546Sopenharmony_ci				:6:0003:0003[c7c60002x_01c00004x] ldlv.u32 r0.z, l[2], 1
1054bf215546Sopenharmony_ci				:6:0004:0004[c7c60003x_01c00006x] ldlv.u32 r0.w, l[3], 1
1055bf215546Sopenharmony_ci				:2:0005:0005[473090fcx_00002000x] (ss)bary.f (ei)r63.x, 0, r0.x
1056bf215546Sopenharmony_ci				:0:0006:0006[03000000x_00000000x] end
1057bf215546Sopenharmony_ci				:0:0007:0007[00000000x_00000000x] nop
1058bf215546Sopenharmony_ci				:0:0008:0008[00000000x_00000000x] nop
1059bf215546Sopenharmony_ci				:0:0009:0009[00000000x_00000000x] nop
1060bf215546Sopenharmony_ci				:0:0010:0010[00000000x_00000000x] nop
1061bf215546Sopenharmony_ci				Stats:
1062bf215546Sopenharmony_ci				- shaderdb: 11 instr, 5 nops, 6 non-nops, 0 mov, 0 cov
1063bf215546Sopenharmony_ci				- shaderdb: 5 last-baryf, 0 half, 1 full, 0 constlen
1064bf215546Sopenharmony_ci				- shaderdb: 6 cat0, 0 cat1, 1 cat2, 0 cat3, 0 cat4, 0 cat5, 4 cat6, 0 cat7
1065bf215546Sopenharmony_ci				- shaderdb: 0 sstall, 1 (ss), 0 (sy)
1066bf215546Sopenharmony_ci109ce878:			0000: c0213000 00700000 00000000 00000000 00000000 01c00000 c7c60000 01c00002
1067bf215546Sopenharmony_ci109ce898:			0020: c7c60001 01c00004 c7c60002 01c00006 c7c60003 00002000 473090fc 00000000
1068bf215546Sopenharmony_ci109ce8b8:			0040: 03000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
1069bf215546Sopenharmony_ci*
1070bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (51 dwords)
1071bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
1072bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
1073bf215546Sopenharmony_ci109ce910:				4.330127 0.855050 0.555273 0.469846 0.000000 4.698463 -0.404206 -0.342020
1074bf215546Sopenharmony_ci109ce930:				2.500000 -1.480991 -0.961761 -0.813798 -12.990380 -11.962078 35.506226 39.274502
1075bf215546Sopenharmony_ci109ce950:				0.000000 0.000000 1.000000 1.000000 0.160000 0.020000 0.000000 1.000000
1076bf215546Sopenharmony_ci109ce970:				0.039740 0.662886 0.747665 0.000000 1.000000 0.000000 0.000000 0.000000
1077bf215546Sopenharmony_ci109ce990:				0.000000 0.000000 0.000000 1.000000 0.800000 0.100000 0.000000 1.000000
1078bf215546Sopenharmony_ci109ce9b0:				0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000
1079bf215546Sopenharmony_ci109ce910:				0000: 408a9066 3f5ae494 3f0e265d 3ef08fb2 00000000 409659cf becef409 beaf1d43
1080bf215546Sopenharmony_ci109ce930:				0020: 40200000 bfbd9119 bf7635f5 bf50550b c14fd899 c13f64ac 420e0660 421d1917
1081bf215546Sopenharmony_ci109ce950:				0040: 00000000 00000000 3f800000 3f800000 3e23d70b 3ca3d70b 00000000 3f800000
1082bf215546Sopenharmony_ci109ce970:				0060: 3d22c66e 3f29b2e7 3f3f66f5 00000000 3f800000 00000000 00000000 00000000
1083bf215546Sopenharmony_ci109ce990:				0080: 00000000 00000000 00000000 3f800000 3f4ccccd 3dcccccd 00000000 3f800000
1084bf215546Sopenharmony_ci109ce9b0:				00a0: 00000000 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000
1085bf215546Sopenharmony_ci109ce904:			0000: c0313000 03200000 00000001 408a9066 3f5ae494 3f0e265d 3ef08fb2 00000000
1086bf215546Sopenharmony_ci109ce924:			0020: 409659cf becef409 beaf1d43 40200000 bfbd9119 bf7635f5 bf50550b c14fd899
1087bf215546Sopenharmony_ci109ce944:			0040: c13f64ac 420e0660 421d1917 00000000 00000000 3f800000 3f800000 3e23d70b
1088bf215546Sopenharmony_ci109ce964:			0060: 3ca3d70b 00000000 3f800000 3d22c66e 3f29b2e7 3f3f66f5 00000000 3f800000
1089bf215546Sopenharmony_ci109ce984:			0080: 00000000 00000000 00000000 00000000 00000000 00000000 3f800000 3f4ccccd
1090bf215546Sopenharmony_ci109ce9a4:			00a0: 3dcccccd 00000000 3f800000 00000000 00000000 00000000 3f800000 00000000
1091bf215546Sopenharmony_ci109ce9c4:			00c0: 00000000 00000000 3f800000
1092bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (7 dwords)
1093bf215546Sopenharmony_ci				{ DST_OFF = 13 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 1 }
1094bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
1095bf215546Sopenharmony_ci109ce9dc:				0.000000 -28026765312.000000 -28026765312.000000 -28026765312.000000
1096bf215546Sopenharmony_ci109ce9dc:				0000: 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
1097bf215546Sopenharmony_ci109ce9d0:			0000: c0053000 0060000d 00000001 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
1098bf215546Sopenharmony_cit0			write RB_MRT[0].CONTROL (20a4)
1099bf215546Sopenharmony_ci				RB_MRT[0].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
1100bf215546Sopenharmony_ci109ce9ec:			0000: 000020a4 0f000c00
1101bf215546Sopenharmony_cit0			write RB_MRT[0].BLEND_CONTROL (20a8)
1102bf215546Sopenharmony_ci				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 }
1103bf215546Sopenharmony_ci109ce9f4:			0000: 000020a8 00000000
1104bf215546Sopenharmony_cit0			write RB_MRT[0x1].CONTROL (20a9)
1105bf215546Sopenharmony_ci				RB_MRT[0x1].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
1106bf215546Sopenharmony_ci109ce9fc:			0000: 000020a9 0f000c00
1107bf215546Sopenharmony_cit0			write RB_MRT[0x1].BLEND_CONTROL (20ad)
1108bf215546Sopenharmony_ci				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 }
1109bf215546Sopenharmony_ci109cea04:			0000: 000020ad 00000000
1110bf215546Sopenharmony_cit0			write RB_MRT[0x2].CONTROL (20ae)
1111bf215546Sopenharmony_ci				RB_MRT[0x2].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
1112bf215546Sopenharmony_ci109cea0c:			0000: 000020ae 0f000c00
1113bf215546Sopenharmony_cit0			write RB_MRT[0x2].BLEND_CONTROL (20b2)
1114bf215546Sopenharmony_ci				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 }
1115bf215546Sopenharmony_ci109cea14:			0000: 000020b2 00000000
1116bf215546Sopenharmony_cit0			write RB_MRT[0x3].CONTROL (20b3)
1117bf215546Sopenharmony_ci				RB_MRT[0x3].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
1118bf215546Sopenharmony_ci109cea1c:			0000: 000020b3 0f000c00
1119bf215546Sopenharmony_cit0			write RB_MRT[0x3].BLEND_CONTROL (20b7)
1120bf215546Sopenharmony_ci				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 }
1121bf215546Sopenharmony_ci109cea24:			0000: 000020b7 00000000
1122bf215546Sopenharmony_cit0			write RB_MRT[0x4].CONTROL (20b8)
1123bf215546Sopenharmony_ci				RB_MRT[0x4].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
1124bf215546Sopenharmony_ci109cea2c:			0000: 000020b8 0f000c00
1125bf215546Sopenharmony_cit0			write RB_MRT[0x4].BLEND_CONTROL (20bc)
1126bf215546Sopenharmony_ci				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 }
1127bf215546Sopenharmony_ci109cea34:			0000: 000020bc 00000000
1128bf215546Sopenharmony_cit0			write RB_MRT[0x5].CONTROL (20bd)
1129bf215546Sopenharmony_ci				RB_MRT[0x5].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
1130bf215546Sopenharmony_ci109cea3c:			0000: 000020bd 0f000c00
1131bf215546Sopenharmony_cit0			write RB_MRT[0x5].BLEND_CONTROL (20c1)
1132bf215546Sopenharmony_ci				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 }
1133bf215546Sopenharmony_ci109cea44:			0000: 000020c1 00000000
1134bf215546Sopenharmony_cit0			write RB_MRT[0x6].CONTROL (20c2)
1135bf215546Sopenharmony_ci				RB_MRT[0x6].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
1136bf215546Sopenharmony_ci109cea4c:			0000: 000020c2 0f000c00
1137bf215546Sopenharmony_cit0			write RB_MRT[0x6].BLEND_CONTROL (20c6)
1138bf215546Sopenharmony_ci				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 }
1139bf215546Sopenharmony_ci109cea54:			0000: 000020c6 00000000
1140bf215546Sopenharmony_cit0			write RB_MRT[0x7].CONTROL (20c7)
1141bf215546Sopenharmony_ci				RB_MRT[0x7].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
1142bf215546Sopenharmony_ci109cea5c:			0000: 000020c7 0f000c00
1143bf215546Sopenharmony_cit0			write RB_MRT[0x7].BLEND_CONTROL (20cb)
1144bf215546Sopenharmony_ci				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 }
1145bf215546Sopenharmony_ci109cea64:			0000: 000020cb 00000000
1146bf215546Sopenharmony_cit0			write RB_FS_OUTPUT (20f9)
1147bf215546Sopenharmony_ci				RB_FS_OUTPUT: { ENABLE_BLEND = 0 | SAMPLE_MASK = 0xffff }
1148bf215546Sopenharmony_ci109cea6c:			0000: 000020f9 ffff0000
1149bf215546Sopenharmony_cit0			write VFD_FETCH[0].INSTR_0 (220a)
1150bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
1151bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_1: 0x107cb000
1152bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
1153bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
1154bf215546Sopenharmony_ci109cea74:			0000: 0003220a 0000060b 107cb000 00100000 00000001
1155bf215546Sopenharmony_cit0			write VFD_DECODE[0].INSTR (228a)
1156bf215546Sopenharmony_ci				VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
1157bf215546Sopenharmony_ci109cea88:			0000: 0000228a 2c0020df
1158bf215546Sopenharmony_cit0			write VFD_CONTROL_0 (2200)
1159bf215546Sopenharmony_ci				VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
1160bf215546Sopenharmony_ci				VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
1161bf215546Sopenharmony_ci				VFD_CONTROL_2: 0
1162bf215546Sopenharmony_ci				VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
1163bf215546Sopenharmony_ci				VFD_CONTROL_4: 0
1164bf215546Sopenharmony_ci109cea90:			0000: 00042200 041a0004 fcfc0081 00000000 0000fc00 00000000
1165bf215546Sopenharmony_cit0			write UCHE_INVALIDATE0 (0e8a)
1166bf215546Sopenharmony_ci				UCHE_INVALIDATE0: 0
1167bf215546Sopenharmony_ci				UCHE_INVALIDATE1: 0x12
1168bf215546Sopenharmony_ci109ceaa8:			0000: 00010e8a 00000000 00000012
1169bf215546Sopenharmony_cit0			write VFD_INDEX_OFFSET (2208)
1170bf215546Sopenharmony_ci				VFD_INDEX_OFFSET: 0
1171bf215546Sopenharmony_ci				UNKNOWN_2209: 0
1172bf215546Sopenharmony_ci109ceab4:			0000: 00012208 00000000 00000000
1173bf215546Sopenharmony_cit0			write PC_RESTART_INDEX (21c6)
1174bf215546Sopenharmony_ci				PC_RESTART_INDEX: 0xffffffff
1175bf215546Sopenharmony_ci109ceac0:			0000: 000021c6 ffffffff
1176bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
1177bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x8
1178bf215546Sopenharmony_ci				:0,7,115,8
1179bf215546Sopenharmony_ci109ceac8:			0000: 0000057f 00000008
1180bf215546Sopenharmony_cit3			opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
1181bf215546Sopenharmony_ci				{ 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 }
1182bf215546Sopenharmony_ci				{ NUM_INSTANCES = 1 }
1183bf215546Sopenharmony_ci				{ NUM_INDICES = 240 }
1184bf215546Sopenharmony_ci				{ FIRST_INDX = 0 }
1185bf215546Sopenharmony_ci				{ INDX_BASE = 0x10bd0000 }
1186bf215546Sopenharmony_ci				{ INDX_SIZE = 480 }
1187bf215546Sopenharmony_ci			draw[1] register values
1188bf215546Sopenharmony_ci!+	00000007			CP_SCRATCH[0x5].REG: 0x7
1189bf215546Sopenharmony_ci			:0,7,115,8
1190bf215546Sopenharmony_ci!+	00000008			CP_SCRATCH[0x7].REG: 0x8
1191bf215546Sopenharmony_ci			:0,7,115,8
1192bf215546Sopenharmony_ci +	00000000			UCHE_INVALIDATE0: 0
1193bf215546Sopenharmony_ci +	00000012			UCHE_INVALIDATE1: 0x12
1194bf215546Sopenharmony_ci +	00080000			GRAS_CL_CLIP_CNTL: { 0x80000 }
1195bf215546Sopenharmony_ci +	00000000			GRAS_CNTL: { 0 }
1196bf215546Sopenharmony_ci +	43160000			GRAS_CL_VPORT_XOFFSET_0: 150.000000
1197bf215546Sopenharmony_ci +	43160000			GRAS_CL_VPORT_XSCALE_0: 150.000000
1198bf215546Sopenharmony_ci +	43160000			GRAS_CL_VPORT_YOFFSET_0: 150.000000
1199bf215546Sopenharmony_ci +	c3160000			GRAS_CL_VPORT_YSCALE_0: -150.000000
1200bf215546Sopenharmony_ci!+	3f000000			GRAS_CL_VPORT_ZOFFSET_0: 0.500000
1201bf215546Sopenharmony_ci!+	3f000000			GRAS_CL_VPORT_ZSCALE_0: 0.500000
1202bf215546Sopenharmony_ci!+	00100010			GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
1203bf215546Sopenharmony_ci!+	00000010			GRAS_SU_POINT_SIZE: 1.000000
1204bf215546Sopenharmony_ci +	00000000			GRAS_ALPHA_CONTROL: { 0 }
1205bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_SCALE: 0.000000
1206bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
1207bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
1208bf215546Sopenharmony_ci!+	00100012			GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
1209bf215546Sopenharmony_ci +	012b012b			GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
1210bf215546Sopenharmony_ci +	00000000			GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
1211bf215546Sopenharmony_ci +	00000000			RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
1212bf215546Sopenharmony_ci +	0f000c00			RB_MRT[0].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
1213bf215546Sopenharmony_ci +	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 }
1214bf215546Sopenharmony_ci!+	0f000c00			RB_MRT[0x1].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
1215bf215546Sopenharmony_ci +	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 }
1216bf215546Sopenharmony_ci!+	0f000c00			RB_MRT[0x2].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
1217bf215546Sopenharmony_ci +	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 }
1218bf215546Sopenharmony_ci!+	0f000c00			RB_MRT[0x3].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
1219bf215546Sopenharmony_ci +	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 }
1220bf215546Sopenharmony_ci!+	0f000c00			RB_MRT[0x4].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
1221bf215546Sopenharmony_ci +	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 }
1222bf215546Sopenharmony_ci!+	0f000c00			RB_MRT[0x5].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
1223bf215546Sopenharmony_ci +	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 }
1224bf215546Sopenharmony_ci!+	0f000c00			RB_MRT[0x6].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
1225bf215546Sopenharmony_ci +	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 }
1226bf215546Sopenharmony_ci!+	0f000c00			RB_MRT[0x7].CONTROL: { ROP_CODE = ROP_COPY | COMPONENT_ENABLE = 0xf }
1227bf215546Sopenharmony_ci +	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 }
1228bf215546Sopenharmony_ci +	00000000			RB_ALPHA_CONTROL: { ALPHA_REF = 0 | ALPHA_TEST_FUNC = FUNC_NEVER }
1229bf215546Sopenharmony_ci!+	ffff0000			RB_FS_OUTPUT: { ENABLE_BLEND = 0 | SAMPLE_MASK = 0xffff }
1230bf215546Sopenharmony_ci +	00000001			RB_FS_OUTPUT_REG: { MRT = 1 }
1231bf215546Sopenharmony_ci!+	80000016			RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_READ_ENABLE }
1232bf215546Sopenharmony_ci +	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 }
1233bf215546Sopenharmony_ci +	00000000			RB_STENCIL_CONTROL2: { 0 }
1234bf215546Sopenharmony_ci +	00000000			RB_STENCILREFMASK: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0 }
1235bf215546Sopenharmony_ci +	00000000			RB_STENCILREFMASK_BF: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0 }
1236bf215546Sopenharmony_ci +	00000000			RB_VPORT_Z_CLAMP[0].MIN: 0
1237bf215546Sopenharmony_ci +	00ffffff			RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
1238bf215546Sopenharmony_ci!+	42001004			VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
1239bf215546Sopenharmony_ci!+	00040400			VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
1240bf215546Sopenharmony_ci!+	00000055			VPC_VARYING_INTERP[0].MODE: 0x55
1241bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x1].MODE: 0
1242bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x2].MODE: 0
1243bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x3].MODE: 0
1244bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x4].MODE: 0
1245bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x5].MODE: 0
1246bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x6].MODE: 0
1247bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x7].MODE: 0
1248bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0].MODE: 0
1249bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x1].MODE: 0
1250bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x2].MODE: 0
1251bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x3].MODE: 0
1252bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x4].MODE: 0
1253bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x5].MODE: 0
1254bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x6].MODE: 0
1255bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x7].MODE: 0
1256bf215546Sopenharmony_ci!+	02000001			PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
1257bf215546Sopenharmony_ci +	00000012			PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
1258bf215546Sopenharmony_ci +	ffffffff			PC_RESTART_INDEX: 0xffffffff
1259bf215546Sopenharmony_ci +	041a0004			VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
1260bf215546Sopenharmony_ci +	fcfc0081			VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
1261bf215546Sopenharmony_ci +	00000000			VFD_CONTROL_2: 0
1262bf215546Sopenharmony_ci +	0000fc00			VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
1263bf215546Sopenharmony_ci +	00000000			VFD_CONTROL_4: 0
1264bf215546Sopenharmony_ci +	00000000			VFD_INDEX_OFFSET: 0
1265bf215546Sopenharmony_ci +	00000000			UNKNOWN_2209: 0
1266bf215546Sopenharmony_ci +	0000060b			VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
1267bf215546Sopenharmony_ci!+	107cb000			VFD_FETCH[0].INSTR_1: 0x107cb000
1268bf215546Sopenharmony_ci!+	00100000			VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
1269bf215546Sopenharmony_ci +	00000001			VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
1270bf215546Sopenharmony_ci!+	2c0020df			VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
1271bf215546Sopenharmony_ci +	00140010			SP_SP_CTRL_REG: { 0x140010 }
1272bf215546Sopenharmony_ci +	000005ff			SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
1273bf215546Sopenharmony_ci!+	00201000			SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 4 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
1274bf215546Sopenharmony_ci +	04000042			SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
1275bf215546Sopenharmony_ci!+	0010fc06			SP_VS_PARAM_REG: { POSREGID = r1.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
1276bf215546Sopenharmony_ci!+	00001e0a			SP_VS_OUT[0].REG: { A_REGID = r2.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
1277bf215546Sopenharmony_ci!+	08080808			SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
1278bf215546Sopenharmony_ci +	00000000			SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
1279bf215546Sopenharmony_ci!+	10cd0000			SP_VS_OBJ_START: 0x10cd0000
1280bf215546Sopenharmony_ci!+	00000004			SP_VS_LENGTH_REG: 4
1281bf215546Sopenharmony_ci!+	00340402			SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
1282bf215546Sopenharmony_ci!+	8010003e			SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
1283bf215546Sopenharmony_ci +	7e420000			SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
1284bf215546Sopenharmony_ci!+	10cd2000			SP_FS_OBJ_START: 0x10cd2000
1285bf215546Sopenharmony_ci +	00000001			SP_FS_LENGTH_REG: 1
1286bf215546Sopenharmony_ci +	0000fc01			SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
1287bf215546Sopenharmony_ci +	0001a000			SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
1288bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
1289bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
1290bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
1291bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
1292bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
1293bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
1294bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
1295bf215546Sopenharmony_ci +	7e420000			SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
1296bf215546Sopenharmony_ci +	7e420000			SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
1297bf215546Sopenharmony_ci +	7e420000			SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
1298bf215546Sopenharmony_ci +	28000250			HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
1299bf215546Sopenharmony_ci +	fcfc0100			HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
1300bf215546Sopenharmony_ci +	fff3f3f0			HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
1301bf215546Sopenharmony_ci +	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 }
1302bf215546Sopenharmony_ci +	00fcfcfc			HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
1303bf215546Sopenharmony_ci!+	04000042			HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
1304bf215546Sopenharmony_ci +	017e423e			HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
1305bf215546Sopenharmony_ci +	007e4200			HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
1306bf215546Sopenharmony_ci +	007e4200			HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
1307bf215546Sopenharmony_ci +	007e4200			HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
1308bf215546Sopenharmony_ci +	00000003			HLSQ_UPDATE_CONTROL: 0x3
1309bf215546Sopenharmony_ci109cead0:			0000: c0053800 00000404 00000001 000000f0 00000000 10bd0000 000001e0
1310bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
1311bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x9
1312bf215546Sopenharmony_ci				:0,7,115,9
1313bf215546Sopenharmony_ci109ceaec:			0000: 0000057f 00000009
1314bf215546Sopenharmony_cit0			write CP_SCRATCH[0x5].REG (057d)
1315bf215546Sopenharmony_ci				CP_SCRATCH[0x5].REG: 0xd
1316bf215546Sopenharmony_ci				:0,13,115,9
1317bf215546Sopenharmony_ci109ceaf4:			0000: 0000057d 0000000d
1318bf215546Sopenharmony_cit0			write PC_PRIM_VTX_CNTL (21c4)
1319bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
1320bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
1321bf215546Sopenharmony_ci109ceafc:			0000: 000121c4 02000001 00000012
1322bf215546Sopenharmony_cit0			write VFD_INDEX_OFFSET (2208)
1323bf215546Sopenharmony_ci				VFD_INDEX_OFFSET: 0
1324bf215546Sopenharmony_ci				UNKNOWN_2209: 0
1325bf215546Sopenharmony_ci109ceb08:			0000: 00012208 00000000 00000000
1326bf215546Sopenharmony_cit0			write PC_RESTART_INDEX (21c6)
1327bf215546Sopenharmony_ci				PC_RESTART_INDEX: 0xffffffff
1328bf215546Sopenharmony_ci109ceb14:			0000: 000021c6 ffffffff
1329bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
1330bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0xe
1331bf215546Sopenharmony_ci				:0,13,115,14
1332bf215546Sopenharmony_ci109ceb1c:			0000: 0000057f 0000000e
1333bf215546Sopenharmony_cit3			opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
1334bf215546Sopenharmony_ci				{ 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 }
1335bf215546Sopenharmony_ci				{ NUM_INSTANCES = 1 }
1336bf215546Sopenharmony_ci				{ NUM_INDICES = 120 }
1337bf215546Sopenharmony_ci				{ FIRST_INDX = 0 }
1338bf215546Sopenharmony_ci				{ INDX_BASE = 0x10bd01e0 }
1339bf215546Sopenharmony_ci				{ INDX_SIZE = 240 }
1340bf215546Sopenharmony_ci			draw[2] register values
1341bf215546Sopenharmony_ci!+	0000000d			CP_SCRATCH[0x5].REG: 0xd
1342bf215546Sopenharmony_ci			:0,13,115,14
1343bf215546Sopenharmony_ci!+	0000000e			CP_SCRATCH[0x7].REG: 0xe
1344bf215546Sopenharmony_ci			:0,13,115,14
1345bf215546Sopenharmony_ci +	02000001			PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
1346bf215546Sopenharmony_ci +	00000012			PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
1347bf215546Sopenharmony_ci +	ffffffff			PC_RESTART_INDEX: 0xffffffff
1348bf215546Sopenharmony_ci +	00000000			VFD_INDEX_OFFSET: 0
1349bf215546Sopenharmony_ci +	00000000			UNKNOWN_2209: 0
1350bf215546Sopenharmony_ci109ceb24:			0000: c0053800 00000404 00000001 00000078 00000000 10bd01e0 000000f0
1351bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
1352bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0xf
1353bf215546Sopenharmony_ci				:0,13,115,15
1354bf215546Sopenharmony_ci109ceb40:			0000: 0000057f 0000000f
1355bf215546Sopenharmony_cit0			write CP_SCRATCH[0x5].REG (057d)
1356bf215546Sopenharmony_ci				CP_SCRATCH[0x5].REG: 0x13
1357bf215546Sopenharmony_ci				:0,19,115,15
1358bf215546Sopenharmony_ci109ceb48:			0000: 0000057d 00000013
1359bf215546Sopenharmony_cit0			write PC_PRIM_VTX_CNTL (21c4)
1360bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
1361bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
1362bf215546Sopenharmony_ci109ceb50:			0000: 000121c4 02000001 00000012
1363bf215546Sopenharmony_cit3			opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
1364bf215546Sopenharmony_ci109ceb5c:			0000: c0002600 00000000
1365bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (51 dwords)
1366bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
1367bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
1368bf215546Sopenharmony_ci109ceb70:				4.330127 0.855050 0.555273 0.469846 0.000000 4.698463 -0.404206 -0.342020
1369bf215546Sopenharmony_ci109ceb90:				2.500000 -1.480991 -0.961761 -0.813798 -12.990380 -11.962078 35.506226 39.274502
1370bf215546Sopenharmony_ci109cebb0:				0.000000 0.000000 -1.000000 1.000000 0.160000 0.020000 0.000000 1.000000
1371bf215546Sopenharmony_ci109cebd0:				0.039740 0.662886 0.747665 0.000000 1.000000 0.000000 0.000000 0.000000
1372bf215546Sopenharmony_ci109cebf0:				0.000000 0.000000 0.000000 1.000000 0.800000 0.100000 0.000000 1.000000
1373bf215546Sopenharmony_ci109cec10:				0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000
1374bf215546Sopenharmony_ci109ceb70:				0000: 408a9066 3f5ae494 3f0e265d 3ef08fb2 00000000 409659cf becef409 beaf1d43
1375bf215546Sopenharmony_ci109ceb90:				0020: 40200000 bfbd9119 bf7635f5 bf50550b c14fd899 c13f64ac 420e0660 421d1917
1376bf215546Sopenharmony_ci109cebb0:				0040: 00000000 00000000 bf800000 3f800000 3e23d70b 3ca3d70b 00000000 3f800000
1377bf215546Sopenharmony_ci109cebd0:				0060: 3d22c66e 3f29b2e7 3f3f66f5 00000000 3f800000 00000000 00000000 00000000
1378bf215546Sopenharmony_ci109cebf0:				0080: 00000000 00000000 00000000 3f800000 3f4ccccd 3dcccccd 00000000 3f800000
1379bf215546Sopenharmony_ci109cec10:				00a0: 00000000 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000
1380bf215546Sopenharmony_ci109ceb64:			0000: c0313000 03200000 00000001 408a9066 3f5ae494 3f0e265d 3ef08fb2 00000000
1381bf215546Sopenharmony_ci109ceb84:			0020: 409659cf becef409 beaf1d43 40200000 bfbd9119 bf7635f5 bf50550b c14fd899
1382bf215546Sopenharmony_ci109ceba4:			0040: c13f64ac 420e0660 421d1917 00000000 00000000 bf800000 3f800000 3e23d70b
1383bf215546Sopenharmony_ci109cebc4:			0060: 3ca3d70b 00000000 3f800000 3d22c66e 3f29b2e7 3f3f66f5 00000000 3f800000
1384bf215546Sopenharmony_ci109cebe4:			0080: 00000000 00000000 00000000 00000000 00000000 00000000 3f800000 3f4ccccd
1385bf215546Sopenharmony_ci109cec04:			00a0: 3dcccccd 00000000 3f800000 00000000 00000000 00000000 3f800000 00000000
1386bf215546Sopenharmony_ci109cec24:			00c0: 00000000 00000000 3f800000
1387bf215546Sopenharmony_cit0			write VFD_INDEX_OFFSET (2208)
1388bf215546Sopenharmony_ci				VFD_INDEX_OFFSET: 0
1389bf215546Sopenharmony_ci				UNKNOWN_2209: 0
1390bf215546Sopenharmony_ci109cec30:			0000: 00012208 00000000 00000000
1391bf215546Sopenharmony_cit0			write PC_RESTART_INDEX (21c6)
1392bf215546Sopenharmony_ci				PC_RESTART_INDEX: 0xffffffff
1393bf215546Sopenharmony_ci109cec3c:			0000: 000021c6 ffffffff
1394bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
1395bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x14
1396bf215546Sopenharmony_ci				:0,19,115,20
1397bf215546Sopenharmony_ci109cec44:			0000: 0000057f 00000014
1398bf215546Sopenharmony_cit3			opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
1399bf215546Sopenharmony_ci				{ 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 }
1400bf215546Sopenharmony_ci				{ NUM_INSTANCES = 1 }
1401bf215546Sopenharmony_ci				{ NUM_INDICES = 240 }
1402bf215546Sopenharmony_ci				{ FIRST_INDX = 0 }
1403bf215546Sopenharmony_ci				{ INDX_BASE = 0x10bd02d0 }
1404bf215546Sopenharmony_ci				{ INDX_SIZE = 480 }
1405bf215546Sopenharmony_ci			draw[3] register values
1406bf215546Sopenharmony_ci!+	00000013			CP_SCRATCH[0x5].REG: 0x13
1407bf215546Sopenharmony_ci			:0,19,115,20
1408bf215546Sopenharmony_ci!+	00000014			CP_SCRATCH[0x7].REG: 0x14
1409bf215546Sopenharmony_ci			:0,19,115,20
1410bf215546Sopenharmony_ci +	02000001			PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
1411bf215546Sopenharmony_ci +	00000012			PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
1412bf215546Sopenharmony_ci +	ffffffff			PC_RESTART_INDEX: 0xffffffff
1413bf215546Sopenharmony_ci +	00000000			VFD_INDEX_OFFSET: 0
1414bf215546Sopenharmony_ci +	00000000			UNKNOWN_2209: 0
1415bf215546Sopenharmony_ci109cec4c:			0000: c0053800 00000404 00000001 000000f0 00000000 10bd02d0 000001e0
1416bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
1417bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x15
1418bf215546Sopenharmony_ci				:0,19,115,21
1419bf215546Sopenharmony_ci109cec68:			0000: 0000057f 00000015
1420bf215546Sopenharmony_cit0			write CP_SCRATCH[0x5].REG (057d)
1421bf215546Sopenharmony_ci				CP_SCRATCH[0x5].REG: 0x19
1422bf215546Sopenharmony_ci				:0,25,115,21
1423bf215546Sopenharmony_ci109cec70:			0000: 0000057d 00000019
1424bf215546Sopenharmony_cit0			write PC_PRIM_VTX_CNTL (21c4)
1425bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
1426bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
1427bf215546Sopenharmony_ci109cec78:			0000: 000121c4 02000001 00000012
1428bf215546Sopenharmony_cit0			write VFD_INDEX_OFFSET (2208)
1429bf215546Sopenharmony_ci				VFD_INDEX_OFFSET: 0
1430bf215546Sopenharmony_ci				UNKNOWN_2209: 0
1431bf215546Sopenharmony_ci109cec84:			0000: 00012208 00000000 00000000
1432bf215546Sopenharmony_cit0			write PC_RESTART_INDEX (21c6)
1433bf215546Sopenharmony_ci				PC_RESTART_INDEX: 0xffffffff
1434bf215546Sopenharmony_ci109cec90:			0000: 000021c6 ffffffff
1435bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
1436bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x1a
1437bf215546Sopenharmony_ci				:0,25,115,26
1438bf215546Sopenharmony_ci109cec98:			0000: 0000057f 0000001a
1439bf215546Sopenharmony_cit3			opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
1440bf215546Sopenharmony_ci				{ 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 }
1441bf215546Sopenharmony_ci				{ NUM_INSTANCES = 1 }
1442bf215546Sopenharmony_ci				{ NUM_INDICES = 120 }
1443bf215546Sopenharmony_ci				{ FIRST_INDX = 0 }
1444bf215546Sopenharmony_ci				{ INDX_BASE = 0x10bd04b0 }
1445bf215546Sopenharmony_ci				{ INDX_SIZE = 240 }
1446bf215546Sopenharmony_ci			draw[4] register values
1447bf215546Sopenharmony_ci!+	00000019			CP_SCRATCH[0x5].REG: 0x19
1448bf215546Sopenharmony_ci			:0,25,115,26
1449bf215546Sopenharmony_ci!+	0000001a			CP_SCRATCH[0x7].REG: 0x1a
1450bf215546Sopenharmony_ci			:0,25,115,26
1451bf215546Sopenharmony_ci +	02000001			PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
1452bf215546Sopenharmony_ci +	00000012			PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
1453bf215546Sopenharmony_ci +	ffffffff			PC_RESTART_INDEX: 0xffffffff
1454bf215546Sopenharmony_ci +	00000000			VFD_INDEX_OFFSET: 0
1455bf215546Sopenharmony_ci +	00000000			UNKNOWN_2209: 0
1456bf215546Sopenharmony_ci109ceca0:			0000: c0053800 00000404 00000001 00000078 00000000 10bd04b0 000000f0
1457bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
1458bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x1b
1459bf215546Sopenharmony_ci				:0,25,115,27
1460bf215546Sopenharmony_ci109cecbc:			0000: 0000057f 0000001b
1461bf215546Sopenharmony_cit0			write CP_SCRATCH[0x5].REG (057d)
1462bf215546Sopenharmony_ci				CP_SCRATCH[0x5].REG: 0x1f
1463bf215546Sopenharmony_ci				:0,31,115,27
1464bf215546Sopenharmony_ci109cecc4:			0000: 0000057d 0000001f
1465bf215546Sopenharmony_cit0			write RB_DEPTH_CONTROL (2101)
1466bf215546Sopenharmony_ci				RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_READ_ENABLE }
1467bf215546Sopenharmony_ci109ceccc:			0000: 00002101 80000016
1468bf215546Sopenharmony_cit0			write GRAS_ALPHA_CONTROL (2073)
1469bf215546Sopenharmony_ci				GRAS_ALPHA_CONTROL: { 0 }
1470bf215546Sopenharmony_ci109cecd4:			0000: 00002073 00000000
1471bf215546Sopenharmony_cit0			write PC_PRIM_VTX_CNTL (21c4)
1472bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
1473bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
1474bf215546Sopenharmony_ci109cecdc:			0000: 000121c4 02000001 00000012
1475bf215546Sopenharmony_cit0			write HLSQ_UPDATE_CONTROL (23db)
1476bf215546Sopenharmony_ci				HLSQ_UPDATE_CONTROL: 0x3
1477bf215546Sopenharmony_ci109cece8:			0000: 000023db 00000003
1478bf215546Sopenharmony_cit0			write HLSQ_CONTROL_0_REG (23c0)
1479bf215546Sopenharmony_ci				HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
1480bf215546Sopenharmony_ci				HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
1481bf215546Sopenharmony_ci				HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
1482bf215546Sopenharmony_ci				HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
1483bf215546Sopenharmony_ci				HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
1484bf215546Sopenharmony_ci109cecf0:			0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfcfc 00fcfcfc
1485bf215546Sopenharmony_cit0			write HLSQ_VS_CONTROL_REG (23c5)
1486bf215546Sopenharmony_ci				HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
1487bf215546Sopenharmony_ci				HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
1488bf215546Sopenharmony_ci				HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
1489bf215546Sopenharmony_ci				HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
1490bf215546Sopenharmony_ci				HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
1491bf215546Sopenharmony_ci109ced08:			0000: 000423c5 04000042 017e423e 007e4200 007e4200 007e4200
1492bf215546Sopenharmony_cit0			write SP_SP_CTRL_REG (22c0)
1493bf215546Sopenharmony_ci				SP_SP_CTRL_REG: { 0x140010 }
1494bf215546Sopenharmony_ci109ced20:			0000: 000022c0 00140010
1495bf215546Sopenharmony_cit0			write SP_INSTR_CACHE_CTRL (22c1)
1496bf215546Sopenharmony_ci				SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
1497bf215546Sopenharmony_ci109ced28:			0000: 000022c1 000005ff
1498bf215546Sopenharmony_cit0			write SP_VS_LENGTH_REG (22e5)
1499bf215546Sopenharmony_ci				SP_VS_LENGTH_REG: 4
1500bf215546Sopenharmony_ci109ced30:			0000: 000022e5 00000004
1501bf215546Sopenharmony_cit0			write SP_VS_CTRL_REG0 (22c4)
1502bf215546Sopenharmony_ci				SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
1503bf215546Sopenharmony_ci				SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
1504bf215546Sopenharmony_ci				SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
1505bf215546Sopenharmony_ci109ced38:			0000: 000222c4 00201400 08000042 0010fc0a
1506bf215546Sopenharmony_cit0			write SP_VS_OUT[0].REG (22c7)
1507bf215546Sopenharmony_ci				SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
1508bf215546Sopenharmony_ci109ced48:			0000: 000022c7 00001e0e
1509bf215546Sopenharmony_cit0			write SP_VS_VPC_DST[0].REG (22d8)
1510bf215546Sopenharmony_ci				SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
1511bf215546Sopenharmony_ci109ced50:			0000: 000022d8 08080808
1512bf215546Sopenharmony_cit0			write SP_VS_OBJ_OFFSET_REG (22e0)
1513bf215546Sopenharmony_ci				SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
1514bf215546Sopenharmony_ci				SP_VS_OBJ_START: 0x10cd5000
1515bf215546Sopenharmony_ci109ced58:			0000: 000122e0 00000000 10cd5000
1516bf215546Sopenharmony_cit0			write SP_FS_LENGTH_REG (22ef)
1517bf215546Sopenharmony_ci				SP_FS_LENGTH_REG: 1
1518bf215546Sopenharmony_ci109ced64:			0000: 000022ef 00000001
1519bf215546Sopenharmony_cit0			write SP_FS_CTRL_REG0 (22e8)
1520bf215546Sopenharmony_ci				SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
1521bf215546Sopenharmony_ci				SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
1522bf215546Sopenharmony_ci109ced6c:			0000: 000122e8 00340402 8010003e
1523bf215546Sopenharmony_cit0			write SP_FS_OBJ_OFFSET_REG (22ea)
1524bf215546Sopenharmony_ci				SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
1525bf215546Sopenharmony_ci				SP_FS_OBJ_START: 0x10cd2000
1526bf215546Sopenharmony_ci109ced78:			0000: 000122ea 7e420000 10cd2000
1527bf215546Sopenharmony_cit0			write SP_HS_OBJ_OFFSET_REG (230d)
1528bf215546Sopenharmony_ci				SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
1529bf215546Sopenharmony_ci109ced84:			0000: 0000230d 7e420000
1530bf215546Sopenharmony_cit0			write SP_DS_OBJ_OFFSET_REG (2334)
1531bf215546Sopenharmony_ci				SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
1532bf215546Sopenharmony_ci109ced8c:			0000: 00002334 7e420000
1533bf215546Sopenharmony_cit0			write SP_GS_OBJ_OFFSET_REG (235b)
1534bf215546Sopenharmony_ci				SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
1535bf215546Sopenharmony_ci109ced94:			0000: 0000235b 7e420000
1536bf215546Sopenharmony_cit0			write GRAS_CNTL (2003)
1537bf215546Sopenharmony_ci				GRAS_CNTL: { 0 }
1538bf215546Sopenharmony_ci109ced9c:			0000: 00002003 00000000
1539bf215546Sopenharmony_cit0			write RB_RENDER_CONTROL2 (20a3)
1540bf215546Sopenharmony_ci				RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
1541bf215546Sopenharmony_ci109ceda4:			0000: 000020a3 00000000
1542bf215546Sopenharmony_cit0			write RB_FS_OUTPUT_REG (2100)
1543bf215546Sopenharmony_ci				RB_FS_OUTPUT_REG: { MRT = 1 }
1544bf215546Sopenharmony_ci109cedac:			0000: 00002100 00000001
1545bf215546Sopenharmony_cit0			write SP_FS_OUTPUT_REG (22f0)
1546bf215546Sopenharmony_ci				SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
1547bf215546Sopenharmony_ci109cedb4:			0000: 000022f0 0000fc01
1548bf215546Sopenharmony_cit0			write SP_FS_MRT[0].REG (22f1)
1549bf215546Sopenharmony_ci				SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
1550bf215546Sopenharmony_ci				SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
1551bf215546Sopenharmony_ci				SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
1552bf215546Sopenharmony_ci				SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
1553bf215546Sopenharmony_ci				SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
1554bf215546Sopenharmony_ci				SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
1555bf215546Sopenharmony_ci				SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
1556bf215546Sopenharmony_ci				SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
1557bf215546Sopenharmony_ci109cedbc:			0000: 000722f1 0001a000 00000000 00000000 00000000 00000000 00000000 00000000
1558bf215546Sopenharmony_ci*
1559bf215546Sopenharmony_cit0			write VPC_ATTR (2140)
1560bf215546Sopenharmony_ci				VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
1561bf215546Sopenharmony_ci				VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
1562bf215546Sopenharmony_ci109cede0:			0000: 00012140 42001004 00040400
1563bf215546Sopenharmony_cit0			write VPC_VARYING_INTERP[0].MODE (2142)
1564bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0].MODE: 0x55
1565bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x1].MODE: 0
1566bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x2].MODE: 0
1567bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x3].MODE: 0
1568bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x4].MODE: 0
1569bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x5].MODE: 0
1570bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x6].MODE: 0
1571bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x7].MODE: 0
1572bf215546Sopenharmony_ci109cedec:			0000: 00072142 00000055 00000000 00000000 00000000 00000000 00000000 00000000
1573bf215546Sopenharmony_ci*
1574bf215546Sopenharmony_cit0			write VPC_VARYING_PS_REPL[0].MODE (214a)
1575bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0].MODE: 0
1576bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x1].MODE: 0
1577bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x2].MODE: 0
1578bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x3].MODE: 0
1579bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x4].MODE: 0
1580bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x5].MODE: 0
1581bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x6].MODE: 0
1582bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x7].MODE: 0
1583bf215546Sopenharmony_ci109cee10:			0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
1584bf215546Sopenharmony_ci*
1585bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (131 dwords)
1586bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 4 }
1587bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
1588bf215546Sopenharmony_ci				:2:0000:0000[40700000x_10000002x] mul.f r0.x, r0.z, c0.x
1589bf215546Sopenharmony_ci				:2:0001:0001[40700001x_10030002x] mul.f r0.y, r0.z, c0.w
1590bf215546Sopenharmony_ci				:3:0002:0002[63818000x_00001004x] mad.f32 r0.x, c1.x, r0.w, r0.x
1591bf215546Sopenharmony_ci				:3:0003:0003[63818001x_00011007x] mad.f32 r0.y, c1.w, r0.w, r0.y
1592bf215546Sopenharmony_ci				:3:0004:0004[63820000x_00001008x] mad.f32 r0.x, c2.x, r1.x, r0.x
1593bf215546Sopenharmony_ci				:3:0005:0005[63820001x_0001100bx] mad.f32 r0.y, c2.w, r1.x, r0.y
1594bf215546Sopenharmony_ci				:3:0006:0006[6382800ax_0000100cx] mad.f32 r2.z, c3.x, r1.y, r0.x
1595bf215546Sopenharmony_ci				:2:0007:0007[40700000x_10010002x] mul.f r0.x, r0.z, c0.y
1596bf215546Sopenharmony_ci				:3:0008:0008[6382800dx_0001100fx] mad.f32 r3.y, c3.w, r1.y, r0.y
1597bf215546Sopenharmony_ci				:3:0009:0009[63818000x_00001005x] mad.f32 r0.x, c1.y, r0.w, r0.x
1598bf215546Sopenharmony_ci				:1:0010:0010[20244001x_00000010x] mov.f32f32 r0.y, c4.x
1599bf215546Sopenharmony_ci				:3:0011:0011[63820000x_00001009x] mad.f32 r0.x, c2.y, r1.x, r0.x
1600bf215546Sopenharmony_ci				:0:0012:0012[00000000x_00000000x] nop
1601bf215546Sopenharmony_ci				:3:0013:0013[6382800bx_0000100dx] mad.f32 r2.w, c3.y, r1.y, r0.x
1602bf215546Sopenharmony_ci				:2:0014:0014[40700000x_10020002x] mul.f r0.x, r0.z, c0.z
1603bf215546Sopenharmony_ci				:2:0015:0015[40100001x_0001101cx] add.f r0.y, c7.x, r0.y
1604bf215546Sopenharmony_ci				:3:0016:0016[63818000x_00001006x] mad.f32 r0.x, c1.z, r0.w, r0.x
1605bf215546Sopenharmony_ci				:1:0017:0017[20244002x_00000011x] mov.f32f32 r0.z, c4.y
1606bf215546Sopenharmony_ci				:3:0018:0018[63820000x_0000100ax] mad.f32 r0.x, c2.z, r1.x, r0.x
1607bf215546Sopenharmony_ci				:1:0019:0019[20244004x_00000013x] mov.f32f32 r1.x, c4.w
1608bf215546Sopenharmony_ci				:3:0020:0020[6382800cx_0000100ex] mad.f32 r3.x, c3.z, r1.y, r0.x
1609bf215546Sopenharmony_ci				:2:0021:0021[40700000x_00070007x] mul.f r0.x, r1.w, r1.w
1610bf215546Sopenharmony_ci				:2:0022:0022[40100002x_0002101dx] add.f r0.z, c7.y, r0.z
1611bf215546Sopenharmony_ci				:3:0023:0023[63830000x_00000006x] mad.f32 r0.x, r1.z, r1.z, r0.x
1612bf215546Sopenharmony_ci				:2:0024:0024[40500411x_00041013x] (sat)max.f r4.y, c4.w, r1.x
1613bf215546Sopenharmony_ci				:3:0025:0025[63840000x_00000008x] mad.f32 r0.x, r2.x, r2.x, r0.x
1614bf215546Sopenharmony_ci				:1:0026:0026[20244003x_00000012x] mov.f32f32 r0.w, c4.z
1615bf215546Sopenharmony_ci				:0:0027:0027[00000200x_00000000x] (rpt2)nop
1616bf215546Sopenharmony_ci				:2:0028:0030[40100003x_0003101ex] add.f r0.w, c7.z, r0.w
1617bf215546Sopenharmony_ci				:0:0029:0031[00000000x_00000000x] nop
1618bf215546Sopenharmony_ci				:4:0030:0032[80300000x_00000000x] rsq r0.x, r0.x
1619bf215546Sopenharmony_ci				:2:0031:0033[40701004x_00000007x] (ss)mul.f r1.x, r1.w, r0.x
1620bf215546Sopenharmony_ci				:0:0032:0034[00000200x_00000000x] (rpt2)nop
1621bf215546Sopenharmony_ci				:2:0033:0037[40700004x_10150004x] mul.f r1.x, r1.x, c5.y
1622bf215546Sopenharmony_ci				:2:0034:0038[40700005x_00000006x] mul.f r1.y, r1.z, r0.x
1623bf215546Sopenharmony_ci				:0:0035:0039[00000200x_00000000x] (rpt2)nop
1624bf215546Sopenharmony_ci				:3:0036:0042[63828004x_00041014x] mad.f32 r1.x, c5.x, r1.y, r1.x
1625bf215546Sopenharmony_ci				:2:0037:0043[40700000x_00000008x] mul.f r0.x, r2.x, r0.x
1626bf215546Sopenharmony_ci				:0:0038:0044[00000200x_00000000x] (rpt2)nop
1627bf215546Sopenharmony_ci				:3:0039:0047[63800000x_00041016x] mad.f32 r0.x, c5.z, r0.x, r1.x
1628bf215546Sopenharmony_ci				:0:0040:0048[00000200x_00000000x] (rpt2)nop
1629bf215546Sopenharmony_ci				:2:0041:0051[40b00004x_00001034x] cmps.f.lt r1.x, c13.x, r0.x
1630bf215546Sopenharmony_ci				:2:0042:0052[40500000x_00001034x] max.f r0.x, c13.x, r0.x
1631bf215546Sopenharmony_ci				:0:0043:0053[00000100x_00000000x] (rpt1)nop
1632bf215546Sopenharmony_ci				:1:0044:0055[200c4004x_00000004x] cov.u32f32 r1.x, r1.x
1633bf215546Sopenharmony_ci				:3:0045:0056[63800001x_00011020x] mad.f32 r0.y, c8.x, r0.x, r0.y
1634bf215546Sopenharmony_ci				:3:0046:0057[63800002x_00021021x] mad.f32 r0.z, c8.y, r0.x, r0.z
1635bf215546Sopenharmony_ci				:3:0047:0058[63800000x_00031022x] mad.f32 r0.x, c8.z, r0.x, r0.w
1636bf215546Sopenharmony_ci				:3:0048:0059[6382040ex_00011024x] (sat)mad.f32 r3.z, c9.x, r1.x, r0.y
1637bf215546Sopenharmony_ci				:3:0049:0060[6382040fx_00021025x] (sat)mad.f32 r3.w, c9.y, r1.x, r0.z
1638bf215546Sopenharmony_ci				:3:0050:0061[63820410x_00001026x] (sat)mad.f32 r4.x, c9.z, r1.x, r0.x
1639bf215546Sopenharmony_ci				:0:0051:0062[03000000x_00000000x] end
1640bf215546Sopenharmony_ci				:0:0052:0063[00000000x_00000000x] nop
1641bf215546Sopenharmony_ci				:0:0053:0064[00000000x_00000000x] nop
1642bf215546Sopenharmony_ci				:0:0054:0065[00000000x_00000000x] nop
1643bf215546Sopenharmony_ci				:0:0055:0066[00000000x_00000000x] nop
1644bf215546Sopenharmony_ci				Stats:
1645bf215546Sopenharmony_ci				- shaderdb: 67 instr, 23 nops, 44 non-nops, 4 mov, 1 cov
1646bf215546Sopenharmony_ci				- shaderdb: 0 last-baryf, 0 half, 5 full, 13 constlen
1647bf215546Sopenharmony_ci				- shaderdb: 24 cat0, 5 cat1, 15 cat2, 22 cat3, 1 cat4, 0 cat5, 0 cat6, 0 cat7
1648bf215546Sopenharmony_ci				- shaderdb: 10 sstall, 1 (ss), 0 (sy)
1649bf215546Sopenharmony_ci109cee34:			0000: c0813000 01200000 00000000 10000002 40700000 10030002 40700001 00001004
1650bf215546Sopenharmony_ci109cee54:			0020: 63818000 00011007 63818001 00001008 63820000 0001100b 63820001 0000100c
1651bf215546Sopenharmony_ci109cee74:			0040: 6382800a 10010002 40700000 0001100f 6382800d 00001005 63818000 00000010
1652bf215546Sopenharmony_ci109cee94:			0060: 20244001 00001009 63820000 00000000 00000000 0000100d 6382800b 10020002
1653bf215546Sopenharmony_ci109ceeb4:			0080: 40700000 0001101c 40100001 00001006 63818000 00000011 20244002 0000100a
1654bf215546Sopenharmony_ci109ceed4:			00a0: 63820000 00000013 20244004 0000100e 6382800c 00070007 40700000 0002101d
1655bf215546Sopenharmony_ci109ceef4:			00c0: 40100002 00000006 63830000 00041013 40500411 00000008 63840000 00000012
1656bf215546Sopenharmony_ci109cef14:			00e0: 20244003 00000000 00000200 0003101e 40100003 00000000 00000000 00000000
1657bf215546Sopenharmony_ci109cef34:			0100: 80300000 00000007 40701004 00000000 00000200 10150004 40700004 00000006
1658bf215546Sopenharmony_ci109cef54:			0120: 40700005 00000000 00000200 00041014 63828004 00000008 40700000 00000000
1659bf215546Sopenharmony_ci109cef74:			0140: 00000200 00041016 63800000 00000000 00000200 00001034 40b00004 00001034
1660bf215546Sopenharmony_ci109cef94:			0160: 40500000 00000000 00000100 00000004 200c4004 00011020 63800001 00021021
1661bf215546Sopenharmony_ci109cefb4:			0180: 63800002 00031022 63800000 00011024 6382040e 00021025 6382040f 00001026
1662bf215546Sopenharmony_ci109cefd4:			01a0: 63820410 00000000 03000000 00000000 00000000 00000000 00000000 00000000
1663bf215546Sopenharmony_ci*
1664bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (35 dwords)
1665bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
1666bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
1667bf215546Sopenharmony_ci				:0:0000:0000[00000000x_00000000x] nop
1668bf215546Sopenharmony_ci				:6:0001:0001[c7c60000x_01c00000x] ldlv.u32 r0.x, l[0], 1
1669bf215546Sopenharmony_ci				:6:0002:0002[c7c60001x_01c00002x] ldlv.u32 r0.y, l[1], 1
1670bf215546Sopenharmony_ci				:6:0003:0003[c7c60002x_01c00004x] ldlv.u32 r0.z, l[2], 1
1671bf215546Sopenharmony_ci				:6:0004:0004[c7c60003x_01c00006x] ldlv.u32 r0.w, l[3], 1
1672bf215546Sopenharmony_ci				:2:0005:0005[473090fcx_00002000x] (ss)bary.f (ei)r63.x, 0, r0.x
1673bf215546Sopenharmony_ci				:0:0006:0006[03000000x_00000000x] end
1674bf215546Sopenharmony_ci				:0:0007:0007[00000000x_00000000x] nop
1675bf215546Sopenharmony_ci				:0:0008:0008[00000000x_00000000x] nop
1676bf215546Sopenharmony_ci				:0:0009:0009[00000000x_00000000x] nop
1677bf215546Sopenharmony_ci				:0:0010:0010[00000000x_00000000x] nop
1678bf215546Sopenharmony_ci				Stats:
1679bf215546Sopenharmony_ci				- shaderdb: 11 instr, 5 nops, 6 non-nops, 0 mov, 0 cov
1680bf215546Sopenharmony_ci				- shaderdb: 5 last-baryf, 0 half, 1 full, 0 constlen
1681bf215546Sopenharmony_ci				- shaderdb: 6 cat0, 0 cat1, 1 cat2, 0 cat3, 0 cat4, 0 cat5, 4 cat6, 0 cat7
1682bf215546Sopenharmony_ci				- shaderdb: 0 sstall, 1 (ss), 0 (sy)
1683bf215546Sopenharmony_ci109cf040:			0000: c0213000 00700000 00000000 00000000 00000000 01c00000 c7c60000 01c00002
1684bf215546Sopenharmony_ci109cf060:			0020: c7c60001 01c00004 c7c60002 01c00006 c7c60003 00002000 473090fc 00000000
1685bf215546Sopenharmony_ci109cf080:			0040: 03000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
1686bf215546Sopenharmony_ci*
1687bf215546Sopenharmony_cit3			opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
1688bf215546Sopenharmony_ci109cf0cc:			0000: c0002600 00000000
1689bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (51 dwords)
1690bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
1691bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
1692bf215546Sopenharmony_ci109cf0e0:				4.330127 0.855050 0.555273 0.469846 0.000000 4.698463 -0.404206 -0.342020
1693bf215546Sopenharmony_ci109cf100:				2.500000 -1.480991 -0.961761 -0.813798 -12.990380 -11.962078 35.506226 39.274502
1694bf215546Sopenharmony_ci109cf120:				0.160000 0.020000 0.000000 1.000000 0.039740 0.662886 0.747665 0.000000
1695bf215546Sopenharmony_ci109cf140:				1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000
1696bf215546Sopenharmony_ci109cf160:				0.800000 0.100000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000
1697bf215546Sopenharmony_ci109cf180:				0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000
1698bf215546Sopenharmony_ci109cf0e0:				0000: 408a9066 3f5ae494 3f0e265d 3ef08fb2 00000000 409659cf becef409 beaf1d43
1699bf215546Sopenharmony_ci109cf100:				0020: 40200000 bfbd9119 bf7635f5 bf50550b c14fd899 c13f64ac 420e0660 421d1917
1700bf215546Sopenharmony_ci109cf120:				0040: 3e23d70b 3ca3d70b 00000000 3f800000 3d22c66e 3f29b2e7 3f3f66f5 00000000
1701bf215546Sopenharmony_ci109cf140:				0060: 3f800000 00000000 00000000 00000000 00000000 00000000 00000000 3f800000
1702bf215546Sopenharmony_ci109cf160:				0080: 3f4ccccd 3dcccccd 00000000 3f800000 00000000 00000000 00000000 3f800000
1703bf215546Sopenharmony_ci109cf180:				00a0: 00000000 00000000 00000000 3f800000 02020000 02020202 02020202 00000202
1704bf215546Sopenharmony_ci109cf0d4:			0000: c0313000 03200000 00000001 408a9066 3f5ae494 3f0e265d 3ef08fb2 00000000
1705bf215546Sopenharmony_ci109cf0f4:			0020: 409659cf becef409 beaf1d43 40200000 bfbd9119 bf7635f5 bf50550b c14fd899
1706bf215546Sopenharmony_ci109cf114:			0040: c13f64ac 420e0660 421d1917 3e23d70b 3ca3d70b 00000000 3f800000 3d22c66e
1707bf215546Sopenharmony_ci109cf134:			0060: 3f29b2e7 3f3f66f5 00000000 3f800000 00000000 00000000 00000000 00000000
1708bf215546Sopenharmony_ci109cf154:			0080: 00000000 00000000 3f800000 3f4ccccd 3dcccccd 00000000 3f800000 00000000
1709bf215546Sopenharmony_ci109cf174:			00a0: 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000 02020000
1710bf215546Sopenharmony_ci109cf194:			00c0: 02020202 02020202 00000202
1711bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (7 dwords)
1712bf215546Sopenharmony_ci				{ DST_OFF = 13 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 1 }
1713bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
1714bf215546Sopenharmony_ci109cf1ac:				0.000000 -28026765312.000000 -28026765312.000000 -28026765312.000000
1715bf215546Sopenharmony_ci109cf1ac:				0000: 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
1716bf215546Sopenharmony_ci109cf1a0:			0000: c0053000 0060000d 00000001 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
1717bf215546Sopenharmony_cit0			write VFD_FETCH[0].INSTR_0 (220a)
1718bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 | SWITCHNEXT }
1719bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_1: 0x107cb000
1720bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
1721bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
1722bf215546Sopenharmony_ci109cf1bc:			0000: 0003220a 00080c0b 107cb000 00100000 00000001
1723bf215546Sopenharmony_cit0			write VFD_DECODE[0].INSTR (228a)
1724bf215546Sopenharmony_ci				VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID | SWITCHNEXT }
1725bf215546Sopenharmony_ci109cf1d0:			0000: 0000228a 6c0020df
1726bf215546Sopenharmony_cit0			write VFD_FETCH[0x1].INSTR_0 (220e)
1727bf215546Sopenharmony_ci				VFD_FETCH[0x1].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 }
1728bf215546Sopenharmony_ci				VFD_FETCH[0x1].INSTR_1: 0x107cb00c
1729bf215546Sopenharmony_ci				VFD_FETCH[0x1].INSTR_2: { SIZE = 0xffff4 }
1730bf215546Sopenharmony_ci				VFD_FETCH[0x1].INSTR_3: { STEPRATE = 1 }
1731bf215546Sopenharmony_ci109cf1d8:			0000: 0003220e 00000c0b 107cb00c 000ffff4 00000001
1732bf215546Sopenharmony_cit0			write VFD_DECODE[0x1].INSTR (228b)
1733bf215546Sopenharmony_ci				VFD_DECODE[0x1].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r1.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
1734bf215546Sopenharmony_ci109cf1ec:			0000: 0000228b 2c0060df
1735bf215546Sopenharmony_cit0			write VFD_CONTROL_0 (2200)
1736bf215546Sopenharmony_ci				VFD_CONTROL_0: { TOTALATTRTOVS = 8 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 2 | STRMFETCHINSTRCNT = 2 | 0xa0000 }
1737bf215546Sopenharmony_ci				VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
1738bf215546Sopenharmony_ci				VFD_CONTROL_2: 0
1739bf215546Sopenharmony_ci				VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
1740bf215546Sopenharmony_ci				VFD_CONTROL_4: 0
1741bf215546Sopenharmony_ci109cf1f4:			0000: 00042200 082a0008 fcfc0081 00000000 0000fc00 00000000
1742bf215546Sopenharmony_cit0			write UCHE_INVALIDATE0 (0e8a)
1743bf215546Sopenharmony_ci				UCHE_INVALIDATE0: 0
1744bf215546Sopenharmony_ci				UCHE_INVALIDATE1: 0x12
1745bf215546Sopenharmony_ci109cf20c:			0000: 00010e8a 00000000 00000012
1746bf215546Sopenharmony_cit0			write VFD_INDEX_OFFSET (2208)
1747bf215546Sopenharmony_ci				VFD_INDEX_OFFSET: 0
1748bf215546Sopenharmony_ci				UNKNOWN_2209: 0
1749bf215546Sopenharmony_ci109cf218:			0000: 00012208 00000000 00000000
1750bf215546Sopenharmony_cit0			write PC_RESTART_INDEX (21c6)
1751bf215546Sopenharmony_ci				PC_RESTART_INDEX: 0xffffffff
1752bf215546Sopenharmony_ci109cf224:			0000: 000021c6 ffffffff
1753bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
1754bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x20
1755bf215546Sopenharmony_ci				:0,31,115,32
1756bf215546Sopenharmony_ci109cf22c:			0000: 0000057f 00000020
1757bf215546Sopenharmony_cit3			opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
1758bf215546Sopenharmony_ci				{ 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 }
1759bf215546Sopenharmony_ci				{ NUM_INSTANCES = 1 }
1760bf215546Sopenharmony_ci				{ NUM_INDICES = 480 }
1761bf215546Sopenharmony_ci				{ FIRST_INDX = 0 }
1762bf215546Sopenharmony_ci				{ INDX_BASE = 0x10bd05a0 }
1763bf215546Sopenharmony_ci				{ INDX_SIZE = 960 }
1764bf215546Sopenharmony_ci			draw[5] register values
1765bf215546Sopenharmony_ci!+	0000001f			CP_SCRATCH[0x5].REG: 0x1f
1766bf215546Sopenharmony_ci			:0,31,115,32
1767bf215546Sopenharmony_ci!+	00000020			CP_SCRATCH[0x7].REG: 0x20
1768bf215546Sopenharmony_ci			:0,31,115,32
1769bf215546Sopenharmony_ci +	00000000			UCHE_INVALIDATE0: 0
1770bf215546Sopenharmony_ci +	00000012			UCHE_INVALIDATE1: 0x12
1771bf215546Sopenharmony_ci +	00000000			GRAS_CNTL: { 0 }
1772bf215546Sopenharmony_ci +	00000000			GRAS_ALPHA_CONTROL: { 0 }
1773bf215546Sopenharmony_ci +	00000000			RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
1774bf215546Sopenharmony_ci +	00000001			RB_FS_OUTPUT_REG: { MRT = 1 }
1775bf215546Sopenharmony_ci +	80000016			RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_READ_ENABLE }
1776bf215546Sopenharmony_ci +	42001004			VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
1777bf215546Sopenharmony_ci +	00040400			VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
1778bf215546Sopenharmony_ci +	00000055			VPC_VARYING_INTERP[0].MODE: 0x55
1779bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x1].MODE: 0
1780bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x2].MODE: 0
1781bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x3].MODE: 0
1782bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x4].MODE: 0
1783bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x5].MODE: 0
1784bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x6].MODE: 0
1785bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x7].MODE: 0
1786bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0].MODE: 0
1787bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x1].MODE: 0
1788bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x2].MODE: 0
1789bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x3].MODE: 0
1790bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x4].MODE: 0
1791bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x5].MODE: 0
1792bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x6].MODE: 0
1793bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x7].MODE: 0
1794bf215546Sopenharmony_ci +	02000001			PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
1795bf215546Sopenharmony_ci +	00000012			PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
1796bf215546Sopenharmony_ci +	ffffffff			PC_RESTART_INDEX: 0xffffffff
1797bf215546Sopenharmony_ci!+	082a0008			VFD_CONTROL_0: { TOTALATTRTOVS = 8 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 2 | STRMFETCHINSTRCNT = 2 | 0xa0000 }
1798bf215546Sopenharmony_ci +	fcfc0081			VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
1799bf215546Sopenharmony_ci +	00000000			VFD_CONTROL_2: 0
1800bf215546Sopenharmony_ci +	0000fc00			VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
1801bf215546Sopenharmony_ci +	00000000			VFD_CONTROL_4: 0
1802bf215546Sopenharmony_ci +	00000000			VFD_INDEX_OFFSET: 0
1803bf215546Sopenharmony_ci +	00000000			UNKNOWN_2209: 0
1804bf215546Sopenharmony_ci!+	00080c0b			VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 | SWITCHNEXT }
1805bf215546Sopenharmony_ci +	107cb000			VFD_FETCH[0].INSTR_1: 0x107cb000
1806bf215546Sopenharmony_ci +	00100000			VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
1807bf215546Sopenharmony_ci +	00000001			VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
1808bf215546Sopenharmony_ci!+	00000c0b			VFD_FETCH[0x1].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 }
1809bf215546Sopenharmony_ci!+	107cb00c			VFD_FETCH[0x1].INSTR_1: 0x107cb00c
1810bf215546Sopenharmony_ci!+	000ffff4			VFD_FETCH[0x1].INSTR_2: { SIZE = 0xffff4 }
1811bf215546Sopenharmony_ci!+	00000001			VFD_FETCH[0x1].INSTR_3: { STEPRATE = 1 }
1812bf215546Sopenharmony_ci!+	6c0020df			VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID | SWITCHNEXT }
1813bf215546Sopenharmony_ci!+	2c0060df			VFD_DECODE[0x1].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r1.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
1814bf215546Sopenharmony_ci +	00140010			SP_SP_CTRL_REG: { 0x140010 }
1815bf215546Sopenharmony_ci +	000005ff			SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
1816bf215546Sopenharmony_ci!+	00201400			SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
1817bf215546Sopenharmony_ci!+	08000042			SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
1818bf215546Sopenharmony_ci!+	0010fc0a			SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
1819bf215546Sopenharmony_ci!+	00001e0e			SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
1820bf215546Sopenharmony_ci +	08080808			SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
1821bf215546Sopenharmony_ci +	00000000			SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
1822bf215546Sopenharmony_ci!+	10cd5000			SP_VS_OBJ_START: 0x10cd5000
1823bf215546Sopenharmony_ci +	00000004			SP_VS_LENGTH_REG: 4
1824bf215546Sopenharmony_ci +	00340402			SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
1825bf215546Sopenharmony_ci +	8010003e			SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
1826bf215546Sopenharmony_ci +	7e420000			SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
1827bf215546Sopenharmony_ci +	10cd2000			SP_FS_OBJ_START: 0x10cd2000
1828bf215546Sopenharmony_ci +	00000001			SP_FS_LENGTH_REG: 1
1829bf215546Sopenharmony_ci +	0000fc01			SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
1830bf215546Sopenharmony_ci +	0001a000			SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
1831bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
1832bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
1833bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
1834bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
1835bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
1836bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
1837bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
1838bf215546Sopenharmony_ci +	7e420000			SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
1839bf215546Sopenharmony_ci +	7e420000			SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
1840bf215546Sopenharmony_ci +	7e420000			SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
1841bf215546Sopenharmony_ci +	28000250			HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
1842bf215546Sopenharmony_ci +	fcfc0100			HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
1843bf215546Sopenharmony_ci +	fff3f3f0			HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
1844bf215546Sopenharmony_ci +	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 }
1845bf215546Sopenharmony_ci +	00fcfcfc			HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
1846bf215546Sopenharmony_ci +	04000042			HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
1847bf215546Sopenharmony_ci +	017e423e			HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
1848bf215546Sopenharmony_ci +	007e4200			HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
1849bf215546Sopenharmony_ci +	007e4200			HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
1850bf215546Sopenharmony_ci +	007e4200			HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
1851bf215546Sopenharmony_ci +	00000003			HLSQ_UPDATE_CONTROL: 0x3
1852bf215546Sopenharmony_ci109cf234:			0000: c0053800 00000404 00000001 000001e0 00000000 10bd05a0 000003c0
1853bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
1854bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x21
1855bf215546Sopenharmony_ci				:0,31,115,33
1856bf215546Sopenharmony_ci109cf250:			0000: 0000057f 00000021
1857bf215546Sopenharmony_cit0			write CP_SCRATCH[0x5].REG (057d)
1858bf215546Sopenharmony_ci				CP_SCRATCH[0x5].REG: 0x25
1859bf215546Sopenharmony_ci				:0,37,115,33
1860bf215546Sopenharmony_ci109cf258:			0000: 0000057d 00000025
1861bf215546Sopenharmony_cit0			write RB_DEPTH_CONTROL (2101)
1862bf215546Sopenharmony_ci				RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_READ_ENABLE }
1863bf215546Sopenharmony_ci109cf260:			0000: 00002101 80000016
1864bf215546Sopenharmony_cit0			write GRAS_ALPHA_CONTROL (2073)
1865bf215546Sopenharmony_ci				GRAS_ALPHA_CONTROL: { 0 }
1866bf215546Sopenharmony_ci109cf268:			0000: 00002073 00000000
1867bf215546Sopenharmony_cit0			write GRAS_SU_MODE_CONTROL (2078)
1868bf215546Sopenharmony_ci				GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
1869bf215546Sopenharmony_ci109cf270:			0000: 00002078 00100012
1870bf215546Sopenharmony_cit0			write GRAS_SU_POINT_MINMAX (2070)
1871bf215546Sopenharmony_ci				GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
1872bf215546Sopenharmony_ci				GRAS_SU_POINT_SIZE: 1.000000
1873bf215546Sopenharmony_ci109cf278:			0000: 00012070 00100010 00000010
1874bf215546Sopenharmony_cit0			write GRAS_SU_POLY_OFFSET_SCALE (2074)
1875bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_SCALE: 0.000000
1876bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
1877bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
1878bf215546Sopenharmony_ci109cf284:			0000: 00022074 00000000 00000000 00000000
1879bf215546Sopenharmony_cit0			write GRAS_CL_CLIP_CNTL (2000)
1880bf215546Sopenharmony_ci				GRAS_CL_CLIP_CNTL: { 0x80000 }
1881bf215546Sopenharmony_ci109cf294:			0000: 00002000 00080000
1882bf215546Sopenharmony_cit0			write PC_PRIM_VTX_CNTL (21c4)
1883bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
1884bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
1885bf215546Sopenharmony_ci109cf29c:			0000: 000121c4 02000001 00000012
1886bf215546Sopenharmony_cit0			write GRAS_SC_WINDOW_SCISSOR_BR (209c)
1887bf215546Sopenharmony_ci				GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
1888bf215546Sopenharmony_ci				GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
1889bf215546Sopenharmony_ci109cf2a8:			0000: 0001209c 012b012b 00000000
1890bf215546Sopenharmony_cit0			write RB_VPORT_Z_CLAMP[0].MIN (2120)
1891bf215546Sopenharmony_ci				RB_VPORT_Z_CLAMP[0].MIN: 0
1892bf215546Sopenharmony_ci				RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
1893bf215546Sopenharmony_ci109cf2b4:			0000: 00012120 00000000 00ffffff
1894bf215546Sopenharmony_cit0			write HLSQ_UPDATE_CONTROL (23db)
1895bf215546Sopenharmony_ci				HLSQ_UPDATE_CONTROL: 0x3
1896bf215546Sopenharmony_ci109cf2c0:			0000: 000023db 00000003
1897bf215546Sopenharmony_cit0			write HLSQ_CONTROL_0_REG (23c0)
1898bf215546Sopenharmony_ci				HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
1899bf215546Sopenharmony_ci				HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
1900bf215546Sopenharmony_ci				HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
1901bf215546Sopenharmony_ci				HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r0.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
1902bf215546Sopenharmony_ci				HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
1903bf215546Sopenharmony_ci109cf2c8:			0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfc00 00fcfcfc
1904bf215546Sopenharmony_cit0			write HLSQ_VS_CONTROL_REG (23c5)
1905bf215546Sopenharmony_ci				HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
1906bf215546Sopenharmony_ci				HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
1907bf215546Sopenharmony_ci				HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
1908bf215546Sopenharmony_ci				HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
1909bf215546Sopenharmony_ci				HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
1910bf215546Sopenharmony_ci109cf2e0:			0000: 000423c5 04000042 017e423e 007e4200 007e4200 007e4200
1911bf215546Sopenharmony_cit0			write SP_SP_CTRL_REG (22c0)
1912bf215546Sopenharmony_ci				SP_SP_CTRL_REG: { 0x140010 }
1913bf215546Sopenharmony_ci109cf2f8:			0000: 000022c0 00140010
1914bf215546Sopenharmony_cit0			write SP_INSTR_CACHE_CTRL (22c1)
1915bf215546Sopenharmony_ci				SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
1916bf215546Sopenharmony_ci109cf300:			0000: 000022c1 000005ff
1917bf215546Sopenharmony_cit0			write SP_VS_LENGTH_REG (22e5)
1918bf215546Sopenharmony_ci				SP_VS_LENGTH_REG: 4
1919bf215546Sopenharmony_ci109cf308:			0000: 000022e5 00000004
1920bf215546Sopenharmony_cit0			write SP_VS_CTRL_REG0 (22c4)
1921bf215546Sopenharmony_ci				SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
1922bf215546Sopenharmony_ci				SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
1923bf215546Sopenharmony_ci				SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
1924bf215546Sopenharmony_ci109cf310:			0000: 000222c4 00201400 08000042 0010fc0a
1925bf215546Sopenharmony_cit0			write SP_VS_OUT[0].REG (22c7)
1926bf215546Sopenharmony_ci				SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
1927bf215546Sopenharmony_ci109cf320:			0000: 000022c7 00001e0e
1928bf215546Sopenharmony_cit0			write SP_VS_VPC_DST[0].REG (22d8)
1929bf215546Sopenharmony_ci				SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
1930bf215546Sopenharmony_ci109cf328:			0000: 000022d8 08080808
1931bf215546Sopenharmony_cit0			write SP_VS_OBJ_OFFSET_REG (22e0)
1932bf215546Sopenharmony_ci				SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
1933bf215546Sopenharmony_ci				SP_VS_OBJ_START: 0x10cd5000
1934bf215546Sopenharmony_ci109cf330:			0000: 000122e0 00000000 10cd5000
1935bf215546Sopenharmony_cit0			write SP_FS_LENGTH_REG (22ef)
1936bf215546Sopenharmony_ci				SP_FS_LENGTH_REG: 1
1937bf215546Sopenharmony_ci109cf33c:			0000: 000022ef 00000001
1938bf215546Sopenharmony_cit0			write SP_FS_CTRL_REG0 (22e8)
1939bf215546Sopenharmony_ci				SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 2 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
1940bf215546Sopenharmony_ci				SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
1941bf215546Sopenharmony_ci109cf344:			0000: 000122e8 00340802 8010003e
1942bf215546Sopenharmony_cit0			write SP_FS_OBJ_OFFSET_REG (22ea)
1943bf215546Sopenharmony_ci				SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
1944bf215546Sopenharmony_ci				SP_FS_OBJ_START: 0x108cb000
1945bf215546Sopenharmony_ci109cf350:			0000: 000122ea 7e420000 108cb000
1946bf215546Sopenharmony_cit0			write SP_HS_OBJ_OFFSET_REG (230d)
1947bf215546Sopenharmony_ci				SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
1948bf215546Sopenharmony_ci109cf35c:			0000: 0000230d 7e420000
1949bf215546Sopenharmony_cit0			write SP_DS_OBJ_OFFSET_REG (2334)
1950bf215546Sopenharmony_ci				SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
1951bf215546Sopenharmony_ci109cf364:			0000: 00002334 7e420000
1952bf215546Sopenharmony_cit0			write SP_GS_OBJ_OFFSET_REG (235b)
1953bf215546Sopenharmony_ci				SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
1954bf215546Sopenharmony_ci109cf36c:			0000: 0000235b 7e420000
1955bf215546Sopenharmony_cit0			write GRAS_CNTL (2003)
1956bf215546Sopenharmony_ci				GRAS_CNTL: { IJ_PERSP }
1957bf215546Sopenharmony_ci109cf374:			0000: 00002003 00000001
1958bf215546Sopenharmony_cit0			write RB_RENDER_CONTROL2 (20a3)
1959bf215546Sopenharmony_ci				RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 | IJ_PERSP_PIXEL }
1960bf215546Sopenharmony_ci109cf37c:			0000: 000020a3 00001000
1961bf215546Sopenharmony_cit0			write RB_FS_OUTPUT_REG (2100)
1962bf215546Sopenharmony_ci				RB_FS_OUTPUT_REG: { MRT = 1 }
1963bf215546Sopenharmony_ci109cf384:			0000: 00002100 00000001
1964bf215546Sopenharmony_cit0			write SP_FS_OUTPUT_REG (22f0)
1965bf215546Sopenharmony_ci				SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
1966bf215546Sopenharmony_ci109cf38c:			0000: 000022f0 0000fc01
1967bf215546Sopenharmony_cit0			write SP_FS_MRT[0].REG (22f1)
1968bf215546Sopenharmony_ci				SP_FS_MRT[0].REG: { REGID = r0.z | MRTFORMAT = RB4_R8G8B8A8_UNORM }
1969bf215546Sopenharmony_ci				SP_FS_MRT[0x1].REG: { REGID = r0.z | MRTFORMAT = 0 }
1970bf215546Sopenharmony_ci				SP_FS_MRT[0x2].REG: { REGID = r0.z | MRTFORMAT = 0 }
1971bf215546Sopenharmony_ci				SP_FS_MRT[0x3].REG: { REGID = r0.z | MRTFORMAT = 0 }
1972bf215546Sopenharmony_ci				SP_FS_MRT[0x4].REG: { REGID = r0.z | MRTFORMAT = 0 }
1973bf215546Sopenharmony_ci				SP_FS_MRT[0x5].REG: { REGID = r0.z | MRTFORMAT = 0 }
1974bf215546Sopenharmony_ci				SP_FS_MRT[0x6].REG: { REGID = r0.z | MRTFORMAT = 0 }
1975bf215546Sopenharmony_ci				SP_FS_MRT[0x7].REG: { REGID = r0.z | MRTFORMAT = 0 }
1976bf215546Sopenharmony_ci109cf394:			0000: 000722f1 0001a002 00000002 00000002 00000002 00000002 00000002 00000002
1977bf215546Sopenharmony_ci109cf3b4:			0020: 00000002
1978bf215546Sopenharmony_cit0			write VPC_ATTR (2140)
1979bf215546Sopenharmony_ci				VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
1980bf215546Sopenharmony_ci				VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
1981bf215546Sopenharmony_ci109cf3b8:			0000: 00012140 42001004 00040400
1982bf215546Sopenharmony_cit0			write VPC_VARYING_INTERP[0].MODE (2142)
1983bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0].MODE: 0
1984bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x1].MODE: 0
1985bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x2].MODE: 0
1986bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x3].MODE: 0
1987bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x4].MODE: 0
1988bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x5].MODE: 0
1989bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x6].MODE: 0
1990bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x7].MODE: 0
1991bf215546Sopenharmony_ci109cf3c4:			0000: 00072142 00000000 00000000 00000000 00000000 00000000 00000000 00000000
1992bf215546Sopenharmony_ci*
1993bf215546Sopenharmony_cit0			write VPC_VARYING_PS_REPL[0].MODE (214a)
1994bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0].MODE: 0
1995bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x1].MODE: 0
1996bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x2].MODE: 0
1997bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x3].MODE: 0
1998bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x4].MODE: 0
1999bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x5].MODE: 0
2000bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x6].MODE: 0
2001bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x7].MODE: 0
2002bf215546Sopenharmony_ci109cf3e8:			0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
2003bf215546Sopenharmony_ci*
2004bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (131 dwords)
2005bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 4 }
2006bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
2007bf215546Sopenharmony_ci				:2:0000:0000[40700000x_10000002x] mul.f r0.x, r0.z, c0.x
2008bf215546Sopenharmony_ci				:2:0001:0001[40700001x_10030002x] mul.f r0.y, r0.z, c0.w
2009bf215546Sopenharmony_ci				:3:0002:0002[63818000x_00001004x] mad.f32 r0.x, c1.x, r0.w, r0.x
2010bf215546Sopenharmony_ci				:3:0003:0003[63818001x_00011007x] mad.f32 r0.y, c1.w, r0.w, r0.y
2011bf215546Sopenharmony_ci				:3:0004:0004[63820000x_00001008x] mad.f32 r0.x, c2.x, r1.x, r0.x
2012bf215546Sopenharmony_ci				:3:0005:0005[63820001x_0001100bx] mad.f32 r0.y, c2.w, r1.x, r0.y
2013bf215546Sopenharmony_ci				:3:0006:0006[6382800ax_0000100cx] mad.f32 r2.z, c3.x, r1.y, r0.x
2014bf215546Sopenharmony_ci				:2:0007:0007[40700000x_10010002x] mul.f r0.x, r0.z, c0.y
2015bf215546Sopenharmony_ci				:3:0008:0008[6382800dx_0001100fx] mad.f32 r3.y, c3.w, r1.y, r0.y
2016bf215546Sopenharmony_ci				:3:0009:0009[63818000x_00001005x] mad.f32 r0.x, c1.y, r0.w, r0.x
2017bf215546Sopenharmony_ci				:1:0010:0010[20244001x_00000010x] mov.f32f32 r0.y, c4.x
2018bf215546Sopenharmony_ci				:3:0011:0011[63820000x_00001009x] mad.f32 r0.x, c2.y, r1.x, r0.x
2019bf215546Sopenharmony_ci				:0:0012:0012[00000000x_00000000x] nop
2020bf215546Sopenharmony_ci				:3:0013:0013[6382800bx_0000100dx] mad.f32 r2.w, c3.y, r1.y, r0.x
2021bf215546Sopenharmony_ci				:2:0014:0014[40700000x_10020002x] mul.f r0.x, r0.z, c0.z
2022bf215546Sopenharmony_ci				:2:0015:0015[40100001x_0001101cx] add.f r0.y, c7.x, r0.y
2023bf215546Sopenharmony_ci				:3:0016:0016[63818000x_00001006x] mad.f32 r0.x, c1.z, r0.w, r0.x
2024bf215546Sopenharmony_ci				:1:0017:0017[20244002x_00000011x] mov.f32f32 r0.z, c4.y
2025bf215546Sopenharmony_ci				:3:0018:0018[63820000x_0000100ax] mad.f32 r0.x, c2.z, r1.x, r0.x
2026bf215546Sopenharmony_ci				:1:0019:0019[20244004x_00000013x] mov.f32f32 r1.x, c4.w
2027bf215546Sopenharmony_ci				:3:0020:0020[6382800cx_0000100ex] mad.f32 r3.x, c3.z, r1.y, r0.x
2028bf215546Sopenharmony_ci				:2:0021:0021[40700000x_00070007x] mul.f r0.x, r1.w, r1.w
2029bf215546Sopenharmony_ci				:2:0022:0022[40100002x_0002101dx] add.f r0.z, c7.y, r0.z
2030bf215546Sopenharmony_ci				:3:0023:0023[63830000x_00000006x] mad.f32 r0.x, r1.z, r1.z, r0.x
2031bf215546Sopenharmony_ci				:2:0024:0024[40500411x_00041013x] (sat)max.f r4.y, c4.w, r1.x
2032bf215546Sopenharmony_ci				:3:0025:0025[63840000x_00000008x] mad.f32 r0.x, r2.x, r2.x, r0.x
2033bf215546Sopenharmony_ci				:1:0026:0026[20244003x_00000012x] mov.f32f32 r0.w, c4.z
2034bf215546Sopenharmony_ci				:0:0027:0027[00000200x_00000000x] (rpt2)nop
2035bf215546Sopenharmony_ci				:2:0028:0030[40100003x_0003101ex] add.f r0.w, c7.z, r0.w
2036bf215546Sopenharmony_ci				:0:0029:0031[00000000x_00000000x] nop
2037bf215546Sopenharmony_ci				:4:0030:0032[80300000x_00000000x] rsq r0.x, r0.x
2038bf215546Sopenharmony_ci				:2:0031:0033[40701004x_00000007x] (ss)mul.f r1.x, r1.w, r0.x
2039bf215546Sopenharmony_ci				:0:0032:0034[00000200x_00000000x] (rpt2)nop
2040bf215546Sopenharmony_ci				:2:0033:0037[40700004x_10150004x] mul.f r1.x, r1.x, c5.y
2041bf215546Sopenharmony_ci				:2:0034:0038[40700005x_00000006x] mul.f r1.y, r1.z, r0.x
2042bf215546Sopenharmony_ci				:0:0035:0039[00000200x_00000000x] (rpt2)nop
2043bf215546Sopenharmony_ci				:3:0036:0042[63828004x_00041014x] mad.f32 r1.x, c5.x, r1.y, r1.x
2044bf215546Sopenharmony_ci				:2:0037:0043[40700000x_00000008x] mul.f r0.x, r2.x, r0.x
2045bf215546Sopenharmony_ci				:0:0038:0044[00000200x_00000000x] (rpt2)nop
2046bf215546Sopenharmony_ci				:3:0039:0047[63800000x_00041016x] mad.f32 r0.x, c5.z, r0.x, r1.x
2047bf215546Sopenharmony_ci				:0:0040:0048[00000200x_00000000x] (rpt2)nop
2048bf215546Sopenharmony_ci				:2:0041:0051[40b00004x_00001034x] cmps.f.lt r1.x, c13.x, r0.x
2049bf215546Sopenharmony_ci				:2:0042:0052[40500000x_00001034x] max.f r0.x, c13.x, r0.x
2050bf215546Sopenharmony_ci				:0:0043:0053[00000100x_00000000x] (rpt1)nop
2051bf215546Sopenharmony_ci				:1:0044:0055[200c4004x_00000004x] cov.u32f32 r1.x, r1.x
2052bf215546Sopenharmony_ci				:3:0045:0056[63800001x_00011020x] mad.f32 r0.y, c8.x, r0.x, r0.y
2053bf215546Sopenharmony_ci				:3:0046:0057[63800002x_00021021x] mad.f32 r0.z, c8.y, r0.x, r0.z
2054bf215546Sopenharmony_ci				:3:0047:0058[63800000x_00031022x] mad.f32 r0.x, c8.z, r0.x, r0.w
2055bf215546Sopenharmony_ci				:3:0048:0059[6382040ex_00011024x] (sat)mad.f32 r3.z, c9.x, r1.x, r0.y
2056bf215546Sopenharmony_ci				:3:0049:0060[6382040fx_00021025x] (sat)mad.f32 r3.w, c9.y, r1.x, r0.z
2057bf215546Sopenharmony_ci				:3:0050:0061[63820410x_00001026x] (sat)mad.f32 r4.x, c9.z, r1.x, r0.x
2058bf215546Sopenharmony_ci				:0:0051:0062[03000000x_00000000x] end
2059bf215546Sopenharmony_ci				:0:0052:0063[00000000x_00000000x] nop
2060bf215546Sopenharmony_ci				:0:0053:0064[00000000x_00000000x] nop
2061bf215546Sopenharmony_ci				:0:0054:0065[00000000x_00000000x] nop
2062bf215546Sopenharmony_ci				:0:0055:0066[00000000x_00000000x] nop
2063bf215546Sopenharmony_ci				Stats:
2064bf215546Sopenharmony_ci				- shaderdb: 67 instr, 23 nops, 44 non-nops, 4 mov, 1 cov
2065bf215546Sopenharmony_ci				- shaderdb: 0 last-baryf, 0 half, 5 full, 13 constlen
2066bf215546Sopenharmony_ci				- shaderdb: 24 cat0, 5 cat1, 15 cat2, 22 cat3, 1 cat4, 0 cat5, 0 cat6, 0 cat7
2067bf215546Sopenharmony_ci				- shaderdb: 10 sstall, 1 (ss), 0 (sy)
2068bf215546Sopenharmony_ci109cf40c:			0000: c0813000 01200000 00000000 10000002 40700000 10030002 40700001 00001004
2069bf215546Sopenharmony_ci109cf42c:			0020: 63818000 00011007 63818001 00001008 63820000 0001100b 63820001 0000100c
2070bf215546Sopenharmony_ci109cf44c:			0040: 6382800a 10010002 40700000 0001100f 6382800d 00001005 63818000 00000010
2071bf215546Sopenharmony_ci109cf46c:			0060: 20244001 00001009 63820000 00000000 00000000 0000100d 6382800b 10020002
2072bf215546Sopenharmony_ci109cf48c:			0080: 40700000 0001101c 40100001 00001006 63818000 00000011 20244002 0000100a
2073bf215546Sopenharmony_ci109cf4ac:			00a0: 63820000 00000013 20244004 0000100e 6382800c 00070007 40700000 0002101d
2074bf215546Sopenharmony_ci109cf4cc:			00c0: 40100002 00000006 63830000 00041013 40500411 00000008 63840000 00000012
2075bf215546Sopenharmony_ci109cf4ec:			00e0: 20244003 00000000 00000200 0003101e 40100003 00000000 00000000 00000000
2076bf215546Sopenharmony_ci109cf50c:			0100: 80300000 00000007 40701004 00000000 00000200 10150004 40700004 00000006
2077bf215546Sopenharmony_ci109cf52c:			0120: 40700005 00000000 00000200 00041014 63828004 00000008 40700000 00000000
2078bf215546Sopenharmony_ci109cf54c:			0140: 00000200 00041016 63800000 00000000 00000200 00001034 40b00004 00001034
2079bf215546Sopenharmony_ci109cf56c:			0160: 40500000 00000000 00000100 00000004 200c4004 00011020 63800001 00021021
2080bf215546Sopenharmony_ci109cf58c:			0180: 63800002 00031022 63800000 00011024 6382040e 00021025 6382040f 00001026
2081bf215546Sopenharmony_ci109cf5ac:			01a0: 63820410 00000000 03000000 00000000 00000000 00000000 00000000 00000000
2082bf215546Sopenharmony_ci*
2083bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (35 dwords)
2084bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
2085bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
2086bf215546Sopenharmony_ci				:2:0000:0000[47300002x_00002000x] bary.f r0.z, 0, r0.x
2087bf215546Sopenharmony_ci				:2:0001:0001[47300003x_00002001x] bary.f r0.w, 1, r0.x
2088bf215546Sopenharmony_ci				:2:0002:0002[47300004x_00002002x] bary.f r1.x, 2, r0.x
2089bf215546Sopenharmony_ci				:2:0003:0003[47308005x_00002003x] bary.f (ei)r1.y, 3, r0.x
2090bf215546Sopenharmony_ci				:0:0004:0004[03000000x_00000000x] end
2091bf215546Sopenharmony_ci				:0:0005:0005[00000000x_00000000x] nop
2092bf215546Sopenharmony_ci				:0:0006:0006[00000000x_00000000x] nop
2093bf215546Sopenharmony_ci				:0:0007:0007[00000000x_00000000x] nop
2094bf215546Sopenharmony_ci				:0:0008:0008[00000000x_00000000x] nop
2095bf215546Sopenharmony_ci				Stats:
2096bf215546Sopenharmony_ci				- shaderdb: 9 instr, 4 nops, 5 non-nops, 0 mov, 0 cov
2097bf215546Sopenharmony_ci				- shaderdb: 3 last-baryf, 0 half, 2 full, 0 constlen
2098bf215546Sopenharmony_ci				- shaderdb: 5 cat0, 0 cat1, 4 cat2, 0 cat3, 0 cat4, 0 cat5, 0 cat6, 0 cat7
2099bf215546Sopenharmony_ci				- shaderdb: 0 sstall, 0 (ss), 0 (sy)
2100bf215546Sopenharmony_ci109cf618:			0000: c0213000 00700000 00000000 00002000 47300002 00002001 47300003 00002002
2101bf215546Sopenharmony_ci109cf638:			0020: 47300004 00002003 47308005 00000000 03000000 00000000 00000000 00000000
2102bf215546Sopenharmony_ci*
2103bf215546Sopenharmony_cit3			opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
2104bf215546Sopenharmony_ci109cf6a4:			0000: c0002600 00000000
2105bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (51 dwords)
2106bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
2107bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
2108bf215546Sopenharmony_ci109cf6b8:				4.330127 0.855050 0.555273 0.469846 0.000000 4.698463 -0.404206 -0.342020
2109bf215546Sopenharmony_ci109cf6d8:				2.500000 -1.480991 -0.961761 -0.813798 -12.990380 -11.962078 35.506226 39.274502
2110bf215546Sopenharmony_ci109cf6f8:				0.160000 0.020000 0.000000 1.000000 0.039740 0.662886 0.747665 0.000000
2111bf215546Sopenharmony_ci109cf718:				1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000
2112bf215546Sopenharmony_ci109cf738:				0.800000 0.100000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000
2113bf215546Sopenharmony_ci109cf758:				0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000
2114bf215546Sopenharmony_ci109cf6b8:				0000: 408a9066 3f5ae494 3f0e265d 3ef08fb2 00000000 409659cf becef409 beaf1d43
2115bf215546Sopenharmony_ci109cf6d8:				0020: 40200000 bfbd9119 bf7635f5 bf50550b c14fd899 c13f64ac 420e0660 421d1917
2116bf215546Sopenharmony_ci109cf6f8:				0040: 3e23d70b 3ca3d70b 00000000 3f800000 3d22c66e 3f29b2e7 3f3f66f5 00000000
2117bf215546Sopenharmony_ci109cf718:				0060: 3f800000 00000000 00000000 00000000 00000000 00000000 00000000 3f800000
2118bf215546Sopenharmony_ci109cf738:				0080: 3f4ccccd 3dcccccd 00000000 3f800000 00000000 00000000 00000000 3f800000
2119bf215546Sopenharmony_ci109cf758:				00a0: 00000000 00000000 00000000 3f800000 02020000 02020202 02020202 00000202
2120bf215546Sopenharmony_ci109cf6ac:			0000: c0313000 03200000 00000001 408a9066 3f5ae494 3f0e265d 3ef08fb2 00000000
2121bf215546Sopenharmony_ci109cf6cc:			0020: 409659cf becef409 beaf1d43 40200000 bfbd9119 bf7635f5 bf50550b c14fd899
2122bf215546Sopenharmony_ci109cf6ec:			0040: c13f64ac 420e0660 421d1917 3e23d70b 3ca3d70b 00000000 3f800000 3d22c66e
2123bf215546Sopenharmony_ci109cf70c:			0060: 3f29b2e7 3f3f66f5 00000000 3f800000 00000000 00000000 00000000 00000000
2124bf215546Sopenharmony_ci109cf72c:			0080: 00000000 00000000 3f800000 3f4ccccd 3dcccccd 00000000 3f800000 00000000
2125bf215546Sopenharmony_ci109cf74c:			00a0: 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000 02020000
2126bf215546Sopenharmony_ci109cf76c:			00c0: 02020202 02020202 00000202
2127bf215546Sopenharmony_cit0			write VFD_INDEX_OFFSET (2208)
2128bf215546Sopenharmony_ci				VFD_INDEX_OFFSET: 0
2129bf215546Sopenharmony_ci				UNKNOWN_2209: 0
2130bf215546Sopenharmony_ci109cf778:			0000: 00012208 00000000 00000000
2131bf215546Sopenharmony_cit0			write PC_RESTART_INDEX (21c6)
2132bf215546Sopenharmony_ci				PC_RESTART_INDEX: 0xffffffff
2133bf215546Sopenharmony_ci109cf784:			0000: 000021c6 ffffffff
2134bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
2135bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x26
2136bf215546Sopenharmony_ci				:0,37,115,38
2137bf215546Sopenharmony_ci109cf78c:			0000: 0000057f 00000026
2138bf215546Sopenharmony_cit3			opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
2139bf215546Sopenharmony_ci				{ 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 }
2140bf215546Sopenharmony_ci				{ NUM_INSTANCES = 1 }
2141bf215546Sopenharmony_ci				{ NUM_INDICES = 120 }
2142bf215546Sopenharmony_ci				{ FIRST_INDX = 0 }
2143bf215546Sopenharmony_ci				{ INDX_BASE = 0x10bd0960 }
2144bf215546Sopenharmony_ci				{ INDX_SIZE = 240 }
2145bf215546Sopenharmony_ci			draw[6] register values
2146bf215546Sopenharmony_ci!+	00000025			CP_SCRATCH[0x5].REG: 0x25
2147bf215546Sopenharmony_ci			:0,37,115,38
2148bf215546Sopenharmony_ci!+	00000026			CP_SCRATCH[0x7].REG: 0x26
2149bf215546Sopenharmony_ci			:0,37,115,38
2150bf215546Sopenharmony_ci +	00080000			GRAS_CL_CLIP_CNTL: { 0x80000 }
2151bf215546Sopenharmony_ci!+	00000001			GRAS_CNTL: { IJ_PERSP }
2152bf215546Sopenharmony_ci +	00100010			GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
2153bf215546Sopenharmony_ci +	00000010			GRAS_SU_POINT_SIZE: 1.000000
2154bf215546Sopenharmony_ci +	00000000			GRAS_ALPHA_CONTROL: { 0 }
2155bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_SCALE: 0.000000
2156bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
2157bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
2158bf215546Sopenharmony_ci +	00100012			GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
2159bf215546Sopenharmony_ci +	012b012b			GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
2160bf215546Sopenharmony_ci +	00000000			GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
2161bf215546Sopenharmony_ci!+	00001000			RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 | IJ_PERSP_PIXEL }
2162bf215546Sopenharmony_ci +	00000001			RB_FS_OUTPUT_REG: { MRT = 1 }
2163bf215546Sopenharmony_ci +	80000016			RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_READ_ENABLE }
2164bf215546Sopenharmony_ci +	00000000			RB_VPORT_Z_CLAMP[0].MIN: 0
2165bf215546Sopenharmony_ci +	00ffffff			RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
2166bf215546Sopenharmony_ci +	42001004			VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
2167bf215546Sopenharmony_ci +	00040400			VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
2168bf215546Sopenharmony_ci!+	00000000			VPC_VARYING_INTERP[0].MODE: 0
2169bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x1].MODE: 0
2170bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x2].MODE: 0
2171bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x3].MODE: 0
2172bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x4].MODE: 0
2173bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x5].MODE: 0
2174bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x6].MODE: 0
2175bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x7].MODE: 0
2176bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0].MODE: 0
2177bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x1].MODE: 0
2178bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x2].MODE: 0
2179bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x3].MODE: 0
2180bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x4].MODE: 0
2181bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x5].MODE: 0
2182bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x6].MODE: 0
2183bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x7].MODE: 0
2184bf215546Sopenharmony_ci +	02000001			PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
2185bf215546Sopenharmony_ci +	00000012			PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
2186bf215546Sopenharmony_ci +	ffffffff			PC_RESTART_INDEX: 0xffffffff
2187bf215546Sopenharmony_ci +	00000000			VFD_INDEX_OFFSET: 0
2188bf215546Sopenharmony_ci +	00000000			UNKNOWN_2209: 0
2189bf215546Sopenharmony_ci +	00140010			SP_SP_CTRL_REG: { 0x140010 }
2190bf215546Sopenharmony_ci +	000005ff			SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
2191bf215546Sopenharmony_ci +	00201400			SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
2192bf215546Sopenharmony_ci +	08000042			SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
2193bf215546Sopenharmony_ci +	0010fc0a			SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
2194bf215546Sopenharmony_ci +	00001e0e			SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
2195bf215546Sopenharmony_ci +	08080808			SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
2196bf215546Sopenharmony_ci +	00000000			SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
2197bf215546Sopenharmony_ci +	10cd5000			SP_VS_OBJ_START: 0x10cd5000
2198bf215546Sopenharmony_ci +	00000004			SP_VS_LENGTH_REG: 4
2199bf215546Sopenharmony_ci!+	00340802			SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 2 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
2200bf215546Sopenharmony_ci +	8010003e			SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
2201bf215546Sopenharmony_ci +	7e420000			SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
2202bf215546Sopenharmony_ci!+	108cb000			SP_FS_OBJ_START: 0x108cb000
2203bf215546Sopenharmony_ci +	00000001			SP_FS_LENGTH_REG: 1
2204bf215546Sopenharmony_ci +	0000fc01			SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
2205bf215546Sopenharmony_ci!+	0001a002			SP_FS_MRT[0].REG: { REGID = r0.z | MRTFORMAT = RB4_R8G8B8A8_UNORM }
2206bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x1].REG: { REGID = r0.z | MRTFORMAT = 0 }
2207bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x2].REG: { REGID = r0.z | MRTFORMAT = 0 }
2208bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x3].REG: { REGID = r0.z | MRTFORMAT = 0 }
2209bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x4].REG: { REGID = r0.z | MRTFORMAT = 0 }
2210bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x5].REG: { REGID = r0.z | MRTFORMAT = 0 }
2211bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x6].REG: { REGID = r0.z | MRTFORMAT = 0 }
2212bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x7].REG: { REGID = r0.z | MRTFORMAT = 0 }
2213bf215546Sopenharmony_ci +	7e420000			SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
2214bf215546Sopenharmony_ci +	7e420000			SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
2215bf215546Sopenharmony_ci +	7e420000			SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
2216bf215546Sopenharmony_ci +	28000250			HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
2217bf215546Sopenharmony_ci +	fcfc0100			HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
2218bf215546Sopenharmony_ci +	fff3f3f0			HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
2219bf215546Sopenharmony_ci!+	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 }
2220bf215546Sopenharmony_ci +	00fcfcfc			HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
2221bf215546Sopenharmony_ci +	04000042			HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
2222bf215546Sopenharmony_ci +	017e423e			HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
2223bf215546Sopenharmony_ci +	007e4200			HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
2224bf215546Sopenharmony_ci +	007e4200			HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
2225bf215546Sopenharmony_ci +	007e4200			HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
2226bf215546Sopenharmony_ci +	00000003			HLSQ_UPDATE_CONTROL: 0x3
2227bf215546Sopenharmony_ci109cf794:			0000: c0053800 00000404 00000001 00000078 00000000 10bd0960 000000f0
2228bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
2229bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x27
2230bf215546Sopenharmony_ci				:0,37,115,39
2231bf215546Sopenharmony_ci109cf7b0:			0000: 0000057f 00000027
2232bf215546Sopenharmony_cit0			write CP_SCRATCH[0x5].REG (057d)
2233bf215546Sopenharmony_ci				CP_SCRATCH[0x5].REG: 0x2b
2234bf215546Sopenharmony_ci				:0,43,115,39
2235bf215546Sopenharmony_ci109cf7b8:			0000: 0000057d 0000002b
2236bf215546Sopenharmony_cit0			write RB_DEPTH_CONTROL (2101)
2237bf215546Sopenharmony_ci				RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_READ_ENABLE }
2238bf215546Sopenharmony_ci109cf7c0:			0000: 00002101 80000016
2239bf215546Sopenharmony_cit0			write GRAS_ALPHA_CONTROL (2073)
2240bf215546Sopenharmony_ci				GRAS_ALPHA_CONTROL: { 0 }
2241bf215546Sopenharmony_ci109cf7c8:			0000: 00002073 00000000
2242bf215546Sopenharmony_cit0			write GRAS_SU_MODE_CONTROL (2078)
2243bf215546Sopenharmony_ci				GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
2244bf215546Sopenharmony_ci109cf7d0:			0000: 00002078 00100012
2245bf215546Sopenharmony_cit0			write GRAS_SU_POINT_MINMAX (2070)
2246bf215546Sopenharmony_ci				GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
2247bf215546Sopenharmony_ci				GRAS_SU_POINT_SIZE: 1.000000
2248bf215546Sopenharmony_ci109cf7d8:			0000: 00012070 00100010 00000010
2249bf215546Sopenharmony_cit0			write GRAS_SU_POLY_OFFSET_SCALE (2074)
2250bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_SCALE: 0.000000
2251bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
2252bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
2253bf215546Sopenharmony_ci109cf7e4:			0000: 00022074 00000000 00000000 00000000
2254bf215546Sopenharmony_cit0			write GRAS_CL_CLIP_CNTL (2000)
2255bf215546Sopenharmony_ci				GRAS_CL_CLIP_CNTL: { 0x80000 }
2256bf215546Sopenharmony_ci109cf7f4:			0000: 00002000 00080000
2257bf215546Sopenharmony_cit0			write PC_PRIM_VTX_CNTL (21c4)
2258bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
2259bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
2260bf215546Sopenharmony_ci109cf7fc:			0000: 000121c4 02000001 00000012
2261bf215546Sopenharmony_cit0			write GRAS_SC_WINDOW_SCISSOR_BR (209c)
2262bf215546Sopenharmony_ci				GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
2263bf215546Sopenharmony_ci				GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
2264bf215546Sopenharmony_ci109cf808:			0000: 0001209c 012b012b 00000000
2265bf215546Sopenharmony_cit0			write RB_VPORT_Z_CLAMP[0].MIN (2120)
2266bf215546Sopenharmony_ci				RB_VPORT_Z_CLAMP[0].MIN: 0
2267bf215546Sopenharmony_ci				RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
2268bf215546Sopenharmony_ci109cf814:			0000: 00012120 00000000 00ffffff
2269bf215546Sopenharmony_cit0			write HLSQ_UPDATE_CONTROL (23db)
2270bf215546Sopenharmony_ci				HLSQ_UPDATE_CONTROL: 0x3
2271bf215546Sopenharmony_ci109cf820:			0000: 000023db 00000003
2272bf215546Sopenharmony_cit0			write HLSQ_CONTROL_0_REG (23c0)
2273bf215546Sopenharmony_ci				HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
2274bf215546Sopenharmony_ci				HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
2275bf215546Sopenharmony_ci				HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
2276bf215546Sopenharmony_ci				HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
2277bf215546Sopenharmony_ci				HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
2278bf215546Sopenharmony_ci109cf828:			0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfcfc 00fcfcfc
2279bf215546Sopenharmony_cit0			write HLSQ_VS_CONTROL_REG (23c5)
2280bf215546Sopenharmony_ci				HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
2281bf215546Sopenharmony_ci				HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
2282bf215546Sopenharmony_ci				HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
2283bf215546Sopenharmony_ci				HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
2284bf215546Sopenharmony_ci				HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
2285bf215546Sopenharmony_ci109cf840:			0000: 000423c5 04000042 017e423e 007e4200 007e4200 007e4200
2286bf215546Sopenharmony_cit0			write SP_SP_CTRL_REG (22c0)
2287bf215546Sopenharmony_ci				SP_SP_CTRL_REG: { 0x140010 }
2288bf215546Sopenharmony_ci109cf858:			0000: 000022c0 00140010
2289bf215546Sopenharmony_cit0			write SP_INSTR_CACHE_CTRL (22c1)
2290bf215546Sopenharmony_ci				SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
2291bf215546Sopenharmony_ci109cf860:			0000: 000022c1 000005ff
2292bf215546Sopenharmony_cit0			write SP_VS_LENGTH_REG (22e5)
2293bf215546Sopenharmony_ci				SP_VS_LENGTH_REG: 4
2294bf215546Sopenharmony_ci109cf868:			0000: 000022e5 00000004
2295bf215546Sopenharmony_cit0			write SP_VS_CTRL_REG0 (22c4)
2296bf215546Sopenharmony_ci				SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 4 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
2297bf215546Sopenharmony_ci				SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
2298bf215546Sopenharmony_ci				SP_VS_PARAM_REG: { POSREGID = r1.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
2299bf215546Sopenharmony_ci109cf870:			0000: 000222c4 00201000 04000042 0010fc06
2300bf215546Sopenharmony_cit0			write SP_VS_OUT[0].REG (22c7)
2301bf215546Sopenharmony_ci				SP_VS_OUT[0].REG: { A_REGID = r2.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
2302bf215546Sopenharmony_ci109cf880:			0000: 000022c7 00001e0a
2303bf215546Sopenharmony_cit0			write SP_VS_VPC_DST[0].REG (22d8)
2304bf215546Sopenharmony_ci				SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
2305bf215546Sopenharmony_ci109cf888:			0000: 000022d8 08080808
2306bf215546Sopenharmony_cit0			write SP_VS_OBJ_OFFSET_REG (22e0)
2307bf215546Sopenharmony_ci				SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
2308bf215546Sopenharmony_ci				SP_VS_OBJ_START: 0x10cd0000
2309bf215546Sopenharmony_ci109cf890:			0000: 000122e0 00000000 10cd0000
2310bf215546Sopenharmony_cit0			write SP_FS_LENGTH_REG (22ef)
2311bf215546Sopenharmony_ci				SP_FS_LENGTH_REG: 1
2312bf215546Sopenharmony_ci109cf89c:			0000: 000022ef 00000001
2313bf215546Sopenharmony_cit0			write SP_FS_CTRL_REG0 (22e8)
2314bf215546Sopenharmony_ci				SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
2315bf215546Sopenharmony_ci				SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
2316bf215546Sopenharmony_ci109cf8a4:			0000: 000122e8 00340402 8010003e
2317bf215546Sopenharmony_cit0			write SP_FS_OBJ_OFFSET_REG (22ea)
2318bf215546Sopenharmony_ci				SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
2319bf215546Sopenharmony_ci				SP_FS_OBJ_START: 0x10cd2000
2320bf215546Sopenharmony_ci109cf8b0:			0000: 000122ea 7e420000 10cd2000
2321bf215546Sopenharmony_cit0			write SP_HS_OBJ_OFFSET_REG (230d)
2322bf215546Sopenharmony_ci				SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
2323bf215546Sopenharmony_ci109cf8bc:			0000: 0000230d 7e420000
2324bf215546Sopenharmony_cit0			write SP_DS_OBJ_OFFSET_REG (2334)
2325bf215546Sopenharmony_ci				SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
2326bf215546Sopenharmony_ci109cf8c4:			0000: 00002334 7e420000
2327bf215546Sopenharmony_cit0			write SP_GS_OBJ_OFFSET_REG (235b)
2328bf215546Sopenharmony_ci				SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
2329bf215546Sopenharmony_ci109cf8cc:			0000: 0000235b 7e420000
2330bf215546Sopenharmony_cit0			write GRAS_CNTL (2003)
2331bf215546Sopenharmony_ci				GRAS_CNTL: { 0 }
2332bf215546Sopenharmony_ci109cf8d4:			0000: 00002003 00000000
2333bf215546Sopenharmony_cit0			write RB_RENDER_CONTROL2 (20a3)
2334bf215546Sopenharmony_ci				RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
2335bf215546Sopenharmony_ci109cf8dc:			0000: 000020a3 00000000
2336bf215546Sopenharmony_cit0			write RB_FS_OUTPUT_REG (2100)
2337bf215546Sopenharmony_ci				RB_FS_OUTPUT_REG: { MRT = 1 }
2338bf215546Sopenharmony_ci109cf8e4:			0000: 00002100 00000001
2339bf215546Sopenharmony_cit0			write SP_FS_OUTPUT_REG (22f0)
2340bf215546Sopenharmony_ci				SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
2341bf215546Sopenharmony_ci109cf8ec:			0000: 000022f0 0000fc01
2342bf215546Sopenharmony_cit0			write SP_FS_MRT[0].REG (22f1)
2343bf215546Sopenharmony_ci				SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
2344bf215546Sopenharmony_ci				SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
2345bf215546Sopenharmony_ci				SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
2346bf215546Sopenharmony_ci				SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
2347bf215546Sopenharmony_ci				SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
2348bf215546Sopenharmony_ci				SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
2349bf215546Sopenharmony_ci				SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
2350bf215546Sopenharmony_ci				SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
2351bf215546Sopenharmony_ci109cf8f4:			0000: 000722f1 0001a000 00000000 00000000 00000000 00000000 00000000 00000000
2352bf215546Sopenharmony_ci*
2353bf215546Sopenharmony_cit0			write VPC_ATTR (2140)
2354bf215546Sopenharmony_ci				VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
2355bf215546Sopenharmony_ci				VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
2356bf215546Sopenharmony_ci109cf918:			0000: 00012140 42001004 00040400
2357bf215546Sopenharmony_cit0			write VPC_VARYING_INTERP[0].MODE (2142)
2358bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0].MODE: 0x55
2359bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x1].MODE: 0
2360bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x2].MODE: 0
2361bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x3].MODE: 0
2362bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x4].MODE: 0
2363bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x5].MODE: 0
2364bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x6].MODE: 0
2365bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x7].MODE: 0
2366bf215546Sopenharmony_ci109cf924:			0000: 00072142 00000055 00000000 00000000 00000000 00000000 00000000 00000000
2367bf215546Sopenharmony_ci*
2368bf215546Sopenharmony_cit0			write VPC_VARYING_PS_REPL[0].MODE (214a)
2369bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0].MODE: 0
2370bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x1].MODE: 0
2371bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x2].MODE: 0
2372bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x3].MODE: 0
2373bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x4].MODE: 0
2374bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x5].MODE: 0
2375bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x6].MODE: 0
2376bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x7].MODE: 0
2377bf215546Sopenharmony_ci109cf948:			0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
2378bf215546Sopenharmony_ci*
2379bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (131 dwords)
2380bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 4 }
2381bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
2382bf215546Sopenharmony_ci				:2:0000:0000[40700000x_10000002x] mul.f r0.x, r0.z, c0.x
2383bf215546Sopenharmony_ci				:2:0001:0001[40700001x_10030002x] mul.f r0.y, r0.z, c0.w
2384bf215546Sopenharmony_ci				:3:0002:0002[63818000x_00001004x] mad.f32 r0.x, c1.x, r0.w, r0.x
2385bf215546Sopenharmony_ci				:3:0003:0003[63818001x_00011007x] mad.f32 r0.y, c1.w, r0.w, r0.y
2386bf215546Sopenharmony_ci				:3:0004:0004[63820000x_00001008x] mad.f32 r0.x, c2.x, r1.x, r0.x
2387bf215546Sopenharmony_ci				:3:0005:0005[63820001x_0001100bx] mad.f32 r0.y, c2.w, r1.x, r0.y
2388bf215546Sopenharmony_ci				:3:0006:0006[63828006x_0000100cx] mad.f32 r1.z, c3.x, r1.y, r0.x
2389bf215546Sopenharmony_ci				:2:0007:0007[40700000x_10010002x] mul.f r0.x, r0.z, c0.y
2390bf215546Sopenharmony_ci				:3:0008:0008[63828009x_0001100fx] mad.f32 r2.y, c3.w, r1.y, r0.y
2391bf215546Sopenharmony_ci				:3:0009:0009[63818000x_00001005x] mad.f32 r0.x, c1.y, r0.w, r0.x
2392bf215546Sopenharmony_ci				:1:0010:0010[20244001x_00000010x] mov.f32f32 r0.y, c4.x
2393bf215546Sopenharmony_ci				:3:0011:0011[63820000x_00001009x] mad.f32 r0.x, c2.y, r1.x, r0.x
2394bf215546Sopenharmony_ci				:0:0012:0012[00000000x_00000000x] nop
2395bf215546Sopenharmony_ci				:3:0013:0013[63828007x_0000100dx] mad.f32 r1.w, c3.y, r1.y, r0.x
2396bf215546Sopenharmony_ci				:2:0014:0014[40700000x_10020002x] mul.f r0.x, r0.z, c0.z
2397bf215546Sopenharmony_ci				:1:0015:0015[20244002x_00000015x] mov.f32f32 r0.z, c5.y
2398bf215546Sopenharmony_ci				:3:0016:0016[63818000x_00001006x] mad.f32 r0.x, c1.z, r0.w, r0.x
2399bf215546Sopenharmony_ci				:1:0017:0017[20244003x_00000016x] mov.f32f32 r0.w, c5.z
2400bf215546Sopenharmony_ci				:3:0018:0018[63820000x_0000100ax] mad.f32 r0.x, c2.z, r1.x, r0.x
2401bf215546Sopenharmony_ci				:1:0019:0019[20244004x_00000017x] mov.f32f32 r1.x, c5.w
2402bf215546Sopenharmony_ci				:3:0020:0020[63828008x_0000100ex] mad.f32 r2.x, c3.z, r1.y, r0.x
2403bf215546Sopenharmony_ci				:1:0021:0021[20244000x_00000011x] mov.f32f32 r0.x, c4.y
2404bf215546Sopenharmony_ci				:2:0022:0022[40100002x_00021021x] add.f r0.z, c8.y, r0.z
2405bf215546Sopenharmony_ci				:2:0023:0023[4050040dx_00041017x] (sat)max.f r3.y, c5.w, r1.x
2406bf215546Sopenharmony_ci				:2:0024:0024[40100003x_00031022x] add.f r0.w, c8.z, r0.w
2407bf215546Sopenharmony_ci				:2:0025:0025[40700000x_00001011x] mul.f r0.x, c4.y, r0.x
2408bf215546Sopenharmony_ci				:0:0026:0026[00000000x_00000000x] nop
2409bf215546Sopenharmony_ci				:3:0027:0027[63808000x_00001010x] mad.f32 r0.x, c4.x, r0.y, r0.x
2410bf215546Sopenharmony_ci				:1:0028:0028[20244001x_00000012x] mov.f32f32 r0.y, c4.z
2411bf215546Sopenharmony_ci				:0:0029:0029[00000200x_00000000x] (rpt2)nop
2412bf215546Sopenharmony_ci				:3:0030:0032[63808000x_00001012x] mad.f32 r0.x, c4.z, r0.y, r0.x
2413bf215546Sopenharmony_ci				:1:0031:0033[20244001x_00000014x] mov.f32f32 r0.y, c5.x
2414bf215546Sopenharmony_ci				:0:0032:0034[00000200x_00000000x] (rpt2)nop
2415bf215546Sopenharmony_ci				:2:0033:0037[40100001x_00011020x] add.f r0.y, c8.x, r0.y
2416bf215546Sopenharmony_ci				:0:0034:0038[00000000x_00000000x] nop
2417bf215546Sopenharmony_ci				:4:0035:0039[80300000x_00000000x] rsq r0.x, r0.x
2418bf215546Sopenharmony_ci				:2:0036:0040[40701004x_00001011x] (ss)mul.f r1.x, c4.y, r0.x
2419bf215546Sopenharmony_ci				:0:0037:0041[00000200x_00000000x] (rpt2)nop
2420bf215546Sopenharmony_ci				:2:0038:0044[40700004x_10190004x] mul.f r1.x, r1.x, c6.y
2421bf215546Sopenharmony_ci				:2:0039:0045[40700005x_00001010x] mul.f r1.y, c4.x, r0.x
2422bf215546Sopenharmony_ci				:0:0040:0046[00000200x_00000000x] (rpt2)nop
2423bf215546Sopenharmony_ci				:3:0041:0049[63828004x_00041018x] mad.f32 r1.x, c6.x, r1.y, r1.x
2424bf215546Sopenharmony_ci				:2:0042:0050[40700000x_00001012x] mul.f r0.x, c4.z, r0.x
2425bf215546Sopenharmony_ci				:0:0043:0051[00000200x_00000000x] (rpt2)nop
2426bf215546Sopenharmony_ci				:3:0044:0054[63800000x_0004101ax] mad.f32 r0.x, c6.z, r0.x, r1.x
2427bf215546Sopenharmony_ci				:0:0045:0055[00000200x_00000000x] (rpt2)nop
2428bf215546Sopenharmony_ci				:2:0046:0058[40b00004x_00001034x] cmps.f.lt r1.x, c13.x, r0.x
2429bf215546Sopenharmony_ci				:2:0047:0059[40500000x_00001034x] max.f r0.x, c13.x, r0.x
2430bf215546Sopenharmony_ci				:0:0048:0060[00000100x_00000000x] (rpt1)nop
2431bf215546Sopenharmony_ci				:1:0049:0062[200c4004x_00000004x] cov.u32f32 r1.x, r1.x
2432bf215546Sopenharmony_ci				:3:0050:0063[63800001x_00011024x] mad.f32 r0.y, c9.x, r0.x, r0.y
2433bf215546Sopenharmony_ci				:3:0051:0064[63800002x_00021025x] mad.f32 r0.z, c9.y, r0.x, r0.z
2434bf215546Sopenharmony_ci				:3:0052:0065[63800000x_00031026x] mad.f32 r0.x, c9.z, r0.x, r0.w
2435bf215546Sopenharmony_ci				:3:0053:0066[6382040ax_00011028x] (sat)mad.f32 r2.z, c10.x, r1.x, r0.y
2436bf215546Sopenharmony_ci				:3:0054:0067[6382040bx_00021029x] (sat)mad.f32 r2.w, c10.y, r1.x, r0.z
2437bf215546Sopenharmony_ci				:3:0055:0068[6382040cx_0000102ax] (sat)mad.f32 r3.x, c10.z, r1.x, r0.x
2438bf215546Sopenharmony_ci				:0:0056:0069[03000000x_00000000x] end
2439bf215546Sopenharmony_ci				:0:0057:0070[00000000x_00000000x] nop
2440bf215546Sopenharmony_ci				:0:0058:0071[00000000x_00000000x] nop
2441bf215546Sopenharmony_ci				:0:0059:0072[00000000x_00000000x] nop
2442bf215546Sopenharmony_ci				:0:0060:0073[00000000x_00000000x] nop
2443bf215546Sopenharmony_ci				Stats:
2444bf215546Sopenharmony_ci				- shaderdb: 74 instr, 27 nops, 47 non-nops, 7 mov, 1 cov
2445bf215546Sopenharmony_ci				- shaderdb: 0 last-baryf, 0 half, 4 full, 13 constlen
2446bf215546Sopenharmony_ci				- shaderdb: 28 cat0, 8 cat1, 15 cat2, 22 cat3, 1 cat4, 0 cat5, 0 cat6, 0 cat7
2447bf215546Sopenharmony_ci				- shaderdb: 10 sstall, 1 (ss), 0 (sy)
2448bf215546Sopenharmony_ci109cf96c:			0000: c0813000 01200000 00000000 10000002 40700000 10030002 40700001 00001004
2449bf215546Sopenharmony_ci109cf98c:			0020: 63818000 00011007 63818001 00001008 63820000 0001100b 63820001 0000100c
2450bf215546Sopenharmony_ci109cf9ac:			0040: 63828006 10010002 40700000 0001100f 63828009 00001005 63818000 00000010
2451bf215546Sopenharmony_ci109cf9cc:			0060: 20244001 00001009 63820000 00000000 00000000 0000100d 63828007 10020002
2452bf215546Sopenharmony_ci109cf9ec:			0080: 40700000 00000015 20244002 00001006 63818000 00000016 20244003 0000100a
2453bf215546Sopenharmony_ci109cfa0c:			00a0: 63820000 00000017 20244004 0000100e 63828008 00000011 20244000 00021021
2454bf215546Sopenharmony_ci109cfa2c:			00c0: 40100002 00041017 4050040d 00031022 40100003 00001011 40700000 00000000
2455bf215546Sopenharmony_ci109cfa4c:			00e0: 00000000 00001010 63808000 00000012 20244001 00000000 00000200 00001012
2456bf215546Sopenharmony_ci109cfa6c:			0100: 63808000 00000014 20244001 00000000 00000200 00011020 40100001 00000000
2457bf215546Sopenharmony_ci109cfa8c:			0120: 00000000 00000000 80300000 00001011 40701004 00000000 00000200 10190004
2458bf215546Sopenharmony_ci109cfaac:			0140: 40700004 00001010 40700005 00000000 00000200 00041018 63828004 00001012
2459bf215546Sopenharmony_ci109cfacc:			0160: 40700000 00000000 00000200 0004101a 63800000 00000000 00000200 00001034
2460bf215546Sopenharmony_ci109cfaec:			0180: 40b00004 00001034 40500000 00000000 00000100 00000004 200c4004 00011024
2461bf215546Sopenharmony_ci109cfb0c:			01a0: 63800001 00021025 63800002 00031026 63800000 00011028 6382040a 00021029
2462bf215546Sopenharmony_ci109cfb2c:			01c0: 6382040b 0000102a 6382040c 00000000 03000000 00000000 00000000 00000000
2463bf215546Sopenharmony_ci*
2464bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (35 dwords)
2465bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
2466bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
2467bf215546Sopenharmony_ci				:0:0000:0000[00000000x_00000000x] nop
2468bf215546Sopenharmony_ci				:6:0001:0001[c7c60000x_01c00000x] ldlv.u32 r0.x, l[0], 1
2469bf215546Sopenharmony_ci				:6:0002:0002[c7c60001x_01c00002x] ldlv.u32 r0.y, l[1], 1
2470bf215546Sopenharmony_ci				:6:0003:0003[c7c60002x_01c00004x] ldlv.u32 r0.z, l[2], 1
2471bf215546Sopenharmony_ci				:6:0004:0004[c7c60003x_01c00006x] ldlv.u32 r0.w, l[3], 1
2472bf215546Sopenharmony_ci				:2:0005:0005[473090fcx_00002000x] (ss)bary.f (ei)r63.x, 0, r0.x
2473bf215546Sopenharmony_ci				:0:0006:0006[03000000x_00000000x] end
2474bf215546Sopenharmony_ci				:0:0007:0007[00000000x_00000000x] nop
2475bf215546Sopenharmony_ci				:0:0008:0008[00000000x_00000000x] nop
2476bf215546Sopenharmony_ci				:0:0009:0009[00000000x_00000000x] nop
2477bf215546Sopenharmony_ci				:0:0010:0010[00000000x_00000000x] nop
2478bf215546Sopenharmony_ci				Stats:
2479bf215546Sopenharmony_ci				- shaderdb: 11 instr, 5 nops, 6 non-nops, 0 mov, 0 cov
2480bf215546Sopenharmony_ci				- shaderdb: 5 last-baryf, 0 half, 1 full, 0 constlen
2481bf215546Sopenharmony_ci				- shaderdb: 6 cat0, 0 cat1, 1 cat2, 0 cat3, 0 cat4, 0 cat5, 4 cat6, 0 cat7
2482bf215546Sopenharmony_ci				- shaderdb: 0 sstall, 1 (ss), 0 (sy)
2483bf215546Sopenharmony_ci109cfb78:			0000: c0213000 00700000 00000000 00000000 00000000 01c00000 c7c60000 01c00002
2484bf215546Sopenharmony_ci109cfb98:			0020: c7c60001 01c00004 c7c60002 01c00006 c7c60003 00002000 473090fc 00000000
2485bf215546Sopenharmony_ci109cfbb8:			0040: 03000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
2486bf215546Sopenharmony_ci*
2487bf215546Sopenharmony_cit3			opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
2488bf215546Sopenharmony_ci109cfc04:			0000: c0002600 00000000
2489bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (51 dwords)
2490bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
2491bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
2492bf215546Sopenharmony_ci109cfc18:				4.276816 0.109522 0.611668 0.517565 0.677381 4.774377 -0.312365 -0.264309
2493bf215546Sopenharmony_ci109cfc38:				2.500000 -1.480991 -0.961761 -0.813798 13.423393 -6.746271 38.893391 42.140564
2494bf215546Sopenharmony_ci109cfc58:				0.000000 0.000000 1.000000 1.000000 0.000000 0.160000 0.040000 1.000000
2495bf215546Sopenharmony_ci109cfc78:				-0.064448 0.660942 0.747665 0.000000 1.000000 0.000000 0.000000 0.000000
2496bf215546Sopenharmony_ci109cfc98:				0.000000 0.000000 0.000000 1.000000 0.000000 0.800000 0.200000 1.000000
2497bf215546Sopenharmony_ci109cfcb8:				0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000
2498bf215546Sopenharmony_ci109cfc18:				0000: 4088dbad 3de04cdc 3f1c964b 3f047f2c 3f2d68da 4098c7b2 be9fee59 be875387
2499bf215546Sopenharmony_ci109cfc38:				0020: 40200000 bfbd9119 bf7635f5 bf50550b 4156c638 c0d7e173 421b92d5 42288ff0
2500bf215546Sopenharmony_ci109cfc58:				0040: 00000000 00000000 3f800000 3f800000 00000000 3e23d70b 3d23d70b 3f800000
2501bf215546Sopenharmony_ci109cfc78:				0060: bd83fd0e 3f293379 3f3f66f5 00000000 3f800000 00000000 00000000 00000000
2502bf215546Sopenharmony_ci109cfc98:				0080: 00000000 00000000 00000000 3f800000 00000000 3f4ccccd 3e4ccccd 3f800000
2503bf215546Sopenharmony_ci109cfcb8:				00a0: 00000000 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000
2504bf215546Sopenharmony_ci109cfc0c:			0000: c0313000 03200000 00000001 4088dbad 3de04cdc 3f1c964b 3f047f2c 3f2d68da
2505bf215546Sopenharmony_ci109cfc2c:			0020: 4098c7b2 be9fee59 be875387 40200000 bfbd9119 bf7635f5 bf50550b 4156c638
2506bf215546Sopenharmony_ci109cfc4c:			0040: c0d7e173 421b92d5 42288ff0 00000000 00000000 3f800000 3f800000 00000000
2507bf215546Sopenharmony_ci109cfc6c:			0060: 3e23d70b 3d23d70b 3f800000 bd83fd0e 3f293379 3f3f66f5 00000000 3f800000
2508bf215546Sopenharmony_ci109cfc8c:			0080: 00000000 00000000 00000000 00000000 00000000 00000000 3f800000 00000000
2509bf215546Sopenharmony_ci109cfcac:			00a0: 3f4ccccd 3e4ccccd 3f800000 00000000 00000000 00000000 3f800000 00000000
2510bf215546Sopenharmony_ci109cfccc:			00c0: 00000000 00000000 3f800000
2511bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (7 dwords)
2512bf215546Sopenharmony_ci				{ DST_OFF = 13 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 1 }
2513bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
2514bf215546Sopenharmony_ci109cfce4:				0.000000 -28026765312.000000 -28026765312.000000 -28026765312.000000
2515bf215546Sopenharmony_ci109cfce4:				0000: 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
2516bf215546Sopenharmony_ci109cfcd8:			0000: c0053000 0060000d 00000001 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
2517bf215546Sopenharmony_cit0			write VFD_FETCH[0].INSTR_0 (220a)
2518bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
2519bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_1: 0x107cb000
2520bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
2521bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
2522bf215546Sopenharmony_ci109cfcf4:			0000: 0003220a 0000060b 107cb000 00100000 00000001
2523bf215546Sopenharmony_cit0			write VFD_DECODE[0].INSTR (228a)
2524bf215546Sopenharmony_ci				VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
2525bf215546Sopenharmony_ci109cfd08:			0000: 0000228a 2c0020df
2526bf215546Sopenharmony_cit0			write VFD_CONTROL_0 (2200)
2527bf215546Sopenharmony_ci				VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
2528bf215546Sopenharmony_ci				VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
2529bf215546Sopenharmony_ci				VFD_CONTROL_2: 0
2530bf215546Sopenharmony_ci				VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
2531bf215546Sopenharmony_ci				VFD_CONTROL_4: 0
2532bf215546Sopenharmony_ci109cfd10:			0000: 00042200 041a0004 fcfc0081 00000000 0000fc00 00000000
2533bf215546Sopenharmony_cit0			write UCHE_INVALIDATE0 (0e8a)
2534bf215546Sopenharmony_ci				UCHE_INVALIDATE0: 0
2535bf215546Sopenharmony_ci				UCHE_INVALIDATE1: 0x12
2536bf215546Sopenharmony_ci109cfd28:			0000: 00010e8a 00000000 00000012
2537bf215546Sopenharmony_cit0			write VFD_INDEX_OFFSET (2208)
2538bf215546Sopenharmony_ci				VFD_INDEX_OFFSET: 0
2539bf215546Sopenharmony_ci				UNKNOWN_2209: 0
2540bf215546Sopenharmony_ci109cfd34:			0000: 00012208 00000000 00000000
2541bf215546Sopenharmony_cit0			write PC_RESTART_INDEX (21c6)
2542bf215546Sopenharmony_ci				PC_RESTART_INDEX: 0xffffffff
2543bf215546Sopenharmony_ci109cfd40:			0000: 000021c6 ffffffff
2544bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
2545bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x2c
2546bf215546Sopenharmony_ci				:0,43,115,44
2547bf215546Sopenharmony_ci109cfd48:			0000: 0000057f 0000002c
2548bf215546Sopenharmony_cit3			opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
2549bf215546Sopenharmony_ci				{ 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 }
2550bf215546Sopenharmony_ci				{ NUM_INSTANCES = 1 }
2551bf215546Sopenharmony_ci				{ NUM_INDICES = 120 }
2552bf215546Sopenharmony_ci				{ FIRST_INDX = 0 }
2553bf215546Sopenharmony_ci				{ INDX_BASE = 0x10bd0a50 }
2554bf215546Sopenharmony_ci				{ INDX_SIZE = 240 }
2555bf215546Sopenharmony_ci			draw[7] register values
2556bf215546Sopenharmony_ci!+	0000002b			CP_SCRATCH[0x5].REG: 0x2b
2557bf215546Sopenharmony_ci			:0,43,115,44
2558bf215546Sopenharmony_ci!+	0000002c			CP_SCRATCH[0x7].REG: 0x2c
2559bf215546Sopenharmony_ci			:0,43,115,44
2560bf215546Sopenharmony_ci +	00000000			UCHE_INVALIDATE0: 0
2561bf215546Sopenharmony_ci +	00000012			UCHE_INVALIDATE1: 0x12
2562bf215546Sopenharmony_ci +	00080000			GRAS_CL_CLIP_CNTL: { 0x80000 }
2563bf215546Sopenharmony_ci!+	00000000			GRAS_CNTL: { 0 }
2564bf215546Sopenharmony_ci +	00100010			GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
2565bf215546Sopenharmony_ci +	00000010			GRAS_SU_POINT_SIZE: 1.000000
2566bf215546Sopenharmony_ci +	00000000			GRAS_ALPHA_CONTROL: { 0 }
2567bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_SCALE: 0.000000
2568bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
2569bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
2570bf215546Sopenharmony_ci +	00100012			GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
2571bf215546Sopenharmony_ci +	012b012b			GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
2572bf215546Sopenharmony_ci +	00000000			GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
2573bf215546Sopenharmony_ci!+	00000000			RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
2574bf215546Sopenharmony_ci +	00000001			RB_FS_OUTPUT_REG: { MRT = 1 }
2575bf215546Sopenharmony_ci +	80000016			RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_READ_ENABLE }
2576bf215546Sopenharmony_ci +	00000000			RB_VPORT_Z_CLAMP[0].MIN: 0
2577bf215546Sopenharmony_ci +	00ffffff			RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
2578bf215546Sopenharmony_ci +	42001004			VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
2579bf215546Sopenharmony_ci +	00040400			VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
2580bf215546Sopenharmony_ci!+	00000055			VPC_VARYING_INTERP[0].MODE: 0x55
2581bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x1].MODE: 0
2582bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x2].MODE: 0
2583bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x3].MODE: 0
2584bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x4].MODE: 0
2585bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x5].MODE: 0
2586bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x6].MODE: 0
2587bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x7].MODE: 0
2588bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0].MODE: 0
2589bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x1].MODE: 0
2590bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x2].MODE: 0
2591bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x3].MODE: 0
2592bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x4].MODE: 0
2593bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x5].MODE: 0
2594bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x6].MODE: 0
2595bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x7].MODE: 0
2596bf215546Sopenharmony_ci +	02000001			PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
2597bf215546Sopenharmony_ci +	00000012			PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
2598bf215546Sopenharmony_ci +	ffffffff			PC_RESTART_INDEX: 0xffffffff
2599bf215546Sopenharmony_ci!+	041a0004			VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
2600bf215546Sopenharmony_ci +	fcfc0081			VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
2601bf215546Sopenharmony_ci +	00000000			VFD_CONTROL_2: 0
2602bf215546Sopenharmony_ci +	0000fc00			VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
2603bf215546Sopenharmony_ci +	00000000			VFD_CONTROL_4: 0
2604bf215546Sopenharmony_ci +	00000000			VFD_INDEX_OFFSET: 0
2605bf215546Sopenharmony_ci +	00000000			UNKNOWN_2209: 0
2606bf215546Sopenharmony_ci!+	0000060b			VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
2607bf215546Sopenharmony_ci +	107cb000			VFD_FETCH[0].INSTR_1: 0x107cb000
2608bf215546Sopenharmony_ci +	00100000			VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
2609bf215546Sopenharmony_ci +	00000001			VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
2610bf215546Sopenharmony_ci!+	2c0020df			VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
2611bf215546Sopenharmony_ci +	00140010			SP_SP_CTRL_REG: { 0x140010 }
2612bf215546Sopenharmony_ci +	000005ff			SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
2613bf215546Sopenharmony_ci!+	00201000			SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 4 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
2614bf215546Sopenharmony_ci!+	04000042			SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
2615bf215546Sopenharmony_ci!+	0010fc06			SP_VS_PARAM_REG: { POSREGID = r1.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
2616bf215546Sopenharmony_ci!+	00001e0a			SP_VS_OUT[0].REG: { A_REGID = r2.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
2617bf215546Sopenharmony_ci +	08080808			SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
2618bf215546Sopenharmony_ci +	00000000			SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
2619bf215546Sopenharmony_ci!+	10cd0000			SP_VS_OBJ_START: 0x10cd0000
2620bf215546Sopenharmony_ci +	00000004			SP_VS_LENGTH_REG: 4
2621bf215546Sopenharmony_ci!+	00340402			SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
2622bf215546Sopenharmony_ci +	8010003e			SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
2623bf215546Sopenharmony_ci +	7e420000			SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
2624bf215546Sopenharmony_ci!+	10cd2000			SP_FS_OBJ_START: 0x10cd2000
2625bf215546Sopenharmony_ci +	00000001			SP_FS_LENGTH_REG: 1
2626bf215546Sopenharmony_ci +	0000fc01			SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
2627bf215546Sopenharmony_ci!+	0001a000			SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
2628bf215546Sopenharmony_ci!+	00000000			SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
2629bf215546Sopenharmony_ci!+	00000000			SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
2630bf215546Sopenharmony_ci!+	00000000			SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
2631bf215546Sopenharmony_ci!+	00000000			SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
2632bf215546Sopenharmony_ci!+	00000000			SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
2633bf215546Sopenharmony_ci!+	00000000			SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
2634bf215546Sopenharmony_ci!+	00000000			SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
2635bf215546Sopenharmony_ci +	7e420000			SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
2636bf215546Sopenharmony_ci +	7e420000			SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
2637bf215546Sopenharmony_ci +	7e420000			SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
2638bf215546Sopenharmony_ci +	28000250			HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
2639bf215546Sopenharmony_ci +	fcfc0100			HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
2640bf215546Sopenharmony_ci +	fff3f3f0			HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
2641bf215546Sopenharmony_ci!+	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 }
2642bf215546Sopenharmony_ci +	00fcfcfc			HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
2643bf215546Sopenharmony_ci +	04000042			HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
2644bf215546Sopenharmony_ci +	017e423e			HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
2645bf215546Sopenharmony_ci +	007e4200			HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
2646bf215546Sopenharmony_ci +	007e4200			HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
2647bf215546Sopenharmony_ci +	007e4200			HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
2648bf215546Sopenharmony_ci +	00000003			HLSQ_UPDATE_CONTROL: 0x3
2649bf215546Sopenharmony_ci109cfd50:			0000: c0053800 00000404 00000001 00000078 00000000 10bd0a50 000000f0
2650bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
2651bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x2d
2652bf215546Sopenharmony_ci				:0,43,115,45
2653bf215546Sopenharmony_ci109cfd6c:			0000: 0000057f 0000002d
2654bf215546Sopenharmony_cit0			write CP_SCRATCH[0x5].REG (057d)
2655bf215546Sopenharmony_ci				CP_SCRATCH[0x5].REG: 0x31
2656bf215546Sopenharmony_ci				:0,49,115,45
2657bf215546Sopenharmony_ci109cfd74:			0000: 0000057d 00000031
2658bf215546Sopenharmony_cit0			write PC_PRIM_VTX_CNTL (21c4)
2659bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
2660bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
2661bf215546Sopenharmony_ci109cfd7c:			0000: 000121c4 02000001 00000012
2662bf215546Sopenharmony_cit0			write VFD_INDEX_OFFSET (2208)
2663bf215546Sopenharmony_ci				VFD_INDEX_OFFSET: 0
2664bf215546Sopenharmony_ci				UNKNOWN_2209: 0
2665bf215546Sopenharmony_ci109cfd88:			0000: 00012208 00000000 00000000
2666bf215546Sopenharmony_cit0			write PC_RESTART_INDEX (21c6)
2667bf215546Sopenharmony_ci				PC_RESTART_INDEX: 0xffffffff
2668bf215546Sopenharmony_ci109cfd94:			0000: 000021c6 ffffffff
2669bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
2670bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x32
2671bf215546Sopenharmony_ci				:0,49,115,50
2672bf215546Sopenharmony_ci109cfd9c:			0000: 0000057f 00000032
2673bf215546Sopenharmony_cit3			opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
2674bf215546Sopenharmony_ci				{ 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 }
2675bf215546Sopenharmony_ci				{ NUM_INSTANCES = 1 }
2676bf215546Sopenharmony_ci				{ NUM_INDICES = 60 }
2677bf215546Sopenharmony_ci				{ FIRST_INDX = 0 }
2678bf215546Sopenharmony_ci				{ INDX_BASE = 0x10bd0b40 }
2679bf215546Sopenharmony_ci				{ INDX_SIZE = 120 }
2680bf215546Sopenharmony_ci			draw[8] register values
2681bf215546Sopenharmony_ci!+	00000031			CP_SCRATCH[0x5].REG: 0x31
2682bf215546Sopenharmony_ci			:0,49,115,50
2683bf215546Sopenharmony_ci!+	00000032			CP_SCRATCH[0x7].REG: 0x32
2684bf215546Sopenharmony_ci			:0,49,115,50
2685bf215546Sopenharmony_ci +	02000001			PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
2686bf215546Sopenharmony_ci +	00000012			PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
2687bf215546Sopenharmony_ci +	ffffffff			PC_RESTART_INDEX: 0xffffffff
2688bf215546Sopenharmony_ci +	00000000			VFD_INDEX_OFFSET: 0
2689bf215546Sopenharmony_ci +	00000000			UNKNOWN_2209: 0
2690bf215546Sopenharmony_ci109cfda4:			0000: c0053800 00000404 00000001 0000003c 00000000 10bd0b40 00000078
2691bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
2692bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x33
2693bf215546Sopenharmony_ci				:0,49,115,51
2694bf215546Sopenharmony_ci109cfdc0:			0000: 0000057f 00000033
2695bf215546Sopenharmony_cit0			write CP_SCRATCH[0x5].REG (057d)
2696bf215546Sopenharmony_ci				CP_SCRATCH[0x5].REG: 0x37
2697bf215546Sopenharmony_ci				:0,55,115,51
2698bf215546Sopenharmony_ci109cfdc8:			0000: 0000057d 00000037
2699bf215546Sopenharmony_cit0			write PC_PRIM_VTX_CNTL (21c4)
2700bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
2701bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
2702bf215546Sopenharmony_ci109cfdd0:			0000: 000121c4 02000001 00000012
2703bf215546Sopenharmony_cit3			opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
2704bf215546Sopenharmony_ci109cfddc:			0000: c0002600 00000000
2705bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (51 dwords)
2706bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
2707bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
2708bf215546Sopenharmony_ci109cfdf0:				4.276816 0.109522 0.611668 0.517565 0.677381 4.774377 -0.312365 -0.264309
2709bf215546Sopenharmony_ci109cfe10:				2.500000 -1.480991 -0.961761 -0.813798 13.423393 -6.746271 38.893391 42.140564
2710bf215546Sopenharmony_ci109cfe30:				0.000000 0.000000 -1.000000 1.000000 0.000000 0.160000 0.040000 1.000000
2711bf215546Sopenharmony_ci109cfe50:				-0.064448 0.660942 0.747665 0.000000 1.000000 0.000000 0.000000 0.000000
2712bf215546Sopenharmony_ci109cfe70:				0.000000 0.000000 0.000000 1.000000 0.000000 0.800000 0.200000 1.000000
2713bf215546Sopenharmony_ci109cfe90:				0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000
2714bf215546Sopenharmony_ci109cfdf0:				0000: 4088dbad 3de04cdc 3f1c964b 3f047f2c 3f2d68da 4098c7b2 be9fee59 be875387
2715bf215546Sopenharmony_ci109cfe10:				0020: 40200000 bfbd9119 bf7635f5 bf50550b 4156c638 c0d7e173 421b92d5 42288ff0
2716bf215546Sopenharmony_ci109cfe30:				0040: 00000000 00000000 bf800000 3f800000 00000000 3e23d70b 3d23d70b 3f800000
2717bf215546Sopenharmony_ci109cfe50:				0060: bd83fd0e 3f293379 3f3f66f5 00000000 3f800000 00000000 00000000 00000000
2718bf215546Sopenharmony_ci109cfe70:				0080: 00000000 00000000 00000000 3f800000 00000000 3f4ccccd 3e4ccccd 3f800000
2719bf215546Sopenharmony_ci109cfe90:				00a0: 00000000 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000
2720bf215546Sopenharmony_ci109cfde4:			0000: c0313000 03200000 00000001 4088dbad 3de04cdc 3f1c964b 3f047f2c 3f2d68da
2721bf215546Sopenharmony_ci109cfe04:			0020: 4098c7b2 be9fee59 be875387 40200000 bfbd9119 bf7635f5 bf50550b 4156c638
2722bf215546Sopenharmony_ci109cfe24:			0040: c0d7e173 421b92d5 42288ff0 00000000 00000000 bf800000 3f800000 00000000
2723bf215546Sopenharmony_ci109cfe44:			0060: 3e23d70b 3d23d70b 3f800000 bd83fd0e 3f293379 3f3f66f5 00000000 3f800000
2724bf215546Sopenharmony_ci109cfe64:			0080: 00000000 00000000 00000000 00000000 00000000 00000000 3f800000 00000000
2725bf215546Sopenharmony_ci109cfe84:			00a0: 3f4ccccd 3e4ccccd 3f800000 00000000 00000000 00000000 3f800000 00000000
2726bf215546Sopenharmony_ci109cfea4:			00c0: 00000000 00000000 3f800000
2727bf215546Sopenharmony_cit0			write VFD_INDEX_OFFSET (2208)
2728bf215546Sopenharmony_ci				VFD_INDEX_OFFSET: 0
2729bf215546Sopenharmony_ci				UNKNOWN_2209: 0
2730bf215546Sopenharmony_ci109cfeb0:			0000: 00012208 00000000 00000000
2731bf215546Sopenharmony_cit0			write PC_RESTART_INDEX (21c6)
2732bf215546Sopenharmony_ci				PC_RESTART_INDEX: 0xffffffff
2733bf215546Sopenharmony_ci109cfebc:			0000: 000021c6 ffffffff
2734bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
2735bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x38
2736bf215546Sopenharmony_ci				:0,55,115,56
2737bf215546Sopenharmony_ci109cfec4:			0000: 0000057f 00000038
2738bf215546Sopenharmony_cit3			opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
2739bf215546Sopenharmony_ci				{ 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 }
2740bf215546Sopenharmony_ci				{ NUM_INSTANCES = 1 }
2741bf215546Sopenharmony_ci				{ NUM_INDICES = 120 }
2742bf215546Sopenharmony_ci				{ FIRST_INDX = 0 }
2743bf215546Sopenharmony_ci				{ INDX_BASE = 0x10bd0bb8 }
2744bf215546Sopenharmony_ci				{ INDX_SIZE = 240 }
2745bf215546Sopenharmony_ci			draw[9] register values
2746bf215546Sopenharmony_ci!+	00000037			CP_SCRATCH[0x5].REG: 0x37
2747bf215546Sopenharmony_ci			:0,55,115,56
2748bf215546Sopenharmony_ci!+	00000038			CP_SCRATCH[0x7].REG: 0x38
2749bf215546Sopenharmony_ci			:0,55,115,56
2750bf215546Sopenharmony_ci +	02000001			PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
2751bf215546Sopenharmony_ci +	00000012			PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
2752bf215546Sopenharmony_ci +	ffffffff			PC_RESTART_INDEX: 0xffffffff
2753bf215546Sopenharmony_ci +	00000000			VFD_INDEX_OFFSET: 0
2754bf215546Sopenharmony_ci +	00000000			UNKNOWN_2209: 0
2755bf215546Sopenharmony_ci109cfecc:			0000: c0053800 00000404 00000001 00000078 00000000 10bd0bb8 000000f0
2756bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
2757bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x39
2758bf215546Sopenharmony_ci				:0,55,115,57
2759bf215546Sopenharmony_ci109cfee8:			0000: 0000057f 00000039
2760bf215546Sopenharmony_cit0			write CP_SCRATCH[0x5].REG (057d)
2761bf215546Sopenharmony_ci				CP_SCRATCH[0x5].REG: 0x3d
2762bf215546Sopenharmony_ci				:0,61,115,57
2763bf215546Sopenharmony_ci109cfef0:			0000: 0000057d 0000003d
2764bf215546Sopenharmony_cit0			write PC_PRIM_VTX_CNTL (21c4)
2765bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
2766bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
2767bf215546Sopenharmony_ci109cfef8:			0000: 000121c4 02000001 00000012
2768bf215546Sopenharmony_cit0			write VFD_INDEX_OFFSET (2208)
2769bf215546Sopenharmony_ci				VFD_INDEX_OFFSET: 0
2770bf215546Sopenharmony_ci				UNKNOWN_2209: 0
2771bf215546Sopenharmony_ci109cff04:			0000: 00012208 00000000 00000000
2772bf215546Sopenharmony_cit0			write PC_RESTART_INDEX (21c6)
2773bf215546Sopenharmony_ci				PC_RESTART_INDEX: 0xffffffff
2774bf215546Sopenharmony_ci109cff10:			0000: 000021c6 ffffffff
2775bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
2776bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x3e
2777bf215546Sopenharmony_ci				:0,61,115,62
2778bf215546Sopenharmony_ci109cff18:			0000: 0000057f 0000003e
2779bf215546Sopenharmony_cit3			opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
2780bf215546Sopenharmony_ci				{ 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 }
2781bf215546Sopenharmony_ci				{ NUM_INSTANCES = 1 }
2782bf215546Sopenharmony_ci				{ NUM_INDICES = 60 }
2783bf215546Sopenharmony_ci				{ FIRST_INDX = 0 }
2784bf215546Sopenharmony_ci				{ INDX_BASE = 0x10bd0ca8 }
2785bf215546Sopenharmony_ci				{ INDX_SIZE = 120 }
2786bf215546Sopenharmony_ci			draw[10] register values
2787bf215546Sopenharmony_ci!+	0000003d			CP_SCRATCH[0x5].REG: 0x3d
2788bf215546Sopenharmony_ci			:0,61,115,62
2789bf215546Sopenharmony_ci!+	0000003e			CP_SCRATCH[0x7].REG: 0x3e
2790bf215546Sopenharmony_ci			:0,61,115,62
2791bf215546Sopenharmony_ci +	02000001			PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
2792bf215546Sopenharmony_ci +	00000012			PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
2793bf215546Sopenharmony_ci +	ffffffff			PC_RESTART_INDEX: 0xffffffff
2794bf215546Sopenharmony_ci +	00000000			VFD_INDEX_OFFSET: 0
2795bf215546Sopenharmony_ci +	00000000			UNKNOWN_2209: 0
2796bf215546Sopenharmony_ci109cff20:			0000: c0053800 00000404 00000001 0000003c 00000000 10bd0ca8 00000078
2797bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
2798bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x3f
2799bf215546Sopenharmony_ci				:0,61,115,63
2800bf215546Sopenharmony_ci109cff3c:			0000: 0000057f 0000003f
2801bf215546Sopenharmony_cit0			write CP_SCRATCH[0x5].REG (057d)
2802bf215546Sopenharmony_ci				CP_SCRATCH[0x5].REG: 0x43
2803bf215546Sopenharmony_ci				:0,67,115,63
2804bf215546Sopenharmony_ci109cff44:			0000: 0000057d 00000043
2805bf215546Sopenharmony_cit0			write RB_DEPTH_CONTROL (2101)
2806bf215546Sopenharmony_ci				RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_READ_ENABLE }
2807bf215546Sopenharmony_ci109cff4c:			0000: 00002101 80000016
2808bf215546Sopenharmony_cit0			write GRAS_ALPHA_CONTROL (2073)
2809bf215546Sopenharmony_ci				GRAS_ALPHA_CONTROL: { 0 }
2810bf215546Sopenharmony_ci109cff54:			0000: 00002073 00000000
2811bf215546Sopenharmony_cit0			write PC_PRIM_VTX_CNTL (21c4)
2812bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
2813bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
2814bf215546Sopenharmony_ci109cff5c:			0000: 000121c4 02000001 00000012
2815bf215546Sopenharmony_cit0			write HLSQ_UPDATE_CONTROL (23db)
2816bf215546Sopenharmony_ci				HLSQ_UPDATE_CONTROL: 0x3
2817bf215546Sopenharmony_ci109cff68:			0000: 000023db 00000003
2818bf215546Sopenharmony_cit0			write HLSQ_CONTROL_0_REG (23c0)
2819bf215546Sopenharmony_ci				HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
2820bf215546Sopenharmony_ci				HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
2821bf215546Sopenharmony_ci				HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
2822bf215546Sopenharmony_ci				HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
2823bf215546Sopenharmony_ci				HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
2824bf215546Sopenharmony_ci109cff70:			0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfcfc 00fcfcfc
2825bf215546Sopenharmony_cit0			write HLSQ_VS_CONTROL_REG (23c5)
2826bf215546Sopenharmony_ci				HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
2827bf215546Sopenharmony_ci				HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
2828bf215546Sopenharmony_ci				HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
2829bf215546Sopenharmony_ci				HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
2830bf215546Sopenharmony_ci				HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
2831bf215546Sopenharmony_ci109cff88:			0000: 000423c5 04000042 017e423e 007e4200 007e4200 007e4200
2832bf215546Sopenharmony_cit0			write SP_SP_CTRL_REG (22c0)
2833bf215546Sopenharmony_ci				SP_SP_CTRL_REG: { 0x140010 }
2834bf215546Sopenharmony_ci109cffa0:			0000: 000022c0 00140010
2835bf215546Sopenharmony_cit0			write SP_INSTR_CACHE_CTRL (22c1)
2836bf215546Sopenharmony_ci				SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
2837bf215546Sopenharmony_ci109cffa8:			0000: 000022c1 000005ff
2838bf215546Sopenharmony_cit0			write SP_VS_LENGTH_REG (22e5)
2839bf215546Sopenharmony_ci				SP_VS_LENGTH_REG: 4
2840bf215546Sopenharmony_ci109cffb0:			0000: 000022e5 00000004
2841bf215546Sopenharmony_cit0			write SP_VS_CTRL_REG0 (22c4)
2842bf215546Sopenharmony_ci				SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
2843bf215546Sopenharmony_ci				SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
2844bf215546Sopenharmony_ci				SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
2845bf215546Sopenharmony_ci109cffb8:			0000: 000222c4 00201400 08000042 0010fc0a
2846bf215546Sopenharmony_cit0			write SP_VS_OUT[0].REG (22c7)
2847bf215546Sopenharmony_ci				SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
2848bf215546Sopenharmony_ci109cffc8:			0000: 000022c7 00001e0e
2849bf215546Sopenharmony_cit0			write SP_VS_VPC_DST[0].REG (22d8)
2850bf215546Sopenharmony_ci				SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
2851bf215546Sopenharmony_ci109cffd0:			0000: 000022d8 08080808
2852bf215546Sopenharmony_cit0			write SP_VS_OBJ_OFFSET_REG (22e0)
2853bf215546Sopenharmony_ci				SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
2854bf215546Sopenharmony_ci				SP_VS_OBJ_START: 0x10cd5000
2855bf215546Sopenharmony_ci109cffd8:			0000: 000122e0 00000000 10cd5000
2856bf215546Sopenharmony_cit0			write SP_FS_LENGTH_REG (22ef)
2857bf215546Sopenharmony_ci				SP_FS_LENGTH_REG: 1
2858bf215546Sopenharmony_ci109cffe4:			0000: 000022ef 00000001
2859bf215546Sopenharmony_cit0			write SP_FS_CTRL_REG0 (22e8)
2860bf215546Sopenharmony_ci				SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
2861bf215546Sopenharmony_ci				SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
2862bf215546Sopenharmony_ci109cffec:			0000: 000122e8 00340402 8010003e
2863bf215546Sopenharmony_cit0			write SP_FS_OBJ_OFFSET_REG (22ea)
2864bf215546Sopenharmony_ci				SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
2865bf215546Sopenharmony_ci				SP_FS_OBJ_START: 0x10cd2000
2866bf215546Sopenharmony_ci109cfff8:			0000: 000122ea 7e420000 10cd2000
2867bf215546Sopenharmony_cit0			write SP_HS_OBJ_OFFSET_REG (230d)
2868bf215546Sopenharmony_ci				SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
2869bf215546Sopenharmony_ci109d0004:			0000: 0000230d 7e420000
2870bf215546Sopenharmony_cit0			write SP_DS_OBJ_OFFSET_REG (2334)
2871bf215546Sopenharmony_ci				SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
2872bf215546Sopenharmony_ci109d000c:			0000: 00002334 7e420000
2873bf215546Sopenharmony_cit0			write SP_GS_OBJ_OFFSET_REG (235b)
2874bf215546Sopenharmony_ci				SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
2875bf215546Sopenharmony_ci109d0014:			0000: 0000235b 7e420000
2876bf215546Sopenharmony_cit0			write GRAS_CNTL (2003)
2877bf215546Sopenharmony_ci				GRAS_CNTL: { 0 }
2878bf215546Sopenharmony_ci109d001c:			0000: 00002003 00000000
2879bf215546Sopenharmony_cit0			write RB_RENDER_CONTROL2 (20a3)
2880bf215546Sopenharmony_ci				RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
2881bf215546Sopenharmony_ci109d0024:			0000: 000020a3 00000000
2882bf215546Sopenharmony_cit0			write RB_FS_OUTPUT_REG (2100)
2883bf215546Sopenharmony_ci				RB_FS_OUTPUT_REG: { MRT = 1 }
2884bf215546Sopenharmony_ci109d002c:			0000: 00002100 00000001
2885bf215546Sopenharmony_cit0			write SP_FS_OUTPUT_REG (22f0)
2886bf215546Sopenharmony_ci				SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
2887bf215546Sopenharmony_ci109d0034:			0000: 000022f0 0000fc01
2888bf215546Sopenharmony_cit0			write SP_FS_MRT[0].REG (22f1)
2889bf215546Sopenharmony_ci				SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
2890bf215546Sopenharmony_ci				SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
2891bf215546Sopenharmony_ci				SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
2892bf215546Sopenharmony_ci				SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
2893bf215546Sopenharmony_ci				SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
2894bf215546Sopenharmony_ci				SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
2895bf215546Sopenharmony_ci				SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
2896bf215546Sopenharmony_ci				SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
2897bf215546Sopenharmony_ci109d003c:			0000: 000722f1 0001a000 00000000 00000000 00000000 00000000 00000000 00000000
2898bf215546Sopenharmony_ci*
2899bf215546Sopenharmony_cit0			write VPC_ATTR (2140)
2900bf215546Sopenharmony_ci				VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
2901bf215546Sopenharmony_ci				VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
2902bf215546Sopenharmony_ci109d0060:			0000: 00012140 42001004 00040400
2903bf215546Sopenharmony_cit0			write VPC_VARYING_INTERP[0].MODE (2142)
2904bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0].MODE: 0x55
2905bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x1].MODE: 0
2906bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x2].MODE: 0
2907bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x3].MODE: 0
2908bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x4].MODE: 0
2909bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x5].MODE: 0
2910bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x6].MODE: 0
2911bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x7].MODE: 0
2912bf215546Sopenharmony_ci109d006c:			0000: 00072142 00000055 00000000 00000000 00000000 00000000 00000000 00000000
2913bf215546Sopenharmony_ci*
2914bf215546Sopenharmony_cit0			write VPC_VARYING_PS_REPL[0].MODE (214a)
2915bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0].MODE: 0
2916bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x1].MODE: 0
2917bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x2].MODE: 0
2918bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x3].MODE: 0
2919bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x4].MODE: 0
2920bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x5].MODE: 0
2921bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x6].MODE: 0
2922bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x7].MODE: 0
2923bf215546Sopenharmony_ci109d0090:			0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
2924bf215546Sopenharmony_ci*
2925bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (131 dwords)
2926bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 4 }
2927bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
2928bf215546Sopenharmony_ci				:2:0000:0000[40700000x_10000002x] mul.f r0.x, r0.z, c0.x
2929bf215546Sopenharmony_ci				:2:0001:0001[40700001x_10030002x] mul.f r0.y, r0.z, c0.w
2930bf215546Sopenharmony_ci				:3:0002:0002[63818000x_00001004x] mad.f32 r0.x, c1.x, r0.w, r0.x
2931bf215546Sopenharmony_ci				:3:0003:0003[63818001x_00011007x] mad.f32 r0.y, c1.w, r0.w, r0.y
2932bf215546Sopenharmony_ci				:3:0004:0004[63820000x_00001008x] mad.f32 r0.x, c2.x, r1.x, r0.x
2933bf215546Sopenharmony_ci				:3:0005:0005[63820001x_0001100bx] mad.f32 r0.y, c2.w, r1.x, r0.y
2934bf215546Sopenharmony_ci				:3:0006:0006[6382800ax_0000100cx] mad.f32 r2.z, c3.x, r1.y, r0.x
2935bf215546Sopenharmony_ci				:2:0007:0007[40700000x_10010002x] mul.f r0.x, r0.z, c0.y
2936bf215546Sopenharmony_ci				:3:0008:0008[6382800dx_0001100fx] mad.f32 r3.y, c3.w, r1.y, r0.y
2937bf215546Sopenharmony_ci				:3:0009:0009[63818000x_00001005x] mad.f32 r0.x, c1.y, r0.w, r0.x
2938bf215546Sopenharmony_ci				:1:0010:0010[20244001x_00000010x] mov.f32f32 r0.y, c4.x
2939bf215546Sopenharmony_ci				:3:0011:0011[63820000x_00001009x] mad.f32 r0.x, c2.y, r1.x, r0.x
2940bf215546Sopenharmony_ci				:0:0012:0012[00000000x_00000000x] nop
2941bf215546Sopenharmony_ci				:3:0013:0013[6382800bx_0000100dx] mad.f32 r2.w, c3.y, r1.y, r0.x
2942bf215546Sopenharmony_ci				:2:0014:0014[40700000x_10020002x] mul.f r0.x, r0.z, c0.z
2943bf215546Sopenharmony_ci				:2:0015:0015[40100001x_0001101cx] add.f r0.y, c7.x, r0.y
2944bf215546Sopenharmony_ci				:3:0016:0016[63818000x_00001006x] mad.f32 r0.x, c1.z, r0.w, r0.x
2945bf215546Sopenharmony_ci				:1:0017:0017[20244002x_00000011x] mov.f32f32 r0.z, c4.y
2946bf215546Sopenharmony_ci				:3:0018:0018[63820000x_0000100ax] mad.f32 r0.x, c2.z, r1.x, r0.x
2947bf215546Sopenharmony_ci				:1:0019:0019[20244004x_00000013x] mov.f32f32 r1.x, c4.w
2948bf215546Sopenharmony_ci				:3:0020:0020[6382800cx_0000100ex] mad.f32 r3.x, c3.z, r1.y, r0.x
2949bf215546Sopenharmony_ci				:2:0021:0021[40700000x_00070007x] mul.f r0.x, r1.w, r1.w
2950bf215546Sopenharmony_ci				:2:0022:0022[40100002x_0002101dx] add.f r0.z, c7.y, r0.z
2951bf215546Sopenharmony_ci				:3:0023:0023[63830000x_00000006x] mad.f32 r0.x, r1.z, r1.z, r0.x
2952bf215546Sopenharmony_ci				:2:0024:0024[40500411x_00041013x] (sat)max.f r4.y, c4.w, r1.x
2953bf215546Sopenharmony_ci				:3:0025:0025[63840000x_00000008x] mad.f32 r0.x, r2.x, r2.x, r0.x
2954bf215546Sopenharmony_ci				:1:0026:0026[20244003x_00000012x] mov.f32f32 r0.w, c4.z
2955bf215546Sopenharmony_ci				:0:0027:0027[00000200x_00000000x] (rpt2)nop
2956bf215546Sopenharmony_ci				:2:0028:0030[40100003x_0003101ex] add.f r0.w, c7.z, r0.w
2957bf215546Sopenharmony_ci				:0:0029:0031[00000000x_00000000x] nop
2958bf215546Sopenharmony_ci				:4:0030:0032[80300000x_00000000x] rsq r0.x, r0.x
2959bf215546Sopenharmony_ci				:2:0031:0033[40701004x_00000007x] (ss)mul.f r1.x, r1.w, r0.x
2960bf215546Sopenharmony_ci				:0:0032:0034[00000200x_00000000x] (rpt2)nop
2961bf215546Sopenharmony_ci				:2:0033:0037[40700004x_10150004x] mul.f r1.x, r1.x, c5.y
2962bf215546Sopenharmony_ci				:2:0034:0038[40700005x_00000006x] mul.f r1.y, r1.z, r0.x
2963bf215546Sopenharmony_ci				:0:0035:0039[00000200x_00000000x] (rpt2)nop
2964bf215546Sopenharmony_ci				:3:0036:0042[63828004x_00041014x] mad.f32 r1.x, c5.x, r1.y, r1.x
2965bf215546Sopenharmony_ci				:2:0037:0043[40700000x_00000008x] mul.f r0.x, r2.x, r0.x
2966bf215546Sopenharmony_ci				:0:0038:0044[00000200x_00000000x] (rpt2)nop
2967bf215546Sopenharmony_ci				:3:0039:0047[63800000x_00041016x] mad.f32 r0.x, c5.z, r0.x, r1.x
2968bf215546Sopenharmony_ci				:0:0040:0048[00000200x_00000000x] (rpt2)nop
2969bf215546Sopenharmony_ci				:2:0041:0051[40b00004x_00001034x] cmps.f.lt r1.x, c13.x, r0.x
2970bf215546Sopenharmony_ci				:2:0042:0052[40500000x_00001034x] max.f r0.x, c13.x, r0.x
2971bf215546Sopenharmony_ci				:0:0043:0053[00000100x_00000000x] (rpt1)nop
2972bf215546Sopenharmony_ci				:1:0044:0055[200c4004x_00000004x] cov.u32f32 r1.x, r1.x
2973bf215546Sopenharmony_ci				:3:0045:0056[63800001x_00011020x] mad.f32 r0.y, c8.x, r0.x, r0.y
2974bf215546Sopenharmony_ci				:3:0046:0057[63800002x_00021021x] mad.f32 r0.z, c8.y, r0.x, r0.z
2975bf215546Sopenharmony_ci				:3:0047:0058[63800000x_00031022x] mad.f32 r0.x, c8.z, r0.x, r0.w
2976bf215546Sopenharmony_ci				:3:0048:0059[6382040ex_00011024x] (sat)mad.f32 r3.z, c9.x, r1.x, r0.y
2977bf215546Sopenharmony_ci				:3:0049:0060[6382040fx_00021025x] (sat)mad.f32 r3.w, c9.y, r1.x, r0.z
2978bf215546Sopenharmony_ci				:3:0050:0061[63820410x_00001026x] (sat)mad.f32 r4.x, c9.z, r1.x, r0.x
2979bf215546Sopenharmony_ci				:0:0051:0062[03000000x_00000000x] end
2980bf215546Sopenharmony_ci				:0:0052:0063[00000000x_00000000x] nop
2981bf215546Sopenharmony_ci				:0:0053:0064[00000000x_00000000x] nop
2982bf215546Sopenharmony_ci				:0:0054:0065[00000000x_00000000x] nop
2983bf215546Sopenharmony_ci				:0:0055:0066[00000000x_00000000x] nop
2984bf215546Sopenharmony_ci				Stats:
2985bf215546Sopenharmony_ci				- shaderdb: 67 instr, 23 nops, 44 non-nops, 4 mov, 1 cov
2986bf215546Sopenharmony_ci				- shaderdb: 0 last-baryf, 0 half, 5 full, 13 constlen
2987bf215546Sopenharmony_ci				- shaderdb: 24 cat0, 5 cat1, 15 cat2, 22 cat3, 1 cat4, 0 cat5, 0 cat6, 0 cat7
2988bf215546Sopenharmony_ci				- shaderdb: 10 sstall, 1 (ss), 0 (sy)
2989bf215546Sopenharmony_ci109d00b4:			0000: c0813000 01200000 00000000 10000002 40700000 10030002 40700001 00001004
2990bf215546Sopenharmony_ci109d00d4:			0020: 63818000 00011007 63818001 00001008 63820000 0001100b 63820001 0000100c
2991bf215546Sopenharmony_ci109d00f4:			0040: 6382800a 10010002 40700000 0001100f 6382800d 00001005 63818000 00000010
2992bf215546Sopenharmony_ci109d0114:			0060: 20244001 00001009 63820000 00000000 00000000 0000100d 6382800b 10020002
2993bf215546Sopenharmony_ci109d0134:			0080: 40700000 0001101c 40100001 00001006 63818000 00000011 20244002 0000100a
2994bf215546Sopenharmony_ci109d0154:			00a0: 63820000 00000013 20244004 0000100e 6382800c 00070007 40700000 0002101d
2995bf215546Sopenharmony_ci109d0174:			00c0: 40100002 00000006 63830000 00041013 40500411 00000008 63840000 00000012
2996bf215546Sopenharmony_ci109d0194:			00e0: 20244003 00000000 00000200 0003101e 40100003 00000000 00000000 00000000
2997bf215546Sopenharmony_ci109d01b4:			0100: 80300000 00000007 40701004 00000000 00000200 10150004 40700004 00000006
2998bf215546Sopenharmony_ci109d01d4:			0120: 40700005 00000000 00000200 00041014 63828004 00000008 40700000 00000000
2999bf215546Sopenharmony_ci109d01f4:			0140: 00000200 00041016 63800000 00000000 00000200 00001034 40b00004 00001034
3000bf215546Sopenharmony_ci109d0214:			0160: 40500000 00000000 00000100 00000004 200c4004 00011020 63800001 00021021
3001bf215546Sopenharmony_ci109d0234:			0180: 63800002 00031022 63800000 00011024 6382040e 00021025 6382040f 00001026
3002bf215546Sopenharmony_ci109d0254:			01a0: 63820410 00000000 03000000 00000000 00000000 00000000 00000000 00000000
3003bf215546Sopenharmony_ci*
3004bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (35 dwords)
3005bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
3006bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
3007bf215546Sopenharmony_ci				:0:0000:0000[00000000x_00000000x] nop
3008bf215546Sopenharmony_ci				:6:0001:0001[c7c60000x_01c00000x] ldlv.u32 r0.x, l[0], 1
3009bf215546Sopenharmony_ci				:6:0002:0002[c7c60001x_01c00002x] ldlv.u32 r0.y, l[1], 1
3010bf215546Sopenharmony_ci				:6:0003:0003[c7c60002x_01c00004x] ldlv.u32 r0.z, l[2], 1
3011bf215546Sopenharmony_ci				:6:0004:0004[c7c60003x_01c00006x] ldlv.u32 r0.w, l[3], 1
3012bf215546Sopenharmony_ci				:2:0005:0005[473090fcx_00002000x] (ss)bary.f (ei)r63.x, 0, r0.x
3013bf215546Sopenharmony_ci				:0:0006:0006[03000000x_00000000x] end
3014bf215546Sopenharmony_ci				:0:0007:0007[00000000x_00000000x] nop
3015bf215546Sopenharmony_ci				:0:0008:0008[00000000x_00000000x] nop
3016bf215546Sopenharmony_ci				:0:0009:0009[00000000x_00000000x] nop
3017bf215546Sopenharmony_ci				:0:0010:0010[00000000x_00000000x] nop
3018bf215546Sopenharmony_ci				Stats:
3019bf215546Sopenharmony_ci				- shaderdb: 11 instr, 5 nops, 6 non-nops, 0 mov, 0 cov
3020bf215546Sopenharmony_ci				- shaderdb: 5 last-baryf, 0 half, 1 full, 0 constlen
3021bf215546Sopenharmony_ci				- shaderdb: 6 cat0, 0 cat1, 1 cat2, 0 cat3, 0 cat4, 0 cat5, 4 cat6, 0 cat7
3022bf215546Sopenharmony_ci				- shaderdb: 0 sstall, 1 (ss), 0 (sy)
3023bf215546Sopenharmony_ci109d02c0:			0000: c0213000 00700000 00000000 00000000 00000000 01c00000 c7c60000 01c00002
3024bf215546Sopenharmony_ci109d02e0:			0020: c7c60001 01c00004 c7c60002 01c00006 c7c60003 00002000 473090fc 00000000
3025bf215546Sopenharmony_ci109d0300:			0040: 03000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3026bf215546Sopenharmony_ci*
3027bf215546Sopenharmony_cit3			opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
3028bf215546Sopenharmony_ci109d034c:			0000: c0002600 00000000
3029bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (51 dwords)
3030bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
3031bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
3032bf215546Sopenharmony_ci109d0360:				4.276816 0.109522 0.611668 0.517565 0.677381 4.774377 -0.312365 -0.264309
3033bf215546Sopenharmony_ci109d0380:				2.500000 -1.480991 -0.961761 -0.813798 13.423393 -6.746271 38.893391 42.140564
3034bf215546Sopenharmony_ci109d03a0:				0.000000 0.160000 0.040000 1.000000 -0.064448 0.660942 0.747665 0.000000
3035bf215546Sopenharmony_ci109d03c0:				1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000
3036bf215546Sopenharmony_ci109d03e0:				0.000000 0.800000 0.200000 1.000000 0.000000 0.000000 0.000000 1.000000
3037bf215546Sopenharmony_ci109d0400:				0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000
3038bf215546Sopenharmony_ci109d0360:				0000: 4088dbad 3de04cdc 3f1c964b 3f047f2c 3f2d68da 4098c7b2 be9fee59 be875387
3039bf215546Sopenharmony_ci109d0380:				0020: 40200000 bfbd9119 bf7635f5 bf50550b 4156c638 c0d7e173 421b92d5 42288ff0
3040bf215546Sopenharmony_ci109d03a0:				0040: 00000000 3e23d70b 3d23d70b 3f800000 bd83fd0e 3f293379 3f3f66f5 00000000
3041bf215546Sopenharmony_ci109d03c0:				0060: 3f800000 00000000 00000000 00000000 00000000 00000000 00000000 3f800000
3042bf215546Sopenharmony_ci109d03e0:				0080: 00000000 3f4ccccd 3e4ccccd 3f800000 00000000 00000000 00000000 3f800000
3043bf215546Sopenharmony_ci109d0400:				00a0: 00000000 00000000 00000000 3f800000 02020000 02020202 02020202 00000202
3044bf215546Sopenharmony_ci109d0354:			0000: c0313000 03200000 00000001 4088dbad 3de04cdc 3f1c964b 3f047f2c 3f2d68da
3045bf215546Sopenharmony_ci109d0374:			0020: 4098c7b2 be9fee59 be875387 40200000 bfbd9119 bf7635f5 bf50550b 4156c638
3046bf215546Sopenharmony_ci109d0394:			0040: c0d7e173 421b92d5 42288ff0 00000000 3e23d70b 3d23d70b 3f800000 bd83fd0e
3047bf215546Sopenharmony_ci109d03b4:			0060: 3f293379 3f3f66f5 00000000 3f800000 00000000 00000000 00000000 00000000
3048bf215546Sopenharmony_ci109d03d4:			0080: 00000000 00000000 3f800000 00000000 3f4ccccd 3e4ccccd 3f800000 00000000
3049bf215546Sopenharmony_ci109d03f4:			00a0: 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000 02020000
3050bf215546Sopenharmony_ci109d0414:			00c0: 02020202 02020202 00000202
3051bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (7 dwords)
3052bf215546Sopenharmony_ci				{ DST_OFF = 13 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 1 }
3053bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
3054bf215546Sopenharmony_ci109d042c:				0.000000 -28026765312.000000 -28026765312.000000 -28026765312.000000
3055bf215546Sopenharmony_ci109d042c:				0000: 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
3056bf215546Sopenharmony_ci109d0420:			0000: c0053000 0060000d 00000001 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
3057bf215546Sopenharmony_cit0			write VFD_FETCH[0].INSTR_0 (220a)
3058bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 | SWITCHNEXT }
3059bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_1: 0x107cb000
3060bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
3061bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
3062bf215546Sopenharmony_ci109d043c:			0000: 0003220a 00080c0b 107cb000 00100000 00000001
3063bf215546Sopenharmony_cit0			write VFD_DECODE[0].INSTR (228a)
3064bf215546Sopenharmony_ci				VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID | SWITCHNEXT }
3065bf215546Sopenharmony_ci109d0450:			0000: 0000228a 6c0020df
3066bf215546Sopenharmony_cit0			write VFD_FETCH[0x1].INSTR_0 (220e)
3067bf215546Sopenharmony_ci				VFD_FETCH[0x1].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 }
3068bf215546Sopenharmony_ci				VFD_FETCH[0x1].INSTR_1: 0x107cb00c
3069bf215546Sopenharmony_ci				VFD_FETCH[0x1].INSTR_2: { SIZE = 0xffff4 }
3070bf215546Sopenharmony_ci				VFD_FETCH[0x1].INSTR_3: { STEPRATE = 1 }
3071bf215546Sopenharmony_ci109d0458:			0000: 0003220e 00000c0b 107cb00c 000ffff4 00000001
3072bf215546Sopenharmony_cit0			write VFD_DECODE[0x1].INSTR (228b)
3073bf215546Sopenharmony_ci				VFD_DECODE[0x1].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r1.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
3074bf215546Sopenharmony_ci109d046c:			0000: 0000228b 2c0060df
3075bf215546Sopenharmony_cit0			write VFD_CONTROL_0 (2200)
3076bf215546Sopenharmony_ci				VFD_CONTROL_0: { TOTALATTRTOVS = 8 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 2 | STRMFETCHINSTRCNT = 2 | 0xa0000 }
3077bf215546Sopenharmony_ci				VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
3078bf215546Sopenharmony_ci				VFD_CONTROL_2: 0
3079bf215546Sopenharmony_ci				VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
3080bf215546Sopenharmony_ci				VFD_CONTROL_4: 0
3081bf215546Sopenharmony_ci109d0474:			0000: 00042200 082a0008 fcfc0081 00000000 0000fc00 00000000
3082bf215546Sopenharmony_cit0			write UCHE_INVALIDATE0 (0e8a)
3083bf215546Sopenharmony_ci				UCHE_INVALIDATE0: 0
3084bf215546Sopenharmony_ci				UCHE_INVALIDATE1: 0x12
3085bf215546Sopenharmony_ci109d048c:			0000: 00010e8a 00000000 00000012
3086bf215546Sopenharmony_cit0			write VFD_INDEX_OFFSET (2208)
3087bf215546Sopenharmony_ci				VFD_INDEX_OFFSET: 0
3088bf215546Sopenharmony_ci				UNKNOWN_2209: 0
3089bf215546Sopenharmony_ci109d0498:			0000: 00012208 00000000 00000000
3090bf215546Sopenharmony_cit0			write PC_RESTART_INDEX (21c6)
3091bf215546Sopenharmony_ci				PC_RESTART_INDEX: 0xffffffff
3092bf215546Sopenharmony_ci109d04a4:			0000: 000021c6 ffffffff
3093bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
3094bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x44
3095bf215546Sopenharmony_ci				:0,67,115,68
3096bf215546Sopenharmony_ci109d04ac:			0000: 0000057f 00000044
3097bf215546Sopenharmony_cit3			opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
3098bf215546Sopenharmony_ci				{ 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 }
3099bf215546Sopenharmony_ci				{ NUM_INSTANCES = 1 }
3100bf215546Sopenharmony_ci				{ NUM_INDICES = 240 }
3101bf215546Sopenharmony_ci				{ FIRST_INDX = 0 }
3102bf215546Sopenharmony_ci				{ INDX_BASE = 0x10bd0d20 }
3103bf215546Sopenharmony_ci				{ INDX_SIZE = 480 }
3104bf215546Sopenharmony_ci			draw[11] register values
3105bf215546Sopenharmony_ci!+	00000043			CP_SCRATCH[0x5].REG: 0x43
3106bf215546Sopenharmony_ci			:0,67,115,68
3107bf215546Sopenharmony_ci!+	00000044			CP_SCRATCH[0x7].REG: 0x44
3108bf215546Sopenharmony_ci			:0,67,115,68
3109bf215546Sopenharmony_ci +	00000000			UCHE_INVALIDATE0: 0
3110bf215546Sopenharmony_ci +	00000012			UCHE_INVALIDATE1: 0x12
3111bf215546Sopenharmony_ci +	00000000			GRAS_CNTL: { 0 }
3112bf215546Sopenharmony_ci +	00000000			GRAS_ALPHA_CONTROL: { 0 }
3113bf215546Sopenharmony_ci +	00000000			RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
3114bf215546Sopenharmony_ci +	00000001			RB_FS_OUTPUT_REG: { MRT = 1 }
3115bf215546Sopenharmony_ci +	80000016			RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_READ_ENABLE }
3116bf215546Sopenharmony_ci +	42001004			VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
3117bf215546Sopenharmony_ci +	00040400			VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
3118bf215546Sopenharmony_ci +	00000055			VPC_VARYING_INTERP[0].MODE: 0x55
3119bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x1].MODE: 0
3120bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x2].MODE: 0
3121bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x3].MODE: 0
3122bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x4].MODE: 0
3123bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x5].MODE: 0
3124bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x6].MODE: 0
3125bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x7].MODE: 0
3126bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0].MODE: 0
3127bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x1].MODE: 0
3128bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x2].MODE: 0
3129bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x3].MODE: 0
3130bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x4].MODE: 0
3131bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x5].MODE: 0
3132bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x6].MODE: 0
3133bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x7].MODE: 0
3134bf215546Sopenharmony_ci +	02000001			PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
3135bf215546Sopenharmony_ci +	00000012			PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
3136bf215546Sopenharmony_ci +	ffffffff			PC_RESTART_INDEX: 0xffffffff
3137bf215546Sopenharmony_ci!+	082a0008			VFD_CONTROL_0: { TOTALATTRTOVS = 8 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 2 | STRMFETCHINSTRCNT = 2 | 0xa0000 }
3138bf215546Sopenharmony_ci +	fcfc0081			VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
3139bf215546Sopenharmony_ci +	00000000			VFD_CONTROL_2: 0
3140bf215546Sopenharmony_ci +	0000fc00			VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
3141bf215546Sopenharmony_ci +	00000000			VFD_CONTROL_4: 0
3142bf215546Sopenharmony_ci +	00000000			VFD_INDEX_OFFSET: 0
3143bf215546Sopenharmony_ci +	00000000			UNKNOWN_2209: 0
3144bf215546Sopenharmony_ci!+	00080c0b			VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 | SWITCHNEXT }
3145bf215546Sopenharmony_ci +	107cb000			VFD_FETCH[0].INSTR_1: 0x107cb000
3146bf215546Sopenharmony_ci +	00100000			VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
3147bf215546Sopenharmony_ci +	00000001			VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
3148bf215546Sopenharmony_ci +	00000c0b			VFD_FETCH[0x1].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 }
3149bf215546Sopenharmony_ci +	107cb00c			VFD_FETCH[0x1].INSTR_1: 0x107cb00c
3150bf215546Sopenharmony_ci +	000ffff4			VFD_FETCH[0x1].INSTR_2: { SIZE = 0xffff4 }
3151bf215546Sopenharmony_ci +	00000001			VFD_FETCH[0x1].INSTR_3: { STEPRATE = 1 }
3152bf215546Sopenharmony_ci!+	6c0020df			VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID | SWITCHNEXT }
3153bf215546Sopenharmony_ci +	2c0060df			VFD_DECODE[0x1].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r1.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
3154bf215546Sopenharmony_ci +	00140010			SP_SP_CTRL_REG: { 0x140010 }
3155bf215546Sopenharmony_ci +	000005ff			SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
3156bf215546Sopenharmony_ci!+	00201400			SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
3157bf215546Sopenharmony_ci!+	08000042			SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
3158bf215546Sopenharmony_ci!+	0010fc0a			SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
3159bf215546Sopenharmony_ci!+	00001e0e			SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
3160bf215546Sopenharmony_ci +	08080808			SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
3161bf215546Sopenharmony_ci +	00000000			SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
3162bf215546Sopenharmony_ci!+	10cd5000			SP_VS_OBJ_START: 0x10cd5000
3163bf215546Sopenharmony_ci +	00000004			SP_VS_LENGTH_REG: 4
3164bf215546Sopenharmony_ci +	00340402			SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
3165bf215546Sopenharmony_ci +	8010003e			SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
3166bf215546Sopenharmony_ci +	7e420000			SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3167bf215546Sopenharmony_ci +	10cd2000			SP_FS_OBJ_START: 0x10cd2000
3168bf215546Sopenharmony_ci +	00000001			SP_FS_LENGTH_REG: 1
3169bf215546Sopenharmony_ci +	0000fc01			SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
3170bf215546Sopenharmony_ci +	0001a000			SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
3171bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
3172bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
3173bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
3174bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
3175bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
3176bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
3177bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
3178bf215546Sopenharmony_ci +	7e420000			SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3179bf215546Sopenharmony_ci +	7e420000			SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3180bf215546Sopenharmony_ci +	7e420000			SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3181bf215546Sopenharmony_ci +	28000250			HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
3182bf215546Sopenharmony_ci +	fcfc0100			HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
3183bf215546Sopenharmony_ci +	fff3f3f0			HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
3184bf215546Sopenharmony_ci +	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 }
3185bf215546Sopenharmony_ci +	00fcfcfc			HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
3186bf215546Sopenharmony_ci +	04000042			HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
3187bf215546Sopenharmony_ci +	017e423e			HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
3188bf215546Sopenharmony_ci +	007e4200			HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
3189bf215546Sopenharmony_ci +	007e4200			HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
3190bf215546Sopenharmony_ci +	007e4200			HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
3191bf215546Sopenharmony_ci +	00000003			HLSQ_UPDATE_CONTROL: 0x3
3192bf215546Sopenharmony_ci109d04b4:			0000: c0053800 00000404 00000001 000000f0 00000000 10bd0d20 000001e0
3193bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
3194bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x45
3195bf215546Sopenharmony_ci				:0,67,115,69
3196bf215546Sopenharmony_ci109d04d0:			0000: 0000057f 00000045
3197bf215546Sopenharmony_cit0			write CP_SCRATCH[0x5].REG (057d)
3198bf215546Sopenharmony_ci				CP_SCRATCH[0x5].REG: 0x49
3199bf215546Sopenharmony_ci				:0,73,115,69
3200bf215546Sopenharmony_ci109d04d8:			0000: 0000057d 00000049
3201bf215546Sopenharmony_cit0			write RB_DEPTH_CONTROL (2101)
3202bf215546Sopenharmony_ci				RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_READ_ENABLE }
3203bf215546Sopenharmony_ci109d04e0:			0000: 00002101 80000016
3204bf215546Sopenharmony_cit0			write GRAS_ALPHA_CONTROL (2073)
3205bf215546Sopenharmony_ci				GRAS_ALPHA_CONTROL: { 0 }
3206bf215546Sopenharmony_ci109d04e8:			0000: 00002073 00000000
3207bf215546Sopenharmony_cit0			write GRAS_SU_MODE_CONTROL (2078)
3208bf215546Sopenharmony_ci				GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
3209bf215546Sopenharmony_ci109d04f0:			0000: 00002078 00100012
3210bf215546Sopenharmony_cit0			write GRAS_SU_POINT_MINMAX (2070)
3211bf215546Sopenharmony_ci				GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
3212bf215546Sopenharmony_ci				GRAS_SU_POINT_SIZE: 1.000000
3213bf215546Sopenharmony_ci109d04f8:			0000: 00012070 00100010 00000010
3214bf215546Sopenharmony_cit0			write GRAS_SU_POLY_OFFSET_SCALE (2074)
3215bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_SCALE: 0.000000
3216bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
3217bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
3218bf215546Sopenharmony_ci109d0504:			0000: 00022074 00000000 00000000 00000000
3219bf215546Sopenharmony_cit0			write GRAS_CL_CLIP_CNTL (2000)
3220bf215546Sopenharmony_ci				GRAS_CL_CLIP_CNTL: { 0x80000 }
3221bf215546Sopenharmony_ci109d0514:			0000: 00002000 00080000
3222bf215546Sopenharmony_cit0			write PC_PRIM_VTX_CNTL (21c4)
3223bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
3224bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
3225bf215546Sopenharmony_ci109d051c:			0000: 000121c4 02000001 00000012
3226bf215546Sopenharmony_cit0			write GRAS_SC_WINDOW_SCISSOR_BR (209c)
3227bf215546Sopenharmony_ci				GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
3228bf215546Sopenharmony_ci				GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
3229bf215546Sopenharmony_ci109d0528:			0000: 0001209c 012b012b 00000000
3230bf215546Sopenharmony_cit0			write RB_VPORT_Z_CLAMP[0].MIN (2120)
3231bf215546Sopenharmony_ci				RB_VPORT_Z_CLAMP[0].MIN: 0
3232bf215546Sopenharmony_ci				RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
3233bf215546Sopenharmony_ci109d0534:			0000: 00012120 00000000 00ffffff
3234bf215546Sopenharmony_cit0			write HLSQ_UPDATE_CONTROL (23db)
3235bf215546Sopenharmony_ci				HLSQ_UPDATE_CONTROL: 0x3
3236bf215546Sopenharmony_ci109d0540:			0000: 000023db 00000003
3237bf215546Sopenharmony_cit0			write HLSQ_CONTROL_0_REG (23c0)
3238bf215546Sopenharmony_ci				HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
3239bf215546Sopenharmony_ci				HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
3240bf215546Sopenharmony_ci				HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
3241bf215546Sopenharmony_ci				HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r0.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
3242bf215546Sopenharmony_ci				HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
3243bf215546Sopenharmony_ci109d0548:			0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfc00 00fcfcfc
3244bf215546Sopenharmony_cit0			write HLSQ_VS_CONTROL_REG (23c5)
3245bf215546Sopenharmony_ci				HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
3246bf215546Sopenharmony_ci				HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
3247bf215546Sopenharmony_ci				HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
3248bf215546Sopenharmony_ci				HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
3249bf215546Sopenharmony_ci				HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
3250bf215546Sopenharmony_ci109d0560:			0000: 000423c5 04000042 017e423e 007e4200 007e4200 007e4200
3251bf215546Sopenharmony_cit0			write SP_SP_CTRL_REG (22c0)
3252bf215546Sopenharmony_ci				SP_SP_CTRL_REG: { 0x140010 }
3253bf215546Sopenharmony_ci109d0578:			0000: 000022c0 00140010
3254bf215546Sopenharmony_cit0			write SP_INSTR_CACHE_CTRL (22c1)
3255bf215546Sopenharmony_ci				SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
3256bf215546Sopenharmony_ci109d0580:			0000: 000022c1 000005ff
3257bf215546Sopenharmony_cit0			write SP_VS_LENGTH_REG (22e5)
3258bf215546Sopenharmony_ci				SP_VS_LENGTH_REG: 4
3259bf215546Sopenharmony_ci109d0588:			0000: 000022e5 00000004
3260bf215546Sopenharmony_cit0			write SP_VS_CTRL_REG0 (22c4)
3261bf215546Sopenharmony_ci				SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
3262bf215546Sopenharmony_ci				SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
3263bf215546Sopenharmony_ci				SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
3264bf215546Sopenharmony_ci109d0590:			0000: 000222c4 00201400 08000042 0010fc0a
3265bf215546Sopenharmony_cit0			write SP_VS_OUT[0].REG (22c7)
3266bf215546Sopenharmony_ci				SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
3267bf215546Sopenharmony_ci109d05a0:			0000: 000022c7 00001e0e
3268bf215546Sopenharmony_cit0			write SP_VS_VPC_DST[0].REG (22d8)
3269bf215546Sopenharmony_ci				SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
3270bf215546Sopenharmony_ci109d05a8:			0000: 000022d8 08080808
3271bf215546Sopenharmony_cit0			write SP_VS_OBJ_OFFSET_REG (22e0)
3272bf215546Sopenharmony_ci				SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
3273bf215546Sopenharmony_ci				SP_VS_OBJ_START: 0x10cd5000
3274bf215546Sopenharmony_ci109d05b0:			0000: 000122e0 00000000 10cd5000
3275bf215546Sopenharmony_cit0			write SP_FS_LENGTH_REG (22ef)
3276bf215546Sopenharmony_ci				SP_FS_LENGTH_REG: 1
3277bf215546Sopenharmony_ci109d05bc:			0000: 000022ef 00000001
3278bf215546Sopenharmony_cit0			write SP_FS_CTRL_REG0 (22e8)
3279bf215546Sopenharmony_ci				SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 2 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
3280bf215546Sopenharmony_ci				SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
3281bf215546Sopenharmony_ci109d05c4:			0000: 000122e8 00340802 8010003e
3282bf215546Sopenharmony_cit0			write SP_FS_OBJ_OFFSET_REG (22ea)
3283bf215546Sopenharmony_ci				SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3284bf215546Sopenharmony_ci				SP_FS_OBJ_START: 0x108cb000
3285bf215546Sopenharmony_ci109d05d0:			0000: 000122ea 7e420000 108cb000
3286bf215546Sopenharmony_cit0			write SP_HS_OBJ_OFFSET_REG (230d)
3287bf215546Sopenharmony_ci				SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3288bf215546Sopenharmony_ci109d05dc:			0000: 0000230d 7e420000
3289bf215546Sopenharmony_cit0			write SP_DS_OBJ_OFFSET_REG (2334)
3290bf215546Sopenharmony_ci				SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3291bf215546Sopenharmony_ci109d05e4:			0000: 00002334 7e420000
3292bf215546Sopenharmony_cit0			write SP_GS_OBJ_OFFSET_REG (235b)
3293bf215546Sopenharmony_ci				SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3294bf215546Sopenharmony_ci109d05ec:			0000: 0000235b 7e420000
3295bf215546Sopenharmony_cit0			write GRAS_CNTL (2003)
3296bf215546Sopenharmony_ci				GRAS_CNTL: { IJ_PERSP }
3297bf215546Sopenharmony_ci109d05f4:			0000: 00002003 00000001
3298bf215546Sopenharmony_cit0			write RB_RENDER_CONTROL2 (20a3)
3299bf215546Sopenharmony_ci				RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 | IJ_PERSP_PIXEL }
3300bf215546Sopenharmony_ci109d05fc:			0000: 000020a3 00001000
3301bf215546Sopenharmony_cit0			write RB_FS_OUTPUT_REG (2100)
3302bf215546Sopenharmony_ci				RB_FS_OUTPUT_REG: { MRT = 1 }
3303bf215546Sopenharmony_ci109d0604:			0000: 00002100 00000001
3304bf215546Sopenharmony_cit0			write SP_FS_OUTPUT_REG (22f0)
3305bf215546Sopenharmony_ci				SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
3306bf215546Sopenharmony_ci109d060c:			0000: 000022f0 0000fc01
3307bf215546Sopenharmony_cit0			write SP_FS_MRT[0].REG (22f1)
3308bf215546Sopenharmony_ci				SP_FS_MRT[0].REG: { REGID = r0.z | MRTFORMAT = RB4_R8G8B8A8_UNORM }
3309bf215546Sopenharmony_ci				SP_FS_MRT[0x1].REG: { REGID = r0.z | MRTFORMAT = 0 }
3310bf215546Sopenharmony_ci				SP_FS_MRT[0x2].REG: { REGID = r0.z | MRTFORMAT = 0 }
3311bf215546Sopenharmony_ci				SP_FS_MRT[0x3].REG: { REGID = r0.z | MRTFORMAT = 0 }
3312bf215546Sopenharmony_ci				SP_FS_MRT[0x4].REG: { REGID = r0.z | MRTFORMAT = 0 }
3313bf215546Sopenharmony_ci				SP_FS_MRT[0x5].REG: { REGID = r0.z | MRTFORMAT = 0 }
3314bf215546Sopenharmony_ci				SP_FS_MRT[0x6].REG: { REGID = r0.z | MRTFORMAT = 0 }
3315bf215546Sopenharmony_ci				SP_FS_MRT[0x7].REG: { REGID = r0.z | MRTFORMAT = 0 }
3316bf215546Sopenharmony_ci109d0614:			0000: 000722f1 0001a002 00000002 00000002 00000002 00000002 00000002 00000002
3317bf215546Sopenharmony_ci109d0634:			0020: 00000002
3318bf215546Sopenharmony_cit0			write VPC_ATTR (2140)
3319bf215546Sopenharmony_ci				VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
3320bf215546Sopenharmony_ci				VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
3321bf215546Sopenharmony_ci109d0638:			0000: 00012140 42001004 00040400
3322bf215546Sopenharmony_cit0			write VPC_VARYING_INTERP[0].MODE (2142)
3323bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0].MODE: 0
3324bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x1].MODE: 0
3325bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x2].MODE: 0
3326bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x3].MODE: 0
3327bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x4].MODE: 0
3328bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x5].MODE: 0
3329bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x6].MODE: 0
3330bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x7].MODE: 0
3331bf215546Sopenharmony_ci109d0644:			0000: 00072142 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3332bf215546Sopenharmony_ci*
3333bf215546Sopenharmony_cit0			write VPC_VARYING_PS_REPL[0].MODE (214a)
3334bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0].MODE: 0
3335bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x1].MODE: 0
3336bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x2].MODE: 0
3337bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x3].MODE: 0
3338bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x4].MODE: 0
3339bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x5].MODE: 0
3340bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x6].MODE: 0
3341bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x7].MODE: 0
3342bf215546Sopenharmony_ci109d0668:			0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3343bf215546Sopenharmony_ci*
3344bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (131 dwords)
3345bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 4 }
3346bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
3347bf215546Sopenharmony_ci				:2:0000:0000[40700000x_10000002x] mul.f r0.x, r0.z, c0.x
3348bf215546Sopenharmony_ci				:2:0001:0001[40700001x_10030002x] mul.f r0.y, r0.z, c0.w
3349bf215546Sopenharmony_ci				:3:0002:0002[63818000x_00001004x] mad.f32 r0.x, c1.x, r0.w, r0.x
3350bf215546Sopenharmony_ci				:3:0003:0003[63818001x_00011007x] mad.f32 r0.y, c1.w, r0.w, r0.y
3351bf215546Sopenharmony_ci				:3:0004:0004[63820000x_00001008x] mad.f32 r0.x, c2.x, r1.x, r0.x
3352bf215546Sopenharmony_ci				:3:0005:0005[63820001x_0001100bx] mad.f32 r0.y, c2.w, r1.x, r0.y
3353bf215546Sopenharmony_ci				:3:0006:0006[6382800ax_0000100cx] mad.f32 r2.z, c3.x, r1.y, r0.x
3354bf215546Sopenharmony_ci				:2:0007:0007[40700000x_10010002x] mul.f r0.x, r0.z, c0.y
3355bf215546Sopenharmony_ci				:3:0008:0008[6382800dx_0001100fx] mad.f32 r3.y, c3.w, r1.y, r0.y
3356bf215546Sopenharmony_ci				:3:0009:0009[63818000x_00001005x] mad.f32 r0.x, c1.y, r0.w, r0.x
3357bf215546Sopenharmony_ci				:1:0010:0010[20244001x_00000010x] mov.f32f32 r0.y, c4.x
3358bf215546Sopenharmony_ci				:3:0011:0011[63820000x_00001009x] mad.f32 r0.x, c2.y, r1.x, r0.x
3359bf215546Sopenharmony_ci				:0:0012:0012[00000000x_00000000x] nop
3360bf215546Sopenharmony_ci				:3:0013:0013[6382800bx_0000100dx] mad.f32 r2.w, c3.y, r1.y, r0.x
3361bf215546Sopenharmony_ci				:2:0014:0014[40700000x_10020002x] mul.f r0.x, r0.z, c0.z
3362bf215546Sopenharmony_ci				:2:0015:0015[40100001x_0001101cx] add.f r0.y, c7.x, r0.y
3363bf215546Sopenharmony_ci				:3:0016:0016[63818000x_00001006x] mad.f32 r0.x, c1.z, r0.w, r0.x
3364bf215546Sopenharmony_ci				:1:0017:0017[20244002x_00000011x] mov.f32f32 r0.z, c4.y
3365bf215546Sopenharmony_ci				:3:0018:0018[63820000x_0000100ax] mad.f32 r0.x, c2.z, r1.x, r0.x
3366bf215546Sopenharmony_ci				:1:0019:0019[20244004x_00000013x] mov.f32f32 r1.x, c4.w
3367bf215546Sopenharmony_ci				:3:0020:0020[6382800cx_0000100ex] mad.f32 r3.x, c3.z, r1.y, r0.x
3368bf215546Sopenharmony_ci				:2:0021:0021[40700000x_00070007x] mul.f r0.x, r1.w, r1.w
3369bf215546Sopenharmony_ci				:2:0022:0022[40100002x_0002101dx] add.f r0.z, c7.y, r0.z
3370bf215546Sopenharmony_ci				:3:0023:0023[63830000x_00000006x] mad.f32 r0.x, r1.z, r1.z, r0.x
3371bf215546Sopenharmony_ci				:2:0024:0024[40500411x_00041013x] (sat)max.f r4.y, c4.w, r1.x
3372bf215546Sopenharmony_ci				:3:0025:0025[63840000x_00000008x] mad.f32 r0.x, r2.x, r2.x, r0.x
3373bf215546Sopenharmony_ci				:1:0026:0026[20244003x_00000012x] mov.f32f32 r0.w, c4.z
3374bf215546Sopenharmony_ci				:0:0027:0027[00000200x_00000000x] (rpt2)nop
3375bf215546Sopenharmony_ci				:2:0028:0030[40100003x_0003101ex] add.f r0.w, c7.z, r0.w
3376bf215546Sopenharmony_ci				:0:0029:0031[00000000x_00000000x] nop
3377bf215546Sopenharmony_ci				:4:0030:0032[80300000x_00000000x] rsq r0.x, r0.x
3378bf215546Sopenharmony_ci				:2:0031:0033[40701004x_00000007x] (ss)mul.f r1.x, r1.w, r0.x
3379bf215546Sopenharmony_ci				:0:0032:0034[00000200x_00000000x] (rpt2)nop
3380bf215546Sopenharmony_ci				:2:0033:0037[40700004x_10150004x] mul.f r1.x, r1.x, c5.y
3381bf215546Sopenharmony_ci				:2:0034:0038[40700005x_00000006x] mul.f r1.y, r1.z, r0.x
3382bf215546Sopenharmony_ci				:0:0035:0039[00000200x_00000000x] (rpt2)nop
3383bf215546Sopenharmony_ci				:3:0036:0042[63828004x_00041014x] mad.f32 r1.x, c5.x, r1.y, r1.x
3384bf215546Sopenharmony_ci				:2:0037:0043[40700000x_00000008x] mul.f r0.x, r2.x, r0.x
3385bf215546Sopenharmony_ci				:0:0038:0044[00000200x_00000000x] (rpt2)nop
3386bf215546Sopenharmony_ci				:3:0039:0047[63800000x_00041016x] mad.f32 r0.x, c5.z, r0.x, r1.x
3387bf215546Sopenharmony_ci				:0:0040:0048[00000200x_00000000x] (rpt2)nop
3388bf215546Sopenharmony_ci				:2:0041:0051[40b00004x_00001034x] cmps.f.lt r1.x, c13.x, r0.x
3389bf215546Sopenharmony_ci				:2:0042:0052[40500000x_00001034x] max.f r0.x, c13.x, r0.x
3390bf215546Sopenharmony_ci				:0:0043:0053[00000100x_00000000x] (rpt1)nop
3391bf215546Sopenharmony_ci				:1:0044:0055[200c4004x_00000004x] cov.u32f32 r1.x, r1.x
3392bf215546Sopenharmony_ci				:3:0045:0056[63800001x_00011020x] mad.f32 r0.y, c8.x, r0.x, r0.y
3393bf215546Sopenharmony_ci				:3:0046:0057[63800002x_00021021x] mad.f32 r0.z, c8.y, r0.x, r0.z
3394bf215546Sopenharmony_ci				:3:0047:0058[63800000x_00031022x] mad.f32 r0.x, c8.z, r0.x, r0.w
3395bf215546Sopenharmony_ci				:3:0048:0059[6382040ex_00011024x] (sat)mad.f32 r3.z, c9.x, r1.x, r0.y
3396bf215546Sopenharmony_ci				:3:0049:0060[6382040fx_00021025x] (sat)mad.f32 r3.w, c9.y, r1.x, r0.z
3397bf215546Sopenharmony_ci				:3:0050:0061[63820410x_00001026x] (sat)mad.f32 r4.x, c9.z, r1.x, r0.x
3398bf215546Sopenharmony_ci				:0:0051:0062[03000000x_00000000x] end
3399bf215546Sopenharmony_ci				:0:0052:0063[00000000x_00000000x] nop
3400bf215546Sopenharmony_ci				:0:0053:0064[00000000x_00000000x] nop
3401bf215546Sopenharmony_ci				:0:0054:0065[00000000x_00000000x] nop
3402bf215546Sopenharmony_ci				:0:0055:0066[00000000x_00000000x] nop
3403bf215546Sopenharmony_ci				Stats:
3404bf215546Sopenharmony_ci				- shaderdb: 67 instr, 23 nops, 44 non-nops, 4 mov, 1 cov
3405bf215546Sopenharmony_ci				- shaderdb: 0 last-baryf, 0 half, 5 full, 13 constlen
3406bf215546Sopenharmony_ci				- shaderdb: 24 cat0, 5 cat1, 15 cat2, 22 cat3, 1 cat4, 0 cat5, 0 cat6, 0 cat7
3407bf215546Sopenharmony_ci				- shaderdb: 10 sstall, 1 (ss), 0 (sy)
3408bf215546Sopenharmony_ci109d068c:			0000: c0813000 01200000 00000000 10000002 40700000 10030002 40700001 00001004
3409bf215546Sopenharmony_ci109d06ac:			0020: 63818000 00011007 63818001 00001008 63820000 0001100b 63820001 0000100c
3410bf215546Sopenharmony_ci109d06cc:			0040: 6382800a 10010002 40700000 0001100f 6382800d 00001005 63818000 00000010
3411bf215546Sopenharmony_ci109d06ec:			0060: 20244001 00001009 63820000 00000000 00000000 0000100d 6382800b 10020002
3412bf215546Sopenharmony_ci109d070c:			0080: 40700000 0001101c 40100001 00001006 63818000 00000011 20244002 0000100a
3413bf215546Sopenharmony_ci109d072c:			00a0: 63820000 00000013 20244004 0000100e 6382800c 00070007 40700000 0002101d
3414bf215546Sopenharmony_ci109d074c:			00c0: 40100002 00000006 63830000 00041013 40500411 00000008 63840000 00000012
3415bf215546Sopenharmony_ci109d076c:			00e0: 20244003 00000000 00000200 0003101e 40100003 00000000 00000000 00000000
3416bf215546Sopenharmony_ci109d078c:			0100: 80300000 00000007 40701004 00000000 00000200 10150004 40700004 00000006
3417bf215546Sopenharmony_ci109d07ac:			0120: 40700005 00000000 00000200 00041014 63828004 00000008 40700000 00000000
3418bf215546Sopenharmony_ci109d07cc:			0140: 00000200 00041016 63800000 00000000 00000200 00001034 40b00004 00001034
3419bf215546Sopenharmony_ci109d07ec:			0160: 40500000 00000000 00000100 00000004 200c4004 00011020 63800001 00021021
3420bf215546Sopenharmony_ci109d080c:			0180: 63800002 00031022 63800000 00011024 6382040e 00021025 6382040f 00001026
3421bf215546Sopenharmony_ci109d082c:			01a0: 63820410 00000000 03000000 00000000 00000000 00000000 00000000 00000000
3422bf215546Sopenharmony_ci*
3423bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (35 dwords)
3424bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
3425bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
3426bf215546Sopenharmony_ci				:2:0000:0000[47300002x_00002000x] bary.f r0.z, 0, r0.x
3427bf215546Sopenharmony_ci				:2:0001:0001[47300003x_00002001x] bary.f r0.w, 1, r0.x
3428bf215546Sopenharmony_ci				:2:0002:0002[47300004x_00002002x] bary.f r1.x, 2, r0.x
3429bf215546Sopenharmony_ci				:2:0003:0003[47308005x_00002003x] bary.f (ei)r1.y, 3, r0.x
3430bf215546Sopenharmony_ci				:0:0004:0004[03000000x_00000000x] end
3431bf215546Sopenharmony_ci				:0:0005:0005[00000000x_00000000x] nop
3432bf215546Sopenharmony_ci				:0:0006:0006[00000000x_00000000x] nop
3433bf215546Sopenharmony_ci				:0:0007:0007[00000000x_00000000x] nop
3434bf215546Sopenharmony_ci				:0:0008:0008[00000000x_00000000x] nop
3435bf215546Sopenharmony_ci				Stats:
3436bf215546Sopenharmony_ci				- shaderdb: 9 instr, 4 nops, 5 non-nops, 0 mov, 0 cov
3437bf215546Sopenharmony_ci				- shaderdb: 3 last-baryf, 0 half, 2 full, 0 constlen
3438bf215546Sopenharmony_ci				- shaderdb: 5 cat0, 0 cat1, 4 cat2, 0 cat3, 0 cat4, 0 cat5, 0 cat6, 0 cat7
3439bf215546Sopenharmony_ci				- shaderdb: 0 sstall, 0 (ss), 0 (sy)
3440bf215546Sopenharmony_ci109d0898:			0000: c0213000 00700000 00000000 00002000 47300002 00002001 47300003 00002002
3441bf215546Sopenharmony_ci109d08b8:			0020: 47300004 00002003 47308005 00000000 03000000 00000000 00000000 00000000
3442bf215546Sopenharmony_ci*
3443bf215546Sopenharmony_cit3			opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
3444bf215546Sopenharmony_ci109d0924:			0000: c0002600 00000000
3445bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (51 dwords)
3446bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
3447bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
3448bf215546Sopenharmony_ci109d0938:				4.276816 0.109522 0.611668 0.517565 0.677381 4.774377 -0.312365 -0.264309
3449bf215546Sopenharmony_ci109d0958:				2.500000 -1.480991 -0.961761 -0.813798 13.423393 -6.746271 38.893391 42.140564
3450bf215546Sopenharmony_ci109d0978:				0.000000 0.160000 0.040000 1.000000 -0.064448 0.660942 0.747665 0.000000
3451bf215546Sopenharmony_ci109d0998:				1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000
3452bf215546Sopenharmony_ci109d09b8:				0.000000 0.800000 0.200000 1.000000 0.000000 0.000000 0.000000 1.000000
3453bf215546Sopenharmony_ci109d09d8:				0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000
3454bf215546Sopenharmony_ci109d0938:				0000: 4088dbad 3de04cdc 3f1c964b 3f047f2c 3f2d68da 4098c7b2 be9fee59 be875387
3455bf215546Sopenharmony_ci109d0958:				0020: 40200000 bfbd9119 bf7635f5 bf50550b 4156c638 c0d7e173 421b92d5 42288ff0
3456bf215546Sopenharmony_ci109d0978:				0040: 00000000 3e23d70b 3d23d70b 3f800000 bd83fd0e 3f293379 3f3f66f5 00000000
3457bf215546Sopenharmony_ci109d0998:				0060: 3f800000 00000000 00000000 00000000 00000000 00000000 00000000 3f800000
3458bf215546Sopenharmony_ci109d09b8:				0080: 00000000 3f4ccccd 3e4ccccd 3f800000 00000000 00000000 00000000 3f800000
3459bf215546Sopenharmony_ci109d09d8:				00a0: 00000000 00000000 00000000 3f800000 02020000 02020202 02020202 00000202
3460bf215546Sopenharmony_ci109d092c:			0000: c0313000 03200000 00000001 4088dbad 3de04cdc 3f1c964b 3f047f2c 3f2d68da
3461bf215546Sopenharmony_ci109d094c:			0020: 4098c7b2 be9fee59 be875387 40200000 bfbd9119 bf7635f5 bf50550b 4156c638
3462bf215546Sopenharmony_ci109d096c:			0040: c0d7e173 421b92d5 42288ff0 00000000 3e23d70b 3d23d70b 3f800000 bd83fd0e
3463bf215546Sopenharmony_ci109d098c:			0060: 3f293379 3f3f66f5 00000000 3f800000 00000000 00000000 00000000 00000000
3464bf215546Sopenharmony_ci109d09ac:			0080: 00000000 00000000 3f800000 00000000 3f4ccccd 3e4ccccd 3f800000 00000000
3465bf215546Sopenharmony_ci109d09cc:			00a0: 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000 02020000
3466bf215546Sopenharmony_ci109d09ec:			00c0: 02020202 02020202 00000202
3467bf215546Sopenharmony_cit0			write VFD_INDEX_OFFSET (2208)
3468bf215546Sopenharmony_ci				VFD_INDEX_OFFSET: 0
3469bf215546Sopenharmony_ci				UNKNOWN_2209: 0
3470bf215546Sopenharmony_ci109d09f8:			0000: 00012208 00000000 00000000
3471bf215546Sopenharmony_cit0			write PC_RESTART_INDEX (21c6)
3472bf215546Sopenharmony_ci				PC_RESTART_INDEX: 0xffffffff
3473bf215546Sopenharmony_ci109d0a04:			0000: 000021c6 ffffffff
3474bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
3475bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x4a
3476bf215546Sopenharmony_ci				:0,73,115,74
3477bf215546Sopenharmony_ci109d0a0c:			0000: 0000057f 0000004a
3478bf215546Sopenharmony_cit3			opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
3479bf215546Sopenharmony_ci				{ 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 }
3480bf215546Sopenharmony_ci				{ NUM_INSTANCES = 1 }
3481bf215546Sopenharmony_ci				{ NUM_INDICES = 60 }
3482bf215546Sopenharmony_ci				{ FIRST_INDX = 0 }
3483bf215546Sopenharmony_ci				{ INDX_BASE = 0x10bd0f00 }
3484bf215546Sopenharmony_ci				{ INDX_SIZE = 120 }
3485bf215546Sopenharmony_ci			draw[12] register values
3486bf215546Sopenharmony_ci!+	00000049			CP_SCRATCH[0x5].REG: 0x49
3487bf215546Sopenharmony_ci			:0,73,115,74
3488bf215546Sopenharmony_ci!+	0000004a			CP_SCRATCH[0x7].REG: 0x4a
3489bf215546Sopenharmony_ci			:0,73,115,74
3490bf215546Sopenharmony_ci +	00080000			GRAS_CL_CLIP_CNTL: { 0x80000 }
3491bf215546Sopenharmony_ci!+	00000001			GRAS_CNTL: { IJ_PERSP }
3492bf215546Sopenharmony_ci +	00100010			GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
3493bf215546Sopenharmony_ci +	00000010			GRAS_SU_POINT_SIZE: 1.000000
3494bf215546Sopenharmony_ci +	00000000			GRAS_ALPHA_CONTROL: { 0 }
3495bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_SCALE: 0.000000
3496bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
3497bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
3498bf215546Sopenharmony_ci +	00100012			GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
3499bf215546Sopenharmony_ci +	012b012b			GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
3500bf215546Sopenharmony_ci +	00000000			GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
3501bf215546Sopenharmony_ci!+	00001000			RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 | IJ_PERSP_PIXEL }
3502bf215546Sopenharmony_ci +	00000001			RB_FS_OUTPUT_REG: { MRT = 1 }
3503bf215546Sopenharmony_ci +	80000016			RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_READ_ENABLE }
3504bf215546Sopenharmony_ci +	00000000			RB_VPORT_Z_CLAMP[0].MIN: 0
3505bf215546Sopenharmony_ci +	00ffffff			RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
3506bf215546Sopenharmony_ci +	42001004			VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
3507bf215546Sopenharmony_ci +	00040400			VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
3508bf215546Sopenharmony_ci!+	00000000			VPC_VARYING_INTERP[0].MODE: 0
3509bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x1].MODE: 0
3510bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x2].MODE: 0
3511bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x3].MODE: 0
3512bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x4].MODE: 0
3513bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x5].MODE: 0
3514bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x6].MODE: 0
3515bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x7].MODE: 0
3516bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0].MODE: 0
3517bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x1].MODE: 0
3518bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x2].MODE: 0
3519bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x3].MODE: 0
3520bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x4].MODE: 0
3521bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x5].MODE: 0
3522bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x6].MODE: 0
3523bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x7].MODE: 0
3524bf215546Sopenharmony_ci +	02000001			PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
3525bf215546Sopenharmony_ci +	00000012			PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
3526bf215546Sopenharmony_ci +	ffffffff			PC_RESTART_INDEX: 0xffffffff
3527bf215546Sopenharmony_ci +	00000000			VFD_INDEX_OFFSET: 0
3528bf215546Sopenharmony_ci +	00000000			UNKNOWN_2209: 0
3529bf215546Sopenharmony_ci +	00140010			SP_SP_CTRL_REG: { 0x140010 }
3530bf215546Sopenharmony_ci +	000005ff			SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
3531bf215546Sopenharmony_ci +	00201400			SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
3532bf215546Sopenharmony_ci +	08000042			SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
3533bf215546Sopenharmony_ci +	0010fc0a			SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
3534bf215546Sopenharmony_ci +	00001e0e			SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
3535bf215546Sopenharmony_ci +	08080808			SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
3536bf215546Sopenharmony_ci +	00000000			SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
3537bf215546Sopenharmony_ci +	10cd5000			SP_VS_OBJ_START: 0x10cd5000
3538bf215546Sopenharmony_ci +	00000004			SP_VS_LENGTH_REG: 4
3539bf215546Sopenharmony_ci!+	00340802			SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 2 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
3540bf215546Sopenharmony_ci +	8010003e			SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
3541bf215546Sopenharmony_ci +	7e420000			SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3542bf215546Sopenharmony_ci!+	108cb000			SP_FS_OBJ_START: 0x108cb000
3543bf215546Sopenharmony_ci +	00000001			SP_FS_LENGTH_REG: 1
3544bf215546Sopenharmony_ci +	0000fc01			SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
3545bf215546Sopenharmony_ci!+	0001a002			SP_FS_MRT[0].REG: { REGID = r0.z | MRTFORMAT = RB4_R8G8B8A8_UNORM }
3546bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x1].REG: { REGID = r0.z | MRTFORMAT = 0 }
3547bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x2].REG: { REGID = r0.z | MRTFORMAT = 0 }
3548bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x3].REG: { REGID = r0.z | MRTFORMAT = 0 }
3549bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x4].REG: { REGID = r0.z | MRTFORMAT = 0 }
3550bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x5].REG: { REGID = r0.z | MRTFORMAT = 0 }
3551bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x6].REG: { REGID = r0.z | MRTFORMAT = 0 }
3552bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x7].REG: { REGID = r0.z | MRTFORMAT = 0 }
3553bf215546Sopenharmony_ci +	7e420000			SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3554bf215546Sopenharmony_ci +	7e420000			SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3555bf215546Sopenharmony_ci +	7e420000			SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3556bf215546Sopenharmony_ci +	28000250			HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
3557bf215546Sopenharmony_ci +	fcfc0100			HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
3558bf215546Sopenharmony_ci +	fff3f3f0			HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
3559bf215546Sopenharmony_ci!+	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 }
3560bf215546Sopenharmony_ci +	00fcfcfc			HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
3561bf215546Sopenharmony_ci +	04000042			HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
3562bf215546Sopenharmony_ci +	017e423e			HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
3563bf215546Sopenharmony_ci +	007e4200			HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
3564bf215546Sopenharmony_ci +	007e4200			HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
3565bf215546Sopenharmony_ci +	007e4200			HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
3566bf215546Sopenharmony_ci +	00000003			HLSQ_UPDATE_CONTROL: 0x3
3567bf215546Sopenharmony_ci109d0a14:			0000: c0053800 00000404 00000001 0000003c 00000000 10bd0f00 00000078
3568bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
3569bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x4b
3570bf215546Sopenharmony_ci				:0,73,115,75
3571bf215546Sopenharmony_ci109d0a30:			0000: 0000057f 0000004b
3572bf215546Sopenharmony_cit0			write CP_SCRATCH[0x5].REG (057d)
3573bf215546Sopenharmony_ci				CP_SCRATCH[0x5].REG: 0x4f
3574bf215546Sopenharmony_ci				:0,79,115,75
3575bf215546Sopenharmony_ci109d0a38:			0000: 0000057d 0000004f
3576bf215546Sopenharmony_cit0			write RB_DEPTH_CONTROL (2101)
3577bf215546Sopenharmony_ci				RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_READ_ENABLE }
3578bf215546Sopenharmony_ci109d0a40:			0000: 00002101 80000016
3579bf215546Sopenharmony_cit0			write GRAS_ALPHA_CONTROL (2073)
3580bf215546Sopenharmony_ci				GRAS_ALPHA_CONTROL: { 0 }
3581bf215546Sopenharmony_ci109d0a48:			0000: 00002073 00000000
3582bf215546Sopenharmony_cit0			write GRAS_SU_MODE_CONTROL (2078)
3583bf215546Sopenharmony_ci				GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
3584bf215546Sopenharmony_ci109d0a50:			0000: 00002078 00100012
3585bf215546Sopenharmony_cit0			write GRAS_SU_POINT_MINMAX (2070)
3586bf215546Sopenharmony_ci				GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
3587bf215546Sopenharmony_ci				GRAS_SU_POINT_SIZE: 1.000000
3588bf215546Sopenharmony_ci109d0a58:			0000: 00012070 00100010 00000010
3589bf215546Sopenharmony_cit0			write GRAS_SU_POLY_OFFSET_SCALE (2074)
3590bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_SCALE: 0.000000
3591bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
3592bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
3593bf215546Sopenharmony_ci109d0a64:			0000: 00022074 00000000 00000000 00000000
3594bf215546Sopenharmony_cit0			write GRAS_CL_CLIP_CNTL (2000)
3595bf215546Sopenharmony_ci				GRAS_CL_CLIP_CNTL: { 0x80000 }
3596bf215546Sopenharmony_ci109d0a74:			0000: 00002000 00080000
3597bf215546Sopenharmony_cit0			write PC_PRIM_VTX_CNTL (21c4)
3598bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
3599bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
3600bf215546Sopenharmony_ci109d0a7c:			0000: 000121c4 02000001 00000012
3601bf215546Sopenharmony_cit0			write GRAS_SC_WINDOW_SCISSOR_BR (209c)
3602bf215546Sopenharmony_ci				GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
3603bf215546Sopenharmony_ci				GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
3604bf215546Sopenharmony_ci109d0a88:			0000: 0001209c 012b012b 00000000
3605bf215546Sopenharmony_cit0			write RB_VPORT_Z_CLAMP[0].MIN (2120)
3606bf215546Sopenharmony_ci				RB_VPORT_Z_CLAMP[0].MIN: 0
3607bf215546Sopenharmony_ci				RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
3608bf215546Sopenharmony_ci109d0a94:			0000: 00012120 00000000 00ffffff
3609bf215546Sopenharmony_cit0			write HLSQ_UPDATE_CONTROL (23db)
3610bf215546Sopenharmony_ci				HLSQ_UPDATE_CONTROL: 0x3
3611bf215546Sopenharmony_ci109d0aa0:			0000: 000023db 00000003
3612bf215546Sopenharmony_cit0			write HLSQ_CONTROL_0_REG (23c0)
3613bf215546Sopenharmony_ci				HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
3614bf215546Sopenharmony_ci				HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
3615bf215546Sopenharmony_ci				HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
3616bf215546Sopenharmony_ci				HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
3617bf215546Sopenharmony_ci				HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
3618bf215546Sopenharmony_ci109d0aa8:			0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfcfc 00fcfcfc
3619bf215546Sopenharmony_cit0			write HLSQ_VS_CONTROL_REG (23c5)
3620bf215546Sopenharmony_ci				HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
3621bf215546Sopenharmony_ci				HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
3622bf215546Sopenharmony_ci				HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
3623bf215546Sopenharmony_ci				HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
3624bf215546Sopenharmony_ci				HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
3625bf215546Sopenharmony_ci109d0ac0:			0000: 000423c5 04000042 017e423e 007e4200 007e4200 007e4200
3626bf215546Sopenharmony_cit0			write SP_SP_CTRL_REG (22c0)
3627bf215546Sopenharmony_ci				SP_SP_CTRL_REG: { 0x140010 }
3628bf215546Sopenharmony_ci109d0ad8:			0000: 000022c0 00140010
3629bf215546Sopenharmony_cit0			write SP_INSTR_CACHE_CTRL (22c1)
3630bf215546Sopenharmony_ci				SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
3631bf215546Sopenharmony_ci109d0ae0:			0000: 000022c1 000005ff
3632bf215546Sopenharmony_cit0			write SP_VS_LENGTH_REG (22e5)
3633bf215546Sopenharmony_ci				SP_VS_LENGTH_REG: 4
3634bf215546Sopenharmony_ci109d0ae8:			0000: 000022e5 00000004
3635bf215546Sopenharmony_cit0			write SP_VS_CTRL_REG0 (22c4)
3636bf215546Sopenharmony_ci				SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 4 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
3637bf215546Sopenharmony_ci				SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
3638bf215546Sopenharmony_ci				SP_VS_PARAM_REG: { POSREGID = r1.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
3639bf215546Sopenharmony_ci109d0af0:			0000: 000222c4 00201000 04000042 0010fc06
3640bf215546Sopenharmony_cit0			write SP_VS_OUT[0].REG (22c7)
3641bf215546Sopenharmony_ci				SP_VS_OUT[0].REG: { A_REGID = r2.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
3642bf215546Sopenharmony_ci109d0b00:			0000: 000022c7 00001e0a
3643bf215546Sopenharmony_cit0			write SP_VS_VPC_DST[0].REG (22d8)
3644bf215546Sopenharmony_ci				SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
3645bf215546Sopenharmony_ci109d0b08:			0000: 000022d8 08080808
3646bf215546Sopenharmony_cit0			write SP_VS_OBJ_OFFSET_REG (22e0)
3647bf215546Sopenharmony_ci				SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
3648bf215546Sopenharmony_ci				SP_VS_OBJ_START: 0x10cd0000
3649bf215546Sopenharmony_ci109d0b10:			0000: 000122e0 00000000 10cd0000
3650bf215546Sopenharmony_cit0			write SP_FS_LENGTH_REG (22ef)
3651bf215546Sopenharmony_ci				SP_FS_LENGTH_REG: 1
3652bf215546Sopenharmony_ci109d0b1c:			0000: 000022ef 00000001
3653bf215546Sopenharmony_cit0			write SP_FS_CTRL_REG0 (22e8)
3654bf215546Sopenharmony_ci				SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
3655bf215546Sopenharmony_ci				SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
3656bf215546Sopenharmony_ci109d0b24:			0000: 000122e8 00340402 8010003e
3657bf215546Sopenharmony_cit0			write SP_FS_OBJ_OFFSET_REG (22ea)
3658bf215546Sopenharmony_ci				SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3659bf215546Sopenharmony_ci				SP_FS_OBJ_START: 0x10cd2000
3660bf215546Sopenharmony_ci109d0b30:			0000: 000122ea 7e420000 10cd2000
3661bf215546Sopenharmony_cit0			write SP_HS_OBJ_OFFSET_REG (230d)
3662bf215546Sopenharmony_ci				SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3663bf215546Sopenharmony_ci109d0b3c:			0000: 0000230d 7e420000
3664bf215546Sopenharmony_cit0			write SP_DS_OBJ_OFFSET_REG (2334)
3665bf215546Sopenharmony_ci				SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3666bf215546Sopenharmony_ci109d0b44:			0000: 00002334 7e420000
3667bf215546Sopenharmony_cit0			write SP_GS_OBJ_OFFSET_REG (235b)
3668bf215546Sopenharmony_ci				SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3669bf215546Sopenharmony_ci109d0b4c:			0000: 0000235b 7e420000
3670bf215546Sopenharmony_cit0			write GRAS_CNTL (2003)
3671bf215546Sopenharmony_ci				GRAS_CNTL: { 0 }
3672bf215546Sopenharmony_ci109d0b54:			0000: 00002003 00000000
3673bf215546Sopenharmony_cit0			write RB_RENDER_CONTROL2 (20a3)
3674bf215546Sopenharmony_ci				RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
3675bf215546Sopenharmony_ci109d0b5c:			0000: 000020a3 00000000
3676bf215546Sopenharmony_cit0			write RB_FS_OUTPUT_REG (2100)
3677bf215546Sopenharmony_ci				RB_FS_OUTPUT_REG: { MRT = 1 }
3678bf215546Sopenharmony_ci109d0b64:			0000: 00002100 00000001
3679bf215546Sopenharmony_cit0			write SP_FS_OUTPUT_REG (22f0)
3680bf215546Sopenharmony_ci				SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
3681bf215546Sopenharmony_ci109d0b6c:			0000: 000022f0 0000fc01
3682bf215546Sopenharmony_cit0			write SP_FS_MRT[0].REG (22f1)
3683bf215546Sopenharmony_ci				SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
3684bf215546Sopenharmony_ci				SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
3685bf215546Sopenharmony_ci				SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
3686bf215546Sopenharmony_ci				SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
3687bf215546Sopenharmony_ci				SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
3688bf215546Sopenharmony_ci				SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
3689bf215546Sopenharmony_ci				SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
3690bf215546Sopenharmony_ci				SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
3691bf215546Sopenharmony_ci109d0b74:			0000: 000722f1 0001a000 00000000 00000000 00000000 00000000 00000000 00000000
3692bf215546Sopenharmony_ci*
3693bf215546Sopenharmony_cit0			write VPC_ATTR (2140)
3694bf215546Sopenharmony_ci				VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
3695bf215546Sopenharmony_ci				VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
3696bf215546Sopenharmony_ci109d0b98:			0000: 00012140 42001004 00040400
3697bf215546Sopenharmony_cit0			write VPC_VARYING_INTERP[0].MODE (2142)
3698bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0].MODE: 0x55
3699bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x1].MODE: 0
3700bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x2].MODE: 0
3701bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x3].MODE: 0
3702bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x4].MODE: 0
3703bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x5].MODE: 0
3704bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x6].MODE: 0
3705bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x7].MODE: 0
3706bf215546Sopenharmony_ci109d0ba4:			0000: 00072142 00000055 00000000 00000000 00000000 00000000 00000000 00000000
3707bf215546Sopenharmony_ci*
3708bf215546Sopenharmony_cit0			write VPC_VARYING_PS_REPL[0].MODE (214a)
3709bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0].MODE: 0
3710bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x1].MODE: 0
3711bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x2].MODE: 0
3712bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x3].MODE: 0
3713bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x4].MODE: 0
3714bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x5].MODE: 0
3715bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x6].MODE: 0
3716bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x7].MODE: 0
3717bf215546Sopenharmony_ci109d0bc8:			0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3718bf215546Sopenharmony_ci*
3719bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (131 dwords)
3720bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 4 }
3721bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
3722bf215546Sopenharmony_ci				:2:0000:0000[40700000x_10000002x] mul.f r0.x, r0.z, c0.x
3723bf215546Sopenharmony_ci				:2:0001:0001[40700001x_10030002x] mul.f r0.y, r0.z, c0.w
3724bf215546Sopenharmony_ci				:3:0002:0002[63818000x_00001004x] mad.f32 r0.x, c1.x, r0.w, r0.x
3725bf215546Sopenharmony_ci				:3:0003:0003[63818001x_00011007x] mad.f32 r0.y, c1.w, r0.w, r0.y
3726bf215546Sopenharmony_ci				:3:0004:0004[63820000x_00001008x] mad.f32 r0.x, c2.x, r1.x, r0.x
3727bf215546Sopenharmony_ci				:3:0005:0005[63820001x_0001100bx] mad.f32 r0.y, c2.w, r1.x, r0.y
3728bf215546Sopenharmony_ci				:3:0006:0006[63828006x_0000100cx] mad.f32 r1.z, c3.x, r1.y, r0.x
3729bf215546Sopenharmony_ci				:2:0007:0007[40700000x_10010002x] mul.f r0.x, r0.z, c0.y
3730bf215546Sopenharmony_ci				:3:0008:0008[63828009x_0001100fx] mad.f32 r2.y, c3.w, r1.y, r0.y
3731bf215546Sopenharmony_ci				:3:0009:0009[63818000x_00001005x] mad.f32 r0.x, c1.y, r0.w, r0.x
3732bf215546Sopenharmony_ci				:1:0010:0010[20244001x_00000010x] mov.f32f32 r0.y, c4.x
3733bf215546Sopenharmony_ci				:3:0011:0011[63820000x_00001009x] mad.f32 r0.x, c2.y, r1.x, r0.x
3734bf215546Sopenharmony_ci				:0:0012:0012[00000000x_00000000x] nop
3735bf215546Sopenharmony_ci				:3:0013:0013[63828007x_0000100dx] mad.f32 r1.w, c3.y, r1.y, r0.x
3736bf215546Sopenharmony_ci				:2:0014:0014[40700000x_10020002x] mul.f r0.x, r0.z, c0.z
3737bf215546Sopenharmony_ci				:1:0015:0015[20244002x_00000015x] mov.f32f32 r0.z, c5.y
3738bf215546Sopenharmony_ci				:3:0016:0016[63818000x_00001006x] mad.f32 r0.x, c1.z, r0.w, r0.x
3739bf215546Sopenharmony_ci				:1:0017:0017[20244003x_00000016x] mov.f32f32 r0.w, c5.z
3740bf215546Sopenharmony_ci				:3:0018:0018[63820000x_0000100ax] mad.f32 r0.x, c2.z, r1.x, r0.x
3741bf215546Sopenharmony_ci				:1:0019:0019[20244004x_00000017x] mov.f32f32 r1.x, c5.w
3742bf215546Sopenharmony_ci				:3:0020:0020[63828008x_0000100ex] mad.f32 r2.x, c3.z, r1.y, r0.x
3743bf215546Sopenharmony_ci				:1:0021:0021[20244000x_00000011x] mov.f32f32 r0.x, c4.y
3744bf215546Sopenharmony_ci				:2:0022:0022[40100002x_00021021x] add.f r0.z, c8.y, r0.z
3745bf215546Sopenharmony_ci				:2:0023:0023[4050040dx_00041017x] (sat)max.f r3.y, c5.w, r1.x
3746bf215546Sopenharmony_ci				:2:0024:0024[40100003x_00031022x] add.f r0.w, c8.z, r0.w
3747bf215546Sopenharmony_ci				:2:0025:0025[40700000x_00001011x] mul.f r0.x, c4.y, r0.x
3748bf215546Sopenharmony_ci				:0:0026:0026[00000000x_00000000x] nop
3749bf215546Sopenharmony_ci				:3:0027:0027[63808000x_00001010x] mad.f32 r0.x, c4.x, r0.y, r0.x
3750bf215546Sopenharmony_ci				:1:0028:0028[20244001x_00000012x] mov.f32f32 r0.y, c4.z
3751bf215546Sopenharmony_ci				:0:0029:0029[00000200x_00000000x] (rpt2)nop
3752bf215546Sopenharmony_ci				:3:0030:0032[63808000x_00001012x] mad.f32 r0.x, c4.z, r0.y, r0.x
3753bf215546Sopenharmony_ci				:1:0031:0033[20244001x_00000014x] mov.f32f32 r0.y, c5.x
3754bf215546Sopenharmony_ci				:0:0032:0034[00000200x_00000000x] (rpt2)nop
3755bf215546Sopenharmony_ci				:2:0033:0037[40100001x_00011020x] add.f r0.y, c8.x, r0.y
3756bf215546Sopenharmony_ci				:0:0034:0038[00000000x_00000000x] nop
3757bf215546Sopenharmony_ci				:4:0035:0039[80300000x_00000000x] rsq r0.x, r0.x
3758bf215546Sopenharmony_ci				:2:0036:0040[40701004x_00001011x] (ss)mul.f r1.x, c4.y, r0.x
3759bf215546Sopenharmony_ci				:0:0037:0041[00000200x_00000000x] (rpt2)nop
3760bf215546Sopenharmony_ci				:2:0038:0044[40700004x_10190004x] mul.f r1.x, r1.x, c6.y
3761bf215546Sopenharmony_ci				:2:0039:0045[40700005x_00001010x] mul.f r1.y, c4.x, r0.x
3762bf215546Sopenharmony_ci				:0:0040:0046[00000200x_00000000x] (rpt2)nop
3763bf215546Sopenharmony_ci				:3:0041:0049[63828004x_00041018x] mad.f32 r1.x, c6.x, r1.y, r1.x
3764bf215546Sopenharmony_ci				:2:0042:0050[40700000x_00001012x] mul.f r0.x, c4.z, r0.x
3765bf215546Sopenharmony_ci				:0:0043:0051[00000200x_00000000x] (rpt2)nop
3766bf215546Sopenharmony_ci				:3:0044:0054[63800000x_0004101ax] mad.f32 r0.x, c6.z, r0.x, r1.x
3767bf215546Sopenharmony_ci				:0:0045:0055[00000200x_00000000x] (rpt2)nop
3768bf215546Sopenharmony_ci				:2:0046:0058[40b00004x_00001034x] cmps.f.lt r1.x, c13.x, r0.x
3769bf215546Sopenharmony_ci				:2:0047:0059[40500000x_00001034x] max.f r0.x, c13.x, r0.x
3770bf215546Sopenharmony_ci				:0:0048:0060[00000100x_00000000x] (rpt1)nop
3771bf215546Sopenharmony_ci				:1:0049:0062[200c4004x_00000004x] cov.u32f32 r1.x, r1.x
3772bf215546Sopenharmony_ci				:3:0050:0063[63800001x_00011024x] mad.f32 r0.y, c9.x, r0.x, r0.y
3773bf215546Sopenharmony_ci				:3:0051:0064[63800002x_00021025x] mad.f32 r0.z, c9.y, r0.x, r0.z
3774bf215546Sopenharmony_ci				:3:0052:0065[63800000x_00031026x] mad.f32 r0.x, c9.z, r0.x, r0.w
3775bf215546Sopenharmony_ci				:3:0053:0066[6382040ax_00011028x] (sat)mad.f32 r2.z, c10.x, r1.x, r0.y
3776bf215546Sopenharmony_ci				:3:0054:0067[6382040bx_00021029x] (sat)mad.f32 r2.w, c10.y, r1.x, r0.z
3777bf215546Sopenharmony_ci				:3:0055:0068[6382040cx_0000102ax] (sat)mad.f32 r3.x, c10.z, r1.x, r0.x
3778bf215546Sopenharmony_ci				:0:0056:0069[03000000x_00000000x] end
3779bf215546Sopenharmony_ci				:0:0057:0070[00000000x_00000000x] nop
3780bf215546Sopenharmony_ci				:0:0058:0071[00000000x_00000000x] nop
3781bf215546Sopenharmony_ci				:0:0059:0072[00000000x_00000000x] nop
3782bf215546Sopenharmony_ci				:0:0060:0073[00000000x_00000000x] nop
3783bf215546Sopenharmony_ci				Stats:
3784bf215546Sopenharmony_ci				- shaderdb: 74 instr, 27 nops, 47 non-nops, 7 mov, 1 cov
3785bf215546Sopenharmony_ci				- shaderdb: 0 last-baryf, 0 half, 4 full, 13 constlen
3786bf215546Sopenharmony_ci				- shaderdb: 28 cat0, 8 cat1, 15 cat2, 22 cat3, 1 cat4, 0 cat5, 0 cat6, 0 cat7
3787bf215546Sopenharmony_ci				- shaderdb: 10 sstall, 1 (ss), 0 (sy)
3788bf215546Sopenharmony_ci109d0bec:			0000: c0813000 01200000 00000000 10000002 40700000 10030002 40700001 00001004
3789bf215546Sopenharmony_ci109d0c0c:			0020: 63818000 00011007 63818001 00001008 63820000 0001100b 63820001 0000100c
3790bf215546Sopenharmony_ci109d0c2c:			0040: 63828006 10010002 40700000 0001100f 63828009 00001005 63818000 00000010
3791bf215546Sopenharmony_ci109d0c4c:			0060: 20244001 00001009 63820000 00000000 00000000 0000100d 63828007 10020002
3792bf215546Sopenharmony_ci109d0c6c:			0080: 40700000 00000015 20244002 00001006 63818000 00000016 20244003 0000100a
3793bf215546Sopenharmony_ci109d0c8c:			00a0: 63820000 00000017 20244004 0000100e 63828008 00000011 20244000 00021021
3794bf215546Sopenharmony_ci109d0cac:			00c0: 40100002 00041017 4050040d 00031022 40100003 00001011 40700000 00000000
3795bf215546Sopenharmony_ci109d0ccc:			00e0: 00000000 00001010 63808000 00000012 20244001 00000000 00000200 00001012
3796bf215546Sopenharmony_ci109d0cec:			0100: 63808000 00000014 20244001 00000000 00000200 00011020 40100001 00000000
3797bf215546Sopenharmony_ci109d0d0c:			0120: 00000000 00000000 80300000 00001011 40701004 00000000 00000200 10190004
3798bf215546Sopenharmony_ci109d0d2c:			0140: 40700004 00001010 40700005 00000000 00000200 00041018 63828004 00001012
3799bf215546Sopenharmony_ci109d0d4c:			0160: 40700000 00000000 00000200 0004101a 63800000 00000000 00000200 00001034
3800bf215546Sopenharmony_ci109d0d6c:			0180: 40b00004 00001034 40500000 00000000 00000100 00000004 200c4004 00011024
3801bf215546Sopenharmony_ci109d0d8c:			01a0: 63800001 00021025 63800002 00031026 63800000 00011028 6382040a 00021029
3802bf215546Sopenharmony_ci109d0dac:			01c0: 6382040b 0000102a 6382040c 00000000 03000000 00000000 00000000 00000000
3803bf215546Sopenharmony_ci*
3804bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (35 dwords)
3805bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
3806bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
3807bf215546Sopenharmony_ci				:0:0000:0000[00000000x_00000000x] nop
3808bf215546Sopenharmony_ci				:6:0001:0001[c7c60000x_01c00000x] ldlv.u32 r0.x, l[0], 1
3809bf215546Sopenharmony_ci				:6:0002:0002[c7c60001x_01c00002x] ldlv.u32 r0.y, l[1], 1
3810bf215546Sopenharmony_ci				:6:0003:0003[c7c60002x_01c00004x] ldlv.u32 r0.z, l[2], 1
3811bf215546Sopenharmony_ci				:6:0004:0004[c7c60003x_01c00006x] ldlv.u32 r0.w, l[3], 1
3812bf215546Sopenharmony_ci				:2:0005:0005[473090fcx_00002000x] (ss)bary.f (ei)r63.x, 0, r0.x
3813bf215546Sopenharmony_ci				:0:0006:0006[03000000x_00000000x] end
3814bf215546Sopenharmony_ci				:0:0007:0007[00000000x_00000000x] nop
3815bf215546Sopenharmony_ci				:0:0008:0008[00000000x_00000000x] nop
3816bf215546Sopenharmony_ci				:0:0009:0009[00000000x_00000000x] nop
3817bf215546Sopenharmony_ci				:0:0010:0010[00000000x_00000000x] nop
3818bf215546Sopenharmony_ci				Stats:
3819bf215546Sopenharmony_ci				- shaderdb: 11 instr, 5 nops, 6 non-nops, 0 mov, 0 cov
3820bf215546Sopenharmony_ci				- shaderdb: 5 last-baryf, 0 half, 1 full, 0 constlen
3821bf215546Sopenharmony_ci				- shaderdb: 6 cat0, 0 cat1, 1 cat2, 0 cat3, 0 cat4, 0 cat5, 4 cat6, 0 cat7
3822bf215546Sopenharmony_ci				- shaderdb: 0 sstall, 1 (ss), 0 (sy)
3823bf215546Sopenharmony_ci109d0df8:			0000: c0213000 00700000 00000000 00000000 00000000 01c00000 c7c60000 01c00002
3824bf215546Sopenharmony_ci109d0e18:			0020: c7c60001 01c00004 c7c60002 01c00006 c7c60003 00002000 473090fc 00000000
3825bf215546Sopenharmony_ci109d0e38:			0040: 03000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3826bf215546Sopenharmony_ci*
3827bf215546Sopenharmony_cit3			opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
3828bf215546Sopenharmony_ci109d0e84:			0000: c0002600 00000000
3829bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (51 dwords)
3830bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
3831bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
3832bf215546Sopenharmony_ci109d0e98:				3.924428 -1.210718 0.674073 0.570369 1.829991 4.619613 -0.131666 -0.111410
3833bf215546Sopenharmony_ci109d0eb8:				2.500000 -1.480991 -0.961761 -0.813798 -13.423393 17.082890 32.944622 37.106991
3834bf215546Sopenharmony_ci109d0ed8:				0.000000 0.000000 1.000000 1.000000 0.040000 0.040000 0.200000 1.000000
3835bf215546Sopenharmony_ci109d0ef8:				-0.244131 0.617574 0.747665 0.000000 1.000000 0.000000 0.000000 0.000000
3836bf215546Sopenharmony_ci109d0f18:				0.000000 0.000000 0.000000 1.000000 0.200000 0.200000 1.000000 1.000000
3837bf215546Sopenharmony_ci109d0f38:				0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000
3838bf215546Sopenharmony_ci109d0e98:				0000: 407b29d2 bf9af8cb 3f2c9009 3f1203b9 3fea3d23 4093d3df be06d382 bde42adc
3839bf215546Sopenharmony_ci109d0eb8:				0020: 40200000 bfbd9119 bf7635f5 bf50550b c156c638 4188a9c2 4203c74b 42146d8f
3840bf215546Sopenharmony_ci109d0ed8:				0040: 00000000 00000000 3f800000 3f800000 3d23d70b 3d23d70b 3e4ccccd 3f800000
3841bf215546Sopenharmony_ci109d0ef8:				0060: be79fd80 3f1e194f 3f3f66f5 00000000 3f800000 00000000 00000000 00000000
3842bf215546Sopenharmony_ci109d0f18:				0080: 00000000 00000000 00000000 3f800000 3e4ccccd 3e4ccccd 3f800000 3f800000
3843bf215546Sopenharmony_ci109d0f38:				00a0: 00000000 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000
3844bf215546Sopenharmony_ci109d0e8c:			0000: c0313000 03200000 00000001 407b29d2 bf9af8cb 3f2c9009 3f1203b9 3fea3d23
3845bf215546Sopenharmony_ci109d0eac:			0020: 4093d3df be06d382 bde42adc 40200000 bfbd9119 bf7635f5 bf50550b c156c638
3846bf215546Sopenharmony_ci109d0ecc:			0040: 4188a9c2 4203c74b 42146d8f 00000000 00000000 3f800000 3f800000 3d23d70b
3847bf215546Sopenharmony_ci109d0eec:			0060: 3d23d70b 3e4ccccd 3f800000 be79fd80 3f1e194f 3f3f66f5 00000000 3f800000
3848bf215546Sopenharmony_ci109d0f0c:			0080: 00000000 00000000 00000000 00000000 00000000 00000000 3f800000 3e4ccccd
3849bf215546Sopenharmony_ci109d0f2c:			00a0: 3e4ccccd 3f800000 3f800000 00000000 00000000 00000000 3f800000 00000000
3850bf215546Sopenharmony_ci109d0f4c:			00c0: 00000000 00000000 3f800000
3851bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (7 dwords)
3852bf215546Sopenharmony_ci				{ DST_OFF = 13 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 1 }
3853bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
3854bf215546Sopenharmony_ci109d0f64:				0.000000 -28026765312.000000 -28026765312.000000 -28026765312.000000
3855bf215546Sopenharmony_ci109d0f64:				0000: 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
3856bf215546Sopenharmony_ci109d0f58:			0000: c0053000 0060000d 00000001 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
3857bf215546Sopenharmony_cit0			write VFD_FETCH[0].INSTR_0 (220a)
3858bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
3859bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_1: 0x107cb000
3860bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
3861bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
3862bf215546Sopenharmony_ci109d0f74:			0000: 0003220a 0000060b 107cb000 00100000 00000001
3863bf215546Sopenharmony_cit0			write VFD_DECODE[0].INSTR (228a)
3864bf215546Sopenharmony_ci				VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
3865bf215546Sopenharmony_ci109d0f88:			0000: 0000228a 2c0020df
3866bf215546Sopenharmony_cit0			write VFD_CONTROL_0 (2200)
3867bf215546Sopenharmony_ci				VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
3868bf215546Sopenharmony_ci				VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
3869bf215546Sopenharmony_ci				VFD_CONTROL_2: 0
3870bf215546Sopenharmony_ci				VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
3871bf215546Sopenharmony_ci				VFD_CONTROL_4: 0
3872bf215546Sopenharmony_ci109d0f90:			0000: 00042200 041a0004 fcfc0081 00000000 0000fc00 00000000
3873bf215546Sopenharmony_cit0			write UCHE_INVALIDATE0 (0e8a)
3874bf215546Sopenharmony_ci				UCHE_INVALIDATE0: 0
3875bf215546Sopenharmony_ci				UCHE_INVALIDATE1: 0x12
3876bf215546Sopenharmony_ci109d0fa8:			0000: 00010e8a 00000000 00000012
3877bf215546Sopenharmony_cit0			write VFD_INDEX_OFFSET (2208)
3878bf215546Sopenharmony_ci				VFD_INDEX_OFFSET: 0
3879bf215546Sopenharmony_ci				UNKNOWN_2209: 0
3880bf215546Sopenharmony_ci109d0fb4:			0000: 00012208 00000000 00000000
3881bf215546Sopenharmony_cit0			write PC_RESTART_INDEX (21c6)
3882bf215546Sopenharmony_ci				PC_RESTART_INDEX: 0xffffffff
3883bf215546Sopenharmony_ci109d0fc0:			0000: 000021c6 ffffffff
3884bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
3885bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x50
3886bf215546Sopenharmony_ci				:0,79,115,80
3887bf215546Sopenharmony_ci109d0fc8:			0000: 0000057f 00000050
3888bf215546Sopenharmony_cit3			opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
3889bf215546Sopenharmony_ci				{ 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 }
3890bf215546Sopenharmony_ci				{ NUM_INSTANCES = 1 }
3891bf215546Sopenharmony_ci				{ NUM_INDICES = 120 }
3892bf215546Sopenharmony_ci				{ FIRST_INDX = 0 }
3893bf215546Sopenharmony_ci				{ INDX_BASE = 0x10bd0f78 }
3894bf215546Sopenharmony_ci				{ INDX_SIZE = 240 }
3895bf215546Sopenharmony_ci			draw[13] register values
3896bf215546Sopenharmony_ci!+	0000004f			CP_SCRATCH[0x5].REG: 0x4f
3897bf215546Sopenharmony_ci			:0,79,115,80
3898bf215546Sopenharmony_ci!+	00000050			CP_SCRATCH[0x7].REG: 0x50
3899bf215546Sopenharmony_ci			:0,79,115,80
3900bf215546Sopenharmony_ci +	00000000			UCHE_INVALIDATE0: 0
3901bf215546Sopenharmony_ci +	00000012			UCHE_INVALIDATE1: 0x12
3902bf215546Sopenharmony_ci +	00080000			GRAS_CL_CLIP_CNTL: { 0x80000 }
3903bf215546Sopenharmony_ci!+	00000000			GRAS_CNTL: { 0 }
3904bf215546Sopenharmony_ci +	00100010			GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
3905bf215546Sopenharmony_ci +	00000010			GRAS_SU_POINT_SIZE: 1.000000
3906bf215546Sopenharmony_ci +	00000000			GRAS_ALPHA_CONTROL: { 0 }
3907bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_SCALE: 0.000000
3908bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
3909bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
3910bf215546Sopenharmony_ci +	00100012			GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
3911bf215546Sopenharmony_ci +	012b012b			GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
3912bf215546Sopenharmony_ci +	00000000			GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
3913bf215546Sopenharmony_ci!+	00000000			RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
3914bf215546Sopenharmony_ci +	00000001			RB_FS_OUTPUT_REG: { MRT = 1 }
3915bf215546Sopenharmony_ci +	80000016			RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_READ_ENABLE }
3916bf215546Sopenharmony_ci +	00000000			RB_VPORT_Z_CLAMP[0].MIN: 0
3917bf215546Sopenharmony_ci +	00ffffff			RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
3918bf215546Sopenharmony_ci +	42001004			VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
3919bf215546Sopenharmony_ci +	00040400			VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
3920bf215546Sopenharmony_ci!+	00000055			VPC_VARYING_INTERP[0].MODE: 0x55
3921bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x1].MODE: 0
3922bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x2].MODE: 0
3923bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x3].MODE: 0
3924bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x4].MODE: 0
3925bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x5].MODE: 0
3926bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x6].MODE: 0
3927bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x7].MODE: 0
3928bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0].MODE: 0
3929bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x1].MODE: 0
3930bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x2].MODE: 0
3931bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x3].MODE: 0
3932bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x4].MODE: 0
3933bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x5].MODE: 0
3934bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x6].MODE: 0
3935bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x7].MODE: 0
3936bf215546Sopenharmony_ci +	02000001			PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
3937bf215546Sopenharmony_ci +	00000012			PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
3938bf215546Sopenharmony_ci +	ffffffff			PC_RESTART_INDEX: 0xffffffff
3939bf215546Sopenharmony_ci!+	041a0004			VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
3940bf215546Sopenharmony_ci +	fcfc0081			VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
3941bf215546Sopenharmony_ci +	00000000			VFD_CONTROL_2: 0
3942bf215546Sopenharmony_ci +	0000fc00			VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
3943bf215546Sopenharmony_ci +	00000000			VFD_CONTROL_4: 0
3944bf215546Sopenharmony_ci +	00000000			VFD_INDEX_OFFSET: 0
3945bf215546Sopenharmony_ci +	00000000			UNKNOWN_2209: 0
3946bf215546Sopenharmony_ci!+	0000060b			VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
3947bf215546Sopenharmony_ci +	107cb000			VFD_FETCH[0].INSTR_1: 0x107cb000
3948bf215546Sopenharmony_ci +	00100000			VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
3949bf215546Sopenharmony_ci +	00000001			VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
3950bf215546Sopenharmony_ci!+	2c0020df			VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
3951bf215546Sopenharmony_ci +	00140010			SP_SP_CTRL_REG: { 0x140010 }
3952bf215546Sopenharmony_ci +	000005ff			SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
3953bf215546Sopenharmony_ci!+	00201000			SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 4 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
3954bf215546Sopenharmony_ci!+	04000042			SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
3955bf215546Sopenharmony_ci!+	0010fc06			SP_VS_PARAM_REG: { POSREGID = r1.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
3956bf215546Sopenharmony_ci!+	00001e0a			SP_VS_OUT[0].REG: { A_REGID = r2.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
3957bf215546Sopenharmony_ci +	08080808			SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
3958bf215546Sopenharmony_ci +	00000000			SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
3959bf215546Sopenharmony_ci!+	10cd0000			SP_VS_OBJ_START: 0x10cd0000
3960bf215546Sopenharmony_ci +	00000004			SP_VS_LENGTH_REG: 4
3961bf215546Sopenharmony_ci!+	00340402			SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
3962bf215546Sopenharmony_ci +	8010003e			SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
3963bf215546Sopenharmony_ci +	7e420000			SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3964bf215546Sopenharmony_ci!+	10cd2000			SP_FS_OBJ_START: 0x10cd2000
3965bf215546Sopenharmony_ci +	00000001			SP_FS_LENGTH_REG: 1
3966bf215546Sopenharmony_ci +	0000fc01			SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
3967bf215546Sopenharmony_ci!+	0001a000			SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
3968bf215546Sopenharmony_ci!+	00000000			SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
3969bf215546Sopenharmony_ci!+	00000000			SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
3970bf215546Sopenharmony_ci!+	00000000			SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
3971bf215546Sopenharmony_ci!+	00000000			SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
3972bf215546Sopenharmony_ci!+	00000000			SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
3973bf215546Sopenharmony_ci!+	00000000			SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
3974bf215546Sopenharmony_ci!+	00000000			SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
3975bf215546Sopenharmony_ci +	7e420000			SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3976bf215546Sopenharmony_ci +	7e420000			SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3977bf215546Sopenharmony_ci +	7e420000			SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
3978bf215546Sopenharmony_ci +	28000250			HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
3979bf215546Sopenharmony_ci +	fcfc0100			HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
3980bf215546Sopenharmony_ci +	fff3f3f0			HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
3981bf215546Sopenharmony_ci!+	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 }
3982bf215546Sopenharmony_ci +	00fcfcfc			HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
3983bf215546Sopenharmony_ci +	04000042			HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
3984bf215546Sopenharmony_ci +	017e423e			HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
3985bf215546Sopenharmony_ci +	007e4200			HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
3986bf215546Sopenharmony_ci +	007e4200			HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
3987bf215546Sopenharmony_ci +	007e4200			HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
3988bf215546Sopenharmony_ci +	00000003			HLSQ_UPDATE_CONTROL: 0x3
3989bf215546Sopenharmony_ci109d0fd0:			0000: c0053800 00000404 00000001 00000078 00000000 10bd0f78 000000f0
3990bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
3991bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x51
3992bf215546Sopenharmony_ci				:0,79,115,81
3993bf215546Sopenharmony_ci109d0fec:			0000: 0000057f 00000051
3994bf215546Sopenharmony_cit0			write CP_SCRATCH[0x5].REG (057d)
3995bf215546Sopenharmony_ci				CP_SCRATCH[0x5].REG: 0x55
3996bf215546Sopenharmony_ci				:0,85,115,81
3997bf215546Sopenharmony_ci109d0ff4:			0000: 0000057d 00000055
3998bf215546Sopenharmony_cit0			write PC_PRIM_VTX_CNTL (21c4)
3999bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
4000bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
4001bf215546Sopenharmony_ci109d0ffc:			0000: 000121c4 02000001 00000012
4002bf215546Sopenharmony_cit0			write VFD_INDEX_OFFSET (2208)
4003bf215546Sopenharmony_ci				VFD_INDEX_OFFSET: 0
4004bf215546Sopenharmony_ci				UNKNOWN_2209: 0
4005bf215546Sopenharmony_ci109d1008:			0000: 00012208 00000000 00000000
4006bf215546Sopenharmony_cit0			write PC_RESTART_INDEX (21c6)
4007bf215546Sopenharmony_ci				PC_RESTART_INDEX: 0xffffffff
4008bf215546Sopenharmony_ci109d1014:			0000: 000021c6 ffffffff
4009bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
4010bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x56
4011bf215546Sopenharmony_ci				:0,85,115,86
4012bf215546Sopenharmony_ci109d101c:			0000: 0000057f 00000056
4013bf215546Sopenharmony_cit3			opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
4014bf215546Sopenharmony_ci				{ 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 }
4015bf215546Sopenharmony_ci				{ NUM_INSTANCES = 1 }
4016bf215546Sopenharmony_ci				{ NUM_INDICES = 60 }
4017bf215546Sopenharmony_ci				{ FIRST_INDX = 0 }
4018bf215546Sopenharmony_ci				{ INDX_BASE = 0x10bd1068 }
4019bf215546Sopenharmony_ci				{ INDX_SIZE = 120 }
4020bf215546Sopenharmony_ci			draw[14] register values
4021bf215546Sopenharmony_ci!+	00000055			CP_SCRATCH[0x5].REG: 0x55
4022bf215546Sopenharmony_ci			:0,85,115,86
4023bf215546Sopenharmony_ci!+	00000056			CP_SCRATCH[0x7].REG: 0x56
4024bf215546Sopenharmony_ci			:0,85,115,86
4025bf215546Sopenharmony_ci +	02000001			PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
4026bf215546Sopenharmony_ci +	00000012			PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
4027bf215546Sopenharmony_ci +	ffffffff			PC_RESTART_INDEX: 0xffffffff
4028bf215546Sopenharmony_ci +	00000000			VFD_INDEX_OFFSET: 0
4029bf215546Sopenharmony_ci +	00000000			UNKNOWN_2209: 0
4030bf215546Sopenharmony_ci109d1024:			0000: c0053800 00000404 00000001 0000003c 00000000 10bd1068 00000078
4031bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
4032bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x57
4033bf215546Sopenharmony_ci				:0,85,115,87
4034bf215546Sopenharmony_ci109d1040:			0000: 0000057f 00000057
4035bf215546Sopenharmony_cit0			write CP_SCRATCH[0x5].REG (057d)
4036bf215546Sopenharmony_ci				CP_SCRATCH[0x5].REG: 0x5b
4037bf215546Sopenharmony_ci				:0,91,115,87
4038bf215546Sopenharmony_ci109d1048:			0000: 0000057d 0000005b
4039bf215546Sopenharmony_cit0			write PC_PRIM_VTX_CNTL (21c4)
4040bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
4041bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
4042bf215546Sopenharmony_ci109d1050:			0000: 000121c4 02000001 00000012
4043bf215546Sopenharmony_cit3			opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
4044bf215546Sopenharmony_ci109d105c:			0000: c0002600 00000000
4045bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (51 dwords)
4046bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
4047bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
4048bf215546Sopenharmony_ci109d1070:				3.924428 -1.210718 0.674073 0.570369 1.829991 4.619613 -0.131666 -0.111410
4049bf215546Sopenharmony_ci109d1090:				2.500000 -1.480991 -0.961761 -0.813798 -13.423393 17.082890 32.944622 37.106991
4050bf215546Sopenharmony_ci109d10b0:				0.000000 0.000000 -1.000000 1.000000 0.040000 0.040000 0.200000 1.000000
4051bf215546Sopenharmony_ci109d10d0:				-0.244131 0.617574 0.747665 0.000000 1.000000 0.000000 0.000000 0.000000
4052bf215546Sopenharmony_ci109d10f0:				0.000000 0.000000 0.000000 1.000000 0.200000 0.200000 1.000000 1.000000
4053bf215546Sopenharmony_ci109d1110:				0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000
4054bf215546Sopenharmony_ci109d1070:				0000: 407b29d2 bf9af8cb 3f2c9009 3f1203b9 3fea3d23 4093d3df be06d382 bde42adc
4055bf215546Sopenharmony_ci109d1090:				0020: 40200000 bfbd9119 bf7635f5 bf50550b c156c638 4188a9c2 4203c74b 42146d8f
4056bf215546Sopenharmony_ci109d10b0:				0040: 00000000 00000000 bf800000 3f800000 3d23d70b 3d23d70b 3e4ccccd 3f800000
4057bf215546Sopenharmony_ci109d10d0:				0060: be79fd80 3f1e194f 3f3f66f5 00000000 3f800000 00000000 00000000 00000000
4058bf215546Sopenharmony_ci109d10f0:				0080: 00000000 00000000 00000000 3f800000 3e4ccccd 3e4ccccd 3f800000 3f800000
4059bf215546Sopenharmony_ci109d1110:				00a0: 00000000 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000
4060bf215546Sopenharmony_ci109d1064:			0000: c0313000 03200000 00000001 407b29d2 bf9af8cb 3f2c9009 3f1203b9 3fea3d23
4061bf215546Sopenharmony_ci109d1084:			0020: 4093d3df be06d382 bde42adc 40200000 bfbd9119 bf7635f5 bf50550b c156c638
4062bf215546Sopenharmony_ci109d10a4:			0040: 4188a9c2 4203c74b 42146d8f 00000000 00000000 bf800000 3f800000 3d23d70b
4063bf215546Sopenharmony_ci109d10c4:			0060: 3d23d70b 3e4ccccd 3f800000 be79fd80 3f1e194f 3f3f66f5 00000000 3f800000
4064bf215546Sopenharmony_ci109d10e4:			0080: 00000000 00000000 00000000 00000000 00000000 00000000 3f800000 3e4ccccd
4065bf215546Sopenharmony_ci109d1104:			00a0: 3e4ccccd 3f800000 3f800000 00000000 00000000 00000000 3f800000 00000000
4066bf215546Sopenharmony_ci109d1124:			00c0: 00000000 00000000 3f800000
4067bf215546Sopenharmony_cit0			write VFD_INDEX_OFFSET (2208)
4068bf215546Sopenharmony_ci				VFD_INDEX_OFFSET: 0
4069bf215546Sopenharmony_ci				UNKNOWN_2209: 0
4070bf215546Sopenharmony_ci109d1130:			0000: 00012208 00000000 00000000
4071bf215546Sopenharmony_cit0			write PC_RESTART_INDEX (21c6)
4072bf215546Sopenharmony_ci				PC_RESTART_INDEX: 0xffffffff
4073bf215546Sopenharmony_ci109d113c:			0000: 000021c6 ffffffff
4074bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
4075bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x5c
4076bf215546Sopenharmony_ci				:0,91,115,92
4077bf215546Sopenharmony_ci109d1144:			0000: 0000057f 0000005c
4078bf215546Sopenharmony_cit3			opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
4079bf215546Sopenharmony_ci				{ 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 }
4080bf215546Sopenharmony_ci				{ NUM_INSTANCES = 1 }
4081bf215546Sopenharmony_ci				{ NUM_INDICES = 120 }
4082bf215546Sopenharmony_ci				{ FIRST_INDX = 0 }
4083bf215546Sopenharmony_ci				{ INDX_BASE = 0x10bd10e0 }
4084bf215546Sopenharmony_ci				{ INDX_SIZE = 240 }
4085bf215546Sopenharmony_ci			draw[15] register values
4086bf215546Sopenharmony_ci!+	0000005b			CP_SCRATCH[0x5].REG: 0x5b
4087bf215546Sopenharmony_ci			:0,91,115,92
4088bf215546Sopenharmony_ci!+	0000005c			CP_SCRATCH[0x7].REG: 0x5c
4089bf215546Sopenharmony_ci			:0,91,115,92
4090bf215546Sopenharmony_ci +	02000001			PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
4091bf215546Sopenharmony_ci +	00000012			PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
4092bf215546Sopenharmony_ci +	ffffffff			PC_RESTART_INDEX: 0xffffffff
4093bf215546Sopenharmony_ci +	00000000			VFD_INDEX_OFFSET: 0
4094bf215546Sopenharmony_ci +	00000000			UNKNOWN_2209: 0
4095bf215546Sopenharmony_ci109d114c:			0000: c0053800 00000404 00000001 00000078 00000000 10bd10e0 000000f0
4096bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
4097bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x5d
4098bf215546Sopenharmony_ci				:0,91,115,93
4099bf215546Sopenharmony_ci109d1168:			0000: 0000057f 0000005d
4100bf215546Sopenharmony_cit0			write CP_SCRATCH[0x5].REG (057d)
4101bf215546Sopenharmony_ci				CP_SCRATCH[0x5].REG: 0x61
4102bf215546Sopenharmony_ci				:0,97,115,93
4103bf215546Sopenharmony_ci109d1170:			0000: 0000057d 00000061
4104bf215546Sopenharmony_cit0			write PC_PRIM_VTX_CNTL (21c4)
4105bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
4106bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
4107bf215546Sopenharmony_ci109d1178:			0000: 000121c4 02000001 00000012
4108bf215546Sopenharmony_cit0			write VFD_INDEX_OFFSET (2208)
4109bf215546Sopenharmony_ci				VFD_INDEX_OFFSET: 0
4110bf215546Sopenharmony_ci				UNKNOWN_2209: 0
4111bf215546Sopenharmony_ci109d1184:			0000: 00012208 00000000 00000000
4112bf215546Sopenharmony_cit0			write PC_RESTART_INDEX (21c6)
4113bf215546Sopenharmony_ci				PC_RESTART_INDEX: 0xffffffff
4114bf215546Sopenharmony_ci109d1190:			0000: 000021c6 ffffffff
4115bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
4116bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x62
4117bf215546Sopenharmony_ci				:0,97,115,98
4118bf215546Sopenharmony_ci109d1198:			0000: 0000057f 00000062
4119bf215546Sopenharmony_cit3			opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
4120bf215546Sopenharmony_ci				{ 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 }
4121bf215546Sopenharmony_ci				{ NUM_INSTANCES = 1 }
4122bf215546Sopenharmony_ci				{ NUM_INDICES = 60 }
4123bf215546Sopenharmony_ci				{ FIRST_INDX = 0 }
4124bf215546Sopenharmony_ci				{ INDX_BASE = 0x10bd11d0 }
4125bf215546Sopenharmony_ci				{ INDX_SIZE = 120 }
4126bf215546Sopenharmony_ci			draw[16] register values
4127bf215546Sopenharmony_ci!+	00000061			CP_SCRATCH[0x5].REG: 0x61
4128bf215546Sopenharmony_ci			:0,97,115,98
4129bf215546Sopenharmony_ci!+	00000062			CP_SCRATCH[0x7].REG: 0x62
4130bf215546Sopenharmony_ci			:0,97,115,98
4131bf215546Sopenharmony_ci +	02000001			PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
4132bf215546Sopenharmony_ci +	00000012			PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
4133bf215546Sopenharmony_ci +	ffffffff			PC_RESTART_INDEX: 0xffffffff
4134bf215546Sopenharmony_ci +	00000000			VFD_INDEX_OFFSET: 0
4135bf215546Sopenharmony_ci +	00000000			UNKNOWN_2209: 0
4136bf215546Sopenharmony_ci109d11a0:			0000: c0053800 00000404 00000001 0000003c 00000000 10bd11d0 00000078
4137bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
4138bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x63
4139bf215546Sopenharmony_ci				:0,97,115,99
4140bf215546Sopenharmony_ci109d11bc:			0000: 0000057f 00000063
4141bf215546Sopenharmony_cit0			write CP_SCRATCH[0x5].REG (057d)
4142bf215546Sopenharmony_ci				CP_SCRATCH[0x5].REG: 0x67
4143bf215546Sopenharmony_ci				:0,103,115,99
4144bf215546Sopenharmony_ci109d11c4:			0000: 0000057d 00000067
4145bf215546Sopenharmony_cit0			write RB_DEPTH_CONTROL (2101)
4146bf215546Sopenharmony_ci				RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_READ_ENABLE }
4147bf215546Sopenharmony_ci109d11cc:			0000: 00002101 80000016
4148bf215546Sopenharmony_cit0			write GRAS_ALPHA_CONTROL (2073)
4149bf215546Sopenharmony_ci				GRAS_ALPHA_CONTROL: { 0 }
4150bf215546Sopenharmony_ci109d11d4:			0000: 00002073 00000000
4151bf215546Sopenharmony_cit0			write PC_PRIM_VTX_CNTL (21c4)
4152bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
4153bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
4154bf215546Sopenharmony_ci109d11dc:			0000: 000121c4 02000001 00000012
4155bf215546Sopenharmony_cit0			write HLSQ_UPDATE_CONTROL (23db)
4156bf215546Sopenharmony_ci				HLSQ_UPDATE_CONTROL: 0x3
4157bf215546Sopenharmony_ci109d11e8:			0000: 000023db 00000003
4158bf215546Sopenharmony_cit0			write HLSQ_CONTROL_0_REG (23c0)
4159bf215546Sopenharmony_ci				HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
4160bf215546Sopenharmony_ci				HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
4161bf215546Sopenharmony_ci				HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
4162bf215546Sopenharmony_ci				HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
4163bf215546Sopenharmony_ci				HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
4164bf215546Sopenharmony_ci109d11f0:			0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfcfc 00fcfcfc
4165bf215546Sopenharmony_cit0			write HLSQ_VS_CONTROL_REG (23c5)
4166bf215546Sopenharmony_ci				HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
4167bf215546Sopenharmony_ci				HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
4168bf215546Sopenharmony_ci				HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
4169bf215546Sopenharmony_ci				HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
4170bf215546Sopenharmony_ci				HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
4171bf215546Sopenharmony_ci109d1208:			0000: 000423c5 04000042 017e423e 007e4200 007e4200 007e4200
4172bf215546Sopenharmony_cit0			write SP_SP_CTRL_REG (22c0)
4173bf215546Sopenharmony_ci				SP_SP_CTRL_REG: { 0x140010 }
4174bf215546Sopenharmony_ci109d1220:			0000: 000022c0 00140010
4175bf215546Sopenharmony_cit0			write SP_INSTR_CACHE_CTRL (22c1)
4176bf215546Sopenharmony_ci				SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
4177bf215546Sopenharmony_ci109d1228:			0000: 000022c1 000005ff
4178bf215546Sopenharmony_cit0			write SP_VS_LENGTH_REG (22e5)
4179bf215546Sopenharmony_ci				SP_VS_LENGTH_REG: 4
4180bf215546Sopenharmony_ci109d1230:			0000: 000022e5 00000004
4181bf215546Sopenharmony_cit0			write SP_VS_CTRL_REG0 (22c4)
4182bf215546Sopenharmony_ci				SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
4183bf215546Sopenharmony_ci				SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
4184bf215546Sopenharmony_ci				SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
4185bf215546Sopenharmony_ci109d1238:			0000: 000222c4 00201400 08000042 0010fc0a
4186bf215546Sopenharmony_cit0			write SP_VS_OUT[0].REG (22c7)
4187bf215546Sopenharmony_ci				SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
4188bf215546Sopenharmony_ci109d1248:			0000: 000022c7 00001e0e
4189bf215546Sopenharmony_cit0			write SP_VS_VPC_DST[0].REG (22d8)
4190bf215546Sopenharmony_ci				SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
4191bf215546Sopenharmony_ci109d1250:			0000: 000022d8 08080808
4192bf215546Sopenharmony_cit0			write SP_VS_OBJ_OFFSET_REG (22e0)
4193bf215546Sopenharmony_ci				SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
4194bf215546Sopenharmony_ci				SP_VS_OBJ_START: 0x10cd5000
4195bf215546Sopenharmony_ci109d1258:			0000: 000122e0 00000000 10cd5000
4196bf215546Sopenharmony_cit0			write SP_FS_LENGTH_REG (22ef)
4197bf215546Sopenharmony_ci				SP_FS_LENGTH_REG: 1
4198bf215546Sopenharmony_ci109d1264:			0000: 000022ef 00000001
4199bf215546Sopenharmony_cit0			write SP_FS_CTRL_REG0 (22e8)
4200bf215546Sopenharmony_ci				SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
4201bf215546Sopenharmony_ci				SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
4202bf215546Sopenharmony_ci109d126c:			0000: 000122e8 00340402 8010003e
4203bf215546Sopenharmony_cit0			write SP_FS_OBJ_OFFSET_REG (22ea)
4204bf215546Sopenharmony_ci				SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
4205bf215546Sopenharmony_ci				SP_FS_OBJ_START: 0x10cd2000
4206bf215546Sopenharmony_ci109d1278:			0000: 000122ea 7e420000 10cd2000
4207bf215546Sopenharmony_cit0			write SP_HS_OBJ_OFFSET_REG (230d)
4208bf215546Sopenharmony_ci				SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
4209bf215546Sopenharmony_ci109d1284:			0000: 0000230d 7e420000
4210bf215546Sopenharmony_cit0			write SP_DS_OBJ_OFFSET_REG (2334)
4211bf215546Sopenharmony_ci				SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
4212bf215546Sopenharmony_ci109d128c:			0000: 00002334 7e420000
4213bf215546Sopenharmony_cit0			write SP_GS_OBJ_OFFSET_REG (235b)
4214bf215546Sopenharmony_ci				SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
4215bf215546Sopenharmony_ci109d1294:			0000: 0000235b 7e420000
4216bf215546Sopenharmony_cit0			write GRAS_CNTL (2003)
4217bf215546Sopenharmony_ci				GRAS_CNTL: { 0 }
4218bf215546Sopenharmony_ci109d129c:			0000: 00002003 00000000
4219bf215546Sopenharmony_cit0			write RB_RENDER_CONTROL2 (20a3)
4220bf215546Sopenharmony_ci				RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
4221bf215546Sopenharmony_ci109d12a4:			0000: 000020a3 00000000
4222bf215546Sopenharmony_cit0			write RB_FS_OUTPUT_REG (2100)
4223bf215546Sopenharmony_ci				RB_FS_OUTPUT_REG: { MRT = 1 }
4224bf215546Sopenharmony_ci109d12ac:			0000: 00002100 00000001
4225bf215546Sopenharmony_cit0			write SP_FS_OUTPUT_REG (22f0)
4226bf215546Sopenharmony_ci				SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
4227bf215546Sopenharmony_ci109d12b4:			0000: 000022f0 0000fc01
4228bf215546Sopenharmony_cit0			write SP_FS_MRT[0].REG (22f1)
4229bf215546Sopenharmony_ci				SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
4230bf215546Sopenharmony_ci				SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
4231bf215546Sopenharmony_ci				SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
4232bf215546Sopenharmony_ci				SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
4233bf215546Sopenharmony_ci				SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
4234bf215546Sopenharmony_ci				SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
4235bf215546Sopenharmony_ci				SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
4236bf215546Sopenharmony_ci				SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
4237bf215546Sopenharmony_ci109d12bc:			0000: 000722f1 0001a000 00000000 00000000 00000000 00000000 00000000 00000000
4238bf215546Sopenharmony_ci*
4239bf215546Sopenharmony_cit0			write VPC_ATTR (2140)
4240bf215546Sopenharmony_ci				VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
4241bf215546Sopenharmony_ci				VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
4242bf215546Sopenharmony_ci109d12e0:			0000: 00012140 42001004 00040400
4243bf215546Sopenharmony_cit0			write VPC_VARYING_INTERP[0].MODE (2142)
4244bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0].MODE: 0x55
4245bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x1].MODE: 0
4246bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x2].MODE: 0
4247bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x3].MODE: 0
4248bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x4].MODE: 0
4249bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x5].MODE: 0
4250bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x6].MODE: 0
4251bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x7].MODE: 0
4252bf215546Sopenharmony_ci109d12ec:			0000: 00072142 00000055 00000000 00000000 00000000 00000000 00000000 00000000
4253bf215546Sopenharmony_ci*
4254bf215546Sopenharmony_cit0			write VPC_VARYING_PS_REPL[0].MODE (214a)
4255bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0].MODE: 0
4256bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x1].MODE: 0
4257bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x2].MODE: 0
4258bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x3].MODE: 0
4259bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x4].MODE: 0
4260bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x5].MODE: 0
4261bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x6].MODE: 0
4262bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x7].MODE: 0
4263bf215546Sopenharmony_ci109d1310:			0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
4264bf215546Sopenharmony_ci*
4265bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (131 dwords)
4266bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 4 }
4267bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
4268bf215546Sopenharmony_ci				:2:0000:0000[40700000x_10000002x] mul.f r0.x, r0.z, c0.x
4269bf215546Sopenharmony_ci				:2:0001:0001[40700001x_10030002x] mul.f r0.y, r0.z, c0.w
4270bf215546Sopenharmony_ci				:3:0002:0002[63818000x_00001004x] mad.f32 r0.x, c1.x, r0.w, r0.x
4271bf215546Sopenharmony_ci				:3:0003:0003[63818001x_00011007x] mad.f32 r0.y, c1.w, r0.w, r0.y
4272bf215546Sopenharmony_ci				:3:0004:0004[63820000x_00001008x] mad.f32 r0.x, c2.x, r1.x, r0.x
4273bf215546Sopenharmony_ci				:3:0005:0005[63820001x_0001100bx] mad.f32 r0.y, c2.w, r1.x, r0.y
4274bf215546Sopenharmony_ci				:3:0006:0006[6382800ax_0000100cx] mad.f32 r2.z, c3.x, r1.y, r0.x
4275bf215546Sopenharmony_ci				:2:0007:0007[40700000x_10010002x] mul.f r0.x, r0.z, c0.y
4276bf215546Sopenharmony_ci				:3:0008:0008[6382800dx_0001100fx] mad.f32 r3.y, c3.w, r1.y, r0.y
4277bf215546Sopenharmony_ci				:3:0009:0009[63818000x_00001005x] mad.f32 r0.x, c1.y, r0.w, r0.x
4278bf215546Sopenharmony_ci				:1:0010:0010[20244001x_00000010x] mov.f32f32 r0.y, c4.x
4279bf215546Sopenharmony_ci				:3:0011:0011[63820000x_00001009x] mad.f32 r0.x, c2.y, r1.x, r0.x
4280bf215546Sopenharmony_ci				:0:0012:0012[00000000x_00000000x] nop
4281bf215546Sopenharmony_ci				:3:0013:0013[6382800bx_0000100dx] mad.f32 r2.w, c3.y, r1.y, r0.x
4282bf215546Sopenharmony_ci				:2:0014:0014[40700000x_10020002x] mul.f r0.x, r0.z, c0.z
4283bf215546Sopenharmony_ci				:2:0015:0015[40100001x_0001101cx] add.f r0.y, c7.x, r0.y
4284bf215546Sopenharmony_ci				:3:0016:0016[63818000x_00001006x] mad.f32 r0.x, c1.z, r0.w, r0.x
4285bf215546Sopenharmony_ci				:1:0017:0017[20244002x_00000011x] mov.f32f32 r0.z, c4.y
4286bf215546Sopenharmony_ci				:3:0018:0018[63820000x_0000100ax] mad.f32 r0.x, c2.z, r1.x, r0.x
4287bf215546Sopenharmony_ci				:1:0019:0019[20244004x_00000013x] mov.f32f32 r1.x, c4.w
4288bf215546Sopenharmony_ci				:3:0020:0020[6382800cx_0000100ex] mad.f32 r3.x, c3.z, r1.y, r0.x
4289bf215546Sopenharmony_ci				:2:0021:0021[40700000x_00070007x] mul.f r0.x, r1.w, r1.w
4290bf215546Sopenharmony_ci				:2:0022:0022[40100002x_0002101dx] add.f r0.z, c7.y, r0.z
4291bf215546Sopenharmony_ci				:3:0023:0023[63830000x_00000006x] mad.f32 r0.x, r1.z, r1.z, r0.x
4292bf215546Sopenharmony_ci				:2:0024:0024[40500411x_00041013x] (sat)max.f r4.y, c4.w, r1.x
4293bf215546Sopenharmony_ci				:3:0025:0025[63840000x_00000008x] mad.f32 r0.x, r2.x, r2.x, r0.x
4294bf215546Sopenharmony_ci				:1:0026:0026[20244003x_00000012x] mov.f32f32 r0.w, c4.z
4295bf215546Sopenharmony_ci				:0:0027:0027[00000200x_00000000x] (rpt2)nop
4296bf215546Sopenharmony_ci				:2:0028:0030[40100003x_0003101ex] add.f r0.w, c7.z, r0.w
4297bf215546Sopenharmony_ci				:0:0029:0031[00000000x_00000000x] nop
4298bf215546Sopenharmony_ci				:4:0030:0032[80300000x_00000000x] rsq r0.x, r0.x
4299bf215546Sopenharmony_ci				:2:0031:0033[40701004x_00000007x] (ss)mul.f r1.x, r1.w, r0.x
4300bf215546Sopenharmony_ci				:0:0032:0034[00000200x_00000000x] (rpt2)nop
4301bf215546Sopenharmony_ci				:2:0033:0037[40700004x_10150004x] mul.f r1.x, r1.x, c5.y
4302bf215546Sopenharmony_ci				:2:0034:0038[40700005x_00000006x] mul.f r1.y, r1.z, r0.x
4303bf215546Sopenharmony_ci				:0:0035:0039[00000200x_00000000x] (rpt2)nop
4304bf215546Sopenharmony_ci				:3:0036:0042[63828004x_00041014x] mad.f32 r1.x, c5.x, r1.y, r1.x
4305bf215546Sopenharmony_ci				:2:0037:0043[40700000x_00000008x] mul.f r0.x, r2.x, r0.x
4306bf215546Sopenharmony_ci				:0:0038:0044[00000200x_00000000x] (rpt2)nop
4307bf215546Sopenharmony_ci				:3:0039:0047[63800000x_00041016x] mad.f32 r0.x, c5.z, r0.x, r1.x
4308bf215546Sopenharmony_ci				:0:0040:0048[00000200x_00000000x] (rpt2)nop
4309bf215546Sopenharmony_ci				:2:0041:0051[40b00004x_00001034x] cmps.f.lt r1.x, c13.x, r0.x
4310bf215546Sopenharmony_ci				:2:0042:0052[40500000x_00001034x] max.f r0.x, c13.x, r0.x
4311bf215546Sopenharmony_ci				:0:0043:0053[00000100x_00000000x] (rpt1)nop
4312bf215546Sopenharmony_ci				:1:0044:0055[200c4004x_00000004x] cov.u32f32 r1.x, r1.x
4313bf215546Sopenharmony_ci				:3:0045:0056[63800001x_00011020x] mad.f32 r0.y, c8.x, r0.x, r0.y
4314bf215546Sopenharmony_ci				:3:0046:0057[63800002x_00021021x] mad.f32 r0.z, c8.y, r0.x, r0.z
4315bf215546Sopenharmony_ci				:3:0047:0058[63800000x_00031022x] mad.f32 r0.x, c8.z, r0.x, r0.w
4316bf215546Sopenharmony_ci				:3:0048:0059[6382040ex_00011024x] (sat)mad.f32 r3.z, c9.x, r1.x, r0.y
4317bf215546Sopenharmony_ci				:3:0049:0060[6382040fx_00021025x] (sat)mad.f32 r3.w, c9.y, r1.x, r0.z
4318bf215546Sopenharmony_ci				:3:0050:0061[63820410x_00001026x] (sat)mad.f32 r4.x, c9.z, r1.x, r0.x
4319bf215546Sopenharmony_ci				:0:0051:0062[03000000x_00000000x] end
4320bf215546Sopenharmony_ci				:0:0052:0063[00000000x_00000000x] nop
4321bf215546Sopenharmony_ci				:0:0053:0064[00000000x_00000000x] nop
4322bf215546Sopenharmony_ci				:0:0054:0065[00000000x_00000000x] nop
4323bf215546Sopenharmony_ci				:0:0055:0066[00000000x_00000000x] nop
4324bf215546Sopenharmony_ci				Stats:
4325bf215546Sopenharmony_ci				- shaderdb: 67 instr, 23 nops, 44 non-nops, 4 mov, 1 cov
4326bf215546Sopenharmony_ci				- shaderdb: 0 last-baryf, 0 half, 5 full, 13 constlen
4327bf215546Sopenharmony_ci				- shaderdb: 24 cat0, 5 cat1, 15 cat2, 22 cat3, 1 cat4, 0 cat5, 0 cat6, 0 cat7
4328bf215546Sopenharmony_ci				- shaderdb: 10 sstall, 1 (ss), 0 (sy)
4329bf215546Sopenharmony_ci109d1334:			0000: c0813000 01200000 00000000 10000002 40700000 10030002 40700001 00001004
4330bf215546Sopenharmony_ci109d1354:			0020: 63818000 00011007 63818001 00001008 63820000 0001100b 63820001 0000100c
4331bf215546Sopenharmony_ci109d1374:			0040: 6382800a 10010002 40700000 0001100f 6382800d 00001005 63818000 00000010
4332bf215546Sopenharmony_ci109d1394:			0060: 20244001 00001009 63820000 00000000 00000000 0000100d 6382800b 10020002
4333bf215546Sopenharmony_ci109d13b4:			0080: 40700000 0001101c 40100001 00001006 63818000 00000011 20244002 0000100a
4334bf215546Sopenharmony_ci109d13d4:			00a0: 63820000 00000013 20244004 0000100e 6382800c 00070007 40700000 0002101d
4335bf215546Sopenharmony_ci109d13f4:			00c0: 40100002 00000006 63830000 00041013 40500411 00000008 63840000 00000012
4336bf215546Sopenharmony_ci109d1414:			00e0: 20244003 00000000 00000200 0003101e 40100003 00000000 00000000 00000000
4337bf215546Sopenharmony_ci109d1434:			0100: 80300000 00000007 40701004 00000000 00000200 10150004 40700004 00000006
4338bf215546Sopenharmony_ci109d1454:			0120: 40700005 00000000 00000200 00041014 63828004 00000008 40700000 00000000
4339bf215546Sopenharmony_ci109d1474:			0140: 00000200 00041016 63800000 00000000 00000200 00001034 40b00004 00001034
4340bf215546Sopenharmony_ci109d1494:			0160: 40500000 00000000 00000100 00000004 200c4004 00011020 63800001 00021021
4341bf215546Sopenharmony_ci109d14b4:			0180: 63800002 00031022 63800000 00011024 6382040e 00021025 6382040f 00001026
4342bf215546Sopenharmony_ci109d14d4:			01a0: 63820410 00000000 03000000 00000000 00000000 00000000 00000000 00000000
4343bf215546Sopenharmony_ci*
4344bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (35 dwords)
4345bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
4346bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
4347bf215546Sopenharmony_ci				:0:0000:0000[00000000x_00000000x] nop
4348bf215546Sopenharmony_ci				:6:0001:0001[c7c60000x_01c00000x] ldlv.u32 r0.x, l[0], 1
4349bf215546Sopenharmony_ci				:6:0002:0002[c7c60001x_01c00002x] ldlv.u32 r0.y, l[1], 1
4350bf215546Sopenharmony_ci				:6:0003:0003[c7c60002x_01c00004x] ldlv.u32 r0.z, l[2], 1
4351bf215546Sopenharmony_ci				:6:0004:0004[c7c60003x_01c00006x] ldlv.u32 r0.w, l[3], 1
4352bf215546Sopenharmony_ci				:2:0005:0005[473090fcx_00002000x] (ss)bary.f (ei)r63.x, 0, r0.x
4353bf215546Sopenharmony_ci				:0:0006:0006[03000000x_00000000x] end
4354bf215546Sopenharmony_ci				:0:0007:0007[00000000x_00000000x] nop
4355bf215546Sopenharmony_ci				:0:0008:0008[00000000x_00000000x] nop
4356bf215546Sopenharmony_ci				:0:0009:0009[00000000x_00000000x] nop
4357bf215546Sopenharmony_ci				:0:0010:0010[00000000x_00000000x] nop
4358bf215546Sopenharmony_ci				Stats:
4359bf215546Sopenharmony_ci				- shaderdb: 11 instr, 5 nops, 6 non-nops, 0 mov, 0 cov
4360bf215546Sopenharmony_ci				- shaderdb: 5 last-baryf, 0 half, 1 full, 0 constlen
4361bf215546Sopenharmony_ci				- shaderdb: 6 cat0, 0 cat1, 1 cat2, 0 cat3, 0 cat4, 0 cat5, 4 cat6, 0 cat7
4362bf215546Sopenharmony_ci				- shaderdb: 0 sstall, 1 (ss), 0 (sy)
4363bf215546Sopenharmony_ci109d1540:			0000: c0213000 00700000 00000000 00000000 00000000 01c00000 c7c60000 01c00002
4364bf215546Sopenharmony_ci109d1560:			0020: c7c60001 01c00004 c7c60002 01c00006 c7c60003 00002000 473090fc 00000000
4365bf215546Sopenharmony_ci109d1580:			0040: 03000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
4366bf215546Sopenharmony_ci*
4367bf215546Sopenharmony_cit3			opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
4368bf215546Sopenharmony_ci109d15cc:			0000: c0002600 00000000
4369bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (51 dwords)
4370bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
4371bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
4372bf215546Sopenharmony_ci109d15e0:				3.924428 -1.210718 0.674073 0.570369 1.829991 4.619613 -0.131666 -0.111410
4373bf215546Sopenharmony_ci109d1600:				2.500000 -1.480991 -0.961761 -0.813798 -13.423393 17.082890 32.944622 37.106991
4374bf215546Sopenharmony_ci109d1620:				0.040000 0.040000 0.200000 1.000000 -0.244131 0.617574 0.747665 0.000000
4375bf215546Sopenharmony_ci109d1640:				1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000
4376bf215546Sopenharmony_ci109d1660:				0.200000 0.200000 1.000000 1.000000 0.000000 0.000000 0.000000 1.000000
4377bf215546Sopenharmony_ci109d1680:				0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000
4378bf215546Sopenharmony_ci109d15e0:				0000: 407b29d2 bf9af8cb 3f2c9009 3f1203b9 3fea3d23 4093d3df be06d382 bde42adc
4379bf215546Sopenharmony_ci109d1600:				0020: 40200000 bfbd9119 bf7635f5 bf50550b c156c638 4188a9c2 4203c74b 42146d8f
4380bf215546Sopenharmony_ci109d1620:				0040: 3d23d70b 3d23d70b 3e4ccccd 3f800000 be79fd80 3f1e194f 3f3f66f5 00000000
4381bf215546Sopenharmony_ci109d1640:				0060: 3f800000 00000000 00000000 00000000 00000000 00000000 00000000 3f800000
4382bf215546Sopenharmony_ci109d1660:				0080: 3e4ccccd 3e4ccccd 3f800000 3f800000 00000000 00000000 00000000 3f800000
4383bf215546Sopenharmony_ci109d1680:				00a0: 00000000 00000000 00000000 3f800000 02020000 02020202 02020202 00000202
4384bf215546Sopenharmony_ci109d15d4:			0000: c0313000 03200000 00000001 407b29d2 bf9af8cb 3f2c9009 3f1203b9 3fea3d23
4385bf215546Sopenharmony_ci109d15f4:			0020: 4093d3df be06d382 bde42adc 40200000 bfbd9119 bf7635f5 bf50550b c156c638
4386bf215546Sopenharmony_ci109d1614:			0040: 4188a9c2 4203c74b 42146d8f 3d23d70b 3d23d70b 3e4ccccd 3f800000 be79fd80
4387bf215546Sopenharmony_ci109d1634:			0060: 3f1e194f 3f3f66f5 00000000 3f800000 00000000 00000000 00000000 00000000
4388bf215546Sopenharmony_ci109d1654:			0080: 00000000 00000000 3f800000 3e4ccccd 3e4ccccd 3f800000 3f800000 00000000
4389bf215546Sopenharmony_ci109d1674:			00a0: 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000 02020000
4390bf215546Sopenharmony_ci109d1694:			00c0: 02020202 02020202 00000202
4391bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (7 dwords)
4392bf215546Sopenharmony_ci				{ DST_OFF = 13 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 1 }
4393bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
4394bf215546Sopenharmony_ci109d16ac:				0.000000 -28026765312.000000 -28026765312.000000 -28026765312.000000
4395bf215546Sopenharmony_ci109d16ac:				0000: 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
4396bf215546Sopenharmony_ci109d16a0:			0000: c0053000 0060000d 00000001 00000000 d0d0d0d0 d0d0d0d0 d0d0d0d0
4397bf215546Sopenharmony_cit0			write VFD_FETCH[0].INSTR_0 (220a)
4398bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 | SWITCHNEXT }
4399bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_1: 0x107cb000
4400bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
4401bf215546Sopenharmony_ci				VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
4402bf215546Sopenharmony_ci109d16bc:			0000: 0003220a 00080c0b 107cb000 00100000 00000001
4403bf215546Sopenharmony_cit0			write VFD_DECODE[0].INSTR (228a)
4404bf215546Sopenharmony_ci				VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID | SWITCHNEXT }
4405bf215546Sopenharmony_ci109d16d0:			0000: 0000228a 6c0020df
4406bf215546Sopenharmony_cit0			write VFD_FETCH[0x1].INSTR_0 (220e)
4407bf215546Sopenharmony_ci				VFD_FETCH[0x1].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 }
4408bf215546Sopenharmony_ci				VFD_FETCH[0x1].INSTR_1: 0x107cb00c
4409bf215546Sopenharmony_ci				VFD_FETCH[0x1].INSTR_2: { SIZE = 0xffff4 }
4410bf215546Sopenharmony_ci				VFD_FETCH[0x1].INSTR_3: { STEPRATE = 1 }
4411bf215546Sopenharmony_ci109d16d8:			0000: 0003220e 00000c0b 107cb00c 000ffff4 00000001
4412bf215546Sopenharmony_cit0			write VFD_DECODE[0x1].INSTR (228b)
4413bf215546Sopenharmony_ci				VFD_DECODE[0x1].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r1.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
4414bf215546Sopenharmony_ci109d16ec:			0000: 0000228b 2c0060df
4415bf215546Sopenharmony_cit0			write VFD_CONTROL_0 (2200)
4416bf215546Sopenharmony_ci				VFD_CONTROL_0: { TOTALATTRTOVS = 8 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 2 | STRMFETCHINSTRCNT = 2 | 0xa0000 }
4417bf215546Sopenharmony_ci				VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
4418bf215546Sopenharmony_ci				VFD_CONTROL_2: 0
4419bf215546Sopenharmony_ci				VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
4420bf215546Sopenharmony_ci				VFD_CONTROL_4: 0
4421bf215546Sopenharmony_ci109d16f4:			0000: 00042200 082a0008 fcfc0081 00000000 0000fc00 00000000
4422bf215546Sopenharmony_cit0			write UCHE_INVALIDATE0 (0e8a)
4423bf215546Sopenharmony_ci				UCHE_INVALIDATE0: 0
4424bf215546Sopenharmony_ci				UCHE_INVALIDATE1: 0x12
4425bf215546Sopenharmony_ci109d170c:			0000: 00010e8a 00000000 00000012
4426bf215546Sopenharmony_cit0			write VFD_INDEX_OFFSET (2208)
4427bf215546Sopenharmony_ci				VFD_INDEX_OFFSET: 0
4428bf215546Sopenharmony_ci				UNKNOWN_2209: 0
4429bf215546Sopenharmony_ci109d1718:			0000: 00012208 00000000 00000000
4430bf215546Sopenharmony_cit0			write PC_RESTART_INDEX (21c6)
4431bf215546Sopenharmony_ci				PC_RESTART_INDEX: 0xffffffff
4432bf215546Sopenharmony_ci109d1724:			0000: 000021c6 ffffffff
4433bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
4434bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x68
4435bf215546Sopenharmony_ci				:0,103,115,104
4436bf215546Sopenharmony_ci109d172c:			0000: 0000057f 00000068
4437bf215546Sopenharmony_cit3			opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
4438bf215546Sopenharmony_ci				{ 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 }
4439bf215546Sopenharmony_ci				{ NUM_INSTANCES = 1 }
4440bf215546Sopenharmony_ci				{ NUM_INDICES = 240 }
4441bf215546Sopenharmony_ci				{ FIRST_INDX = 0 }
4442bf215546Sopenharmony_ci				{ INDX_BASE = 0x10bd1248 }
4443bf215546Sopenharmony_ci				{ INDX_SIZE = 480 }
4444bf215546Sopenharmony_ci			draw[17] register values
4445bf215546Sopenharmony_ci!+	00000067			CP_SCRATCH[0x5].REG: 0x67
4446bf215546Sopenharmony_ci			:0,103,115,104
4447bf215546Sopenharmony_ci!+	00000068			CP_SCRATCH[0x7].REG: 0x68
4448bf215546Sopenharmony_ci			:0,103,115,104
4449bf215546Sopenharmony_ci +	00000000			UCHE_INVALIDATE0: 0
4450bf215546Sopenharmony_ci +	00000012			UCHE_INVALIDATE1: 0x12
4451bf215546Sopenharmony_ci +	00000000			GRAS_CNTL: { 0 }
4452bf215546Sopenharmony_ci +	00000000			GRAS_ALPHA_CONTROL: { 0 }
4453bf215546Sopenharmony_ci +	00000000			RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
4454bf215546Sopenharmony_ci +	00000001			RB_FS_OUTPUT_REG: { MRT = 1 }
4455bf215546Sopenharmony_ci +	80000016			RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_READ_ENABLE }
4456bf215546Sopenharmony_ci +	42001004			VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
4457bf215546Sopenharmony_ci +	00040400			VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
4458bf215546Sopenharmony_ci +	00000055			VPC_VARYING_INTERP[0].MODE: 0x55
4459bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x1].MODE: 0
4460bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x2].MODE: 0
4461bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x3].MODE: 0
4462bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x4].MODE: 0
4463bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x5].MODE: 0
4464bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x6].MODE: 0
4465bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x7].MODE: 0
4466bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0].MODE: 0
4467bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x1].MODE: 0
4468bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x2].MODE: 0
4469bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x3].MODE: 0
4470bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x4].MODE: 0
4471bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x5].MODE: 0
4472bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x6].MODE: 0
4473bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x7].MODE: 0
4474bf215546Sopenharmony_ci +	02000001			PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
4475bf215546Sopenharmony_ci +	00000012			PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
4476bf215546Sopenharmony_ci +	ffffffff			PC_RESTART_INDEX: 0xffffffff
4477bf215546Sopenharmony_ci!+	082a0008			VFD_CONTROL_0: { TOTALATTRTOVS = 8 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 2 | STRMFETCHINSTRCNT = 2 | 0xa0000 }
4478bf215546Sopenharmony_ci +	fcfc0081			VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
4479bf215546Sopenharmony_ci +	00000000			VFD_CONTROL_2: 0
4480bf215546Sopenharmony_ci +	0000fc00			VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
4481bf215546Sopenharmony_ci +	00000000			VFD_CONTROL_4: 0
4482bf215546Sopenharmony_ci +	00000000			VFD_INDEX_OFFSET: 0
4483bf215546Sopenharmony_ci +	00000000			UNKNOWN_2209: 0
4484bf215546Sopenharmony_ci!+	00080c0b			VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 | SWITCHNEXT }
4485bf215546Sopenharmony_ci +	107cb000			VFD_FETCH[0].INSTR_1: 0x107cb000
4486bf215546Sopenharmony_ci +	00100000			VFD_FETCH[0].INSTR_2: { SIZE = 0x100000 }
4487bf215546Sopenharmony_ci +	00000001			VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
4488bf215546Sopenharmony_ci +	00000c0b			VFD_FETCH[0x1].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 24 }
4489bf215546Sopenharmony_ci +	107cb00c			VFD_FETCH[0x1].INSTR_1: 0x107cb00c
4490bf215546Sopenharmony_ci +	000ffff4			VFD_FETCH[0x1].INSTR_2: { SIZE = 0xffff4 }
4491bf215546Sopenharmony_ci +	00000001			VFD_FETCH[0x1].INSTR_3: { STEPRATE = 1 }
4492bf215546Sopenharmony_ci!+	6c0020df			VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID | SWITCHNEXT }
4493bf215546Sopenharmony_ci +	2c0060df			VFD_DECODE[0x1].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r1.z | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
4494bf215546Sopenharmony_ci +	00140010			SP_SP_CTRL_REG: { 0x140010 }
4495bf215546Sopenharmony_ci +	000005ff			SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
4496bf215546Sopenharmony_ci!+	00201400			SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
4497bf215546Sopenharmony_ci!+	08000042			SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
4498bf215546Sopenharmony_ci!+	0010fc0a			SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
4499bf215546Sopenharmony_ci!+	00001e0e			SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
4500bf215546Sopenharmony_ci +	08080808			SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
4501bf215546Sopenharmony_ci +	00000000			SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
4502bf215546Sopenharmony_ci!+	10cd5000			SP_VS_OBJ_START: 0x10cd5000
4503bf215546Sopenharmony_ci +	00000004			SP_VS_LENGTH_REG: 4
4504bf215546Sopenharmony_ci +	00340402			SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
4505bf215546Sopenharmony_ci +	8010003e			SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
4506bf215546Sopenharmony_ci +	7e420000			SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
4507bf215546Sopenharmony_ci +	10cd2000			SP_FS_OBJ_START: 0x10cd2000
4508bf215546Sopenharmony_ci +	00000001			SP_FS_LENGTH_REG: 1
4509bf215546Sopenharmony_ci +	0000fc01			SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
4510bf215546Sopenharmony_ci +	0001a000			SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = RB4_R8G8B8A8_UNORM }
4511bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
4512bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
4513bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
4514bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
4515bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
4516bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
4517bf215546Sopenharmony_ci +	00000000			SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
4518bf215546Sopenharmony_ci +	7e420000			SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
4519bf215546Sopenharmony_ci +	7e420000			SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
4520bf215546Sopenharmony_ci +	7e420000			SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
4521bf215546Sopenharmony_ci +	28000250			HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
4522bf215546Sopenharmony_ci +	fcfc0100			HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
4523bf215546Sopenharmony_ci +	fff3f3f0			HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
4524bf215546Sopenharmony_ci +	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 }
4525bf215546Sopenharmony_ci +	00fcfcfc			HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
4526bf215546Sopenharmony_ci +	04000042			HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
4527bf215546Sopenharmony_ci +	017e423e			HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
4528bf215546Sopenharmony_ci +	007e4200			HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
4529bf215546Sopenharmony_ci +	007e4200			HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
4530bf215546Sopenharmony_ci +	007e4200			HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
4531bf215546Sopenharmony_ci +	00000003			HLSQ_UPDATE_CONTROL: 0x3
4532bf215546Sopenharmony_ci109d1734:			0000: c0053800 00000404 00000001 000000f0 00000000 10bd1248 000001e0
4533bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
4534bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x69
4535bf215546Sopenharmony_ci				:0,103,115,105
4536bf215546Sopenharmony_ci109d1750:			0000: 0000057f 00000069
4537bf215546Sopenharmony_cit0			write CP_SCRATCH[0x5].REG (057d)
4538bf215546Sopenharmony_ci				CP_SCRATCH[0x5].REG: 0x6d
4539bf215546Sopenharmony_ci				:0,109,115,105
4540bf215546Sopenharmony_ci109d1758:			0000: 0000057d 0000006d
4541bf215546Sopenharmony_cit0			write RB_DEPTH_CONTROL (2101)
4542bf215546Sopenharmony_ci				RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_READ_ENABLE }
4543bf215546Sopenharmony_ci109d1760:			0000: 00002101 80000016
4544bf215546Sopenharmony_cit0			write GRAS_ALPHA_CONTROL (2073)
4545bf215546Sopenharmony_ci				GRAS_ALPHA_CONTROL: { 0 }
4546bf215546Sopenharmony_ci109d1768:			0000: 00002073 00000000
4547bf215546Sopenharmony_cit0			write GRAS_SU_MODE_CONTROL (2078)
4548bf215546Sopenharmony_ci				GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
4549bf215546Sopenharmony_ci109d1770:			0000: 00002078 00100012
4550bf215546Sopenharmony_cit0			write GRAS_SU_POINT_MINMAX (2070)
4551bf215546Sopenharmony_ci				GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
4552bf215546Sopenharmony_ci				GRAS_SU_POINT_SIZE: 1.000000
4553bf215546Sopenharmony_ci109d1778:			0000: 00012070 00100010 00000010
4554bf215546Sopenharmony_cit0			write GRAS_SU_POLY_OFFSET_SCALE (2074)
4555bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_SCALE: 0.000000
4556bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
4557bf215546Sopenharmony_ci				GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
4558bf215546Sopenharmony_ci109d1784:			0000: 00022074 00000000 00000000 00000000
4559bf215546Sopenharmony_cit0			write GRAS_CL_CLIP_CNTL (2000)
4560bf215546Sopenharmony_ci				GRAS_CL_CLIP_CNTL: { 0x80000 }
4561bf215546Sopenharmony_ci109d1794:			0000: 00002000 00080000
4562bf215546Sopenharmony_cit0			write PC_PRIM_VTX_CNTL (21c4)
4563bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
4564bf215546Sopenharmony_ci				PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
4565bf215546Sopenharmony_ci109d179c:			0000: 000121c4 02000001 00000012
4566bf215546Sopenharmony_cit0			write GRAS_SC_WINDOW_SCISSOR_BR (209c)
4567bf215546Sopenharmony_ci				GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
4568bf215546Sopenharmony_ci				GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
4569bf215546Sopenharmony_ci109d17a8:			0000: 0001209c 012b012b 00000000
4570bf215546Sopenharmony_cit0			write RB_VPORT_Z_CLAMP[0].MIN (2120)
4571bf215546Sopenharmony_ci				RB_VPORT_Z_CLAMP[0].MIN: 0
4572bf215546Sopenharmony_ci				RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
4573bf215546Sopenharmony_ci109d17b4:			0000: 00012120 00000000 00ffffff
4574bf215546Sopenharmony_cit0			write HLSQ_UPDATE_CONTROL (23db)
4575bf215546Sopenharmony_ci				HLSQ_UPDATE_CONTROL: 0x3
4576bf215546Sopenharmony_ci109d17c0:			0000: 000023db 00000003
4577bf215546Sopenharmony_cit0			write HLSQ_CONTROL_0_REG (23c0)
4578bf215546Sopenharmony_ci				HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
4579bf215546Sopenharmony_ci				HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
4580bf215546Sopenharmony_ci				HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
4581bf215546Sopenharmony_ci				HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r0.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
4582bf215546Sopenharmony_ci				HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
4583bf215546Sopenharmony_ci109d17c8:			0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfc00 00fcfcfc
4584bf215546Sopenharmony_cit0			write HLSQ_VS_CONTROL_REG (23c5)
4585bf215546Sopenharmony_ci				HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
4586bf215546Sopenharmony_ci				HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
4587bf215546Sopenharmony_ci				HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
4588bf215546Sopenharmony_ci				HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
4589bf215546Sopenharmony_ci				HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
4590bf215546Sopenharmony_ci109d17e0:			0000: 000423c5 04000042 017e423e 007e4200 007e4200 007e4200
4591bf215546Sopenharmony_cit0			write SP_SP_CTRL_REG (22c0)
4592bf215546Sopenharmony_ci				SP_SP_CTRL_REG: { 0x140010 }
4593bf215546Sopenharmony_ci109d17f8:			0000: 000022c0 00140010
4594bf215546Sopenharmony_cit0			write SP_INSTR_CACHE_CTRL (22c1)
4595bf215546Sopenharmony_ci				SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
4596bf215546Sopenharmony_ci109d1800:			0000: 000022c1 000005ff
4597bf215546Sopenharmony_cit0			write SP_VS_LENGTH_REG (22e5)
4598bf215546Sopenharmony_ci				SP_VS_LENGTH_REG: 4
4599bf215546Sopenharmony_ci109d1808:			0000: 000022e5 00000004
4600bf215546Sopenharmony_cit0			write SP_VS_CTRL_REG0 (22c4)
4601bf215546Sopenharmony_ci				SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
4602bf215546Sopenharmony_ci				SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
4603bf215546Sopenharmony_ci				SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
4604bf215546Sopenharmony_ci109d1810:			0000: 000222c4 00201400 08000042 0010fc0a
4605bf215546Sopenharmony_cit0			write SP_VS_OUT[0].REG (22c7)
4606bf215546Sopenharmony_ci				SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
4607bf215546Sopenharmony_ci109d1820:			0000: 000022c7 00001e0e
4608bf215546Sopenharmony_cit0			write SP_VS_VPC_DST[0].REG (22d8)
4609bf215546Sopenharmony_ci				SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
4610bf215546Sopenharmony_ci109d1828:			0000: 000022d8 08080808
4611bf215546Sopenharmony_cit0			write SP_VS_OBJ_OFFSET_REG (22e0)
4612bf215546Sopenharmony_ci				SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
4613bf215546Sopenharmony_ci				SP_VS_OBJ_START: 0x10cd5000
4614bf215546Sopenharmony_ci109d1830:			0000: 000122e0 00000000 10cd5000
4615bf215546Sopenharmony_cit0			write SP_FS_LENGTH_REG (22ef)
4616bf215546Sopenharmony_ci				SP_FS_LENGTH_REG: 1
4617bf215546Sopenharmony_ci109d183c:			0000: 000022ef 00000001
4618bf215546Sopenharmony_cit0			write SP_FS_CTRL_REG0 (22e8)
4619bf215546Sopenharmony_ci				SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 2 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
4620bf215546Sopenharmony_ci				SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
4621bf215546Sopenharmony_ci109d1844:			0000: 000122e8 00340802 8010003e
4622bf215546Sopenharmony_cit0			write SP_FS_OBJ_OFFSET_REG (22ea)
4623bf215546Sopenharmony_ci				SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
4624bf215546Sopenharmony_ci				SP_FS_OBJ_START: 0x108cb000
4625bf215546Sopenharmony_ci109d1850:			0000: 000122ea 7e420000 108cb000
4626bf215546Sopenharmony_cit0			write SP_HS_OBJ_OFFSET_REG (230d)
4627bf215546Sopenharmony_ci				SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
4628bf215546Sopenharmony_ci109d185c:			0000: 0000230d 7e420000
4629bf215546Sopenharmony_cit0			write SP_DS_OBJ_OFFSET_REG (2334)
4630bf215546Sopenharmony_ci				SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
4631bf215546Sopenharmony_ci109d1864:			0000: 00002334 7e420000
4632bf215546Sopenharmony_cit0			write SP_GS_OBJ_OFFSET_REG (235b)
4633bf215546Sopenharmony_ci				SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
4634bf215546Sopenharmony_ci109d186c:			0000: 0000235b 7e420000
4635bf215546Sopenharmony_cit0			write GRAS_CNTL (2003)
4636bf215546Sopenharmony_ci				GRAS_CNTL: { IJ_PERSP }
4637bf215546Sopenharmony_ci109d1874:			0000: 00002003 00000001
4638bf215546Sopenharmony_cit0			write RB_RENDER_CONTROL2 (20a3)
4639bf215546Sopenharmony_ci				RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 | IJ_PERSP_PIXEL }
4640bf215546Sopenharmony_ci109d187c:			0000: 000020a3 00001000
4641bf215546Sopenharmony_cit0			write RB_FS_OUTPUT_REG (2100)
4642bf215546Sopenharmony_ci				RB_FS_OUTPUT_REG: { MRT = 1 }
4643bf215546Sopenharmony_ci109d1884:			0000: 00002100 00000001
4644bf215546Sopenharmony_cit0			write SP_FS_OUTPUT_REG (22f0)
4645bf215546Sopenharmony_ci				SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
4646bf215546Sopenharmony_ci109d188c:			0000: 000022f0 0000fc01
4647bf215546Sopenharmony_cit0			write SP_FS_MRT[0].REG (22f1)
4648bf215546Sopenharmony_ci				SP_FS_MRT[0].REG: { REGID = r0.z | MRTFORMAT = RB4_R8G8B8A8_UNORM }
4649bf215546Sopenharmony_ci				SP_FS_MRT[0x1].REG: { REGID = r0.z | MRTFORMAT = 0 }
4650bf215546Sopenharmony_ci				SP_FS_MRT[0x2].REG: { REGID = r0.z | MRTFORMAT = 0 }
4651bf215546Sopenharmony_ci				SP_FS_MRT[0x3].REG: { REGID = r0.z | MRTFORMAT = 0 }
4652bf215546Sopenharmony_ci				SP_FS_MRT[0x4].REG: { REGID = r0.z | MRTFORMAT = 0 }
4653bf215546Sopenharmony_ci				SP_FS_MRT[0x5].REG: { REGID = r0.z | MRTFORMAT = 0 }
4654bf215546Sopenharmony_ci				SP_FS_MRT[0x6].REG: { REGID = r0.z | MRTFORMAT = 0 }
4655bf215546Sopenharmony_ci				SP_FS_MRT[0x7].REG: { REGID = r0.z | MRTFORMAT = 0 }
4656bf215546Sopenharmony_ci109d1894:			0000: 000722f1 0001a002 00000002 00000002 00000002 00000002 00000002 00000002
4657bf215546Sopenharmony_ci109d18b4:			0020: 00000002
4658bf215546Sopenharmony_cit0			write VPC_ATTR (2140)
4659bf215546Sopenharmony_ci				VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
4660bf215546Sopenharmony_ci				VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
4661bf215546Sopenharmony_ci109d18b8:			0000: 00012140 42001004 00040400
4662bf215546Sopenharmony_cit0			write VPC_VARYING_INTERP[0].MODE (2142)
4663bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0].MODE: 0
4664bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x1].MODE: 0
4665bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x2].MODE: 0
4666bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x3].MODE: 0
4667bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x4].MODE: 0
4668bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x5].MODE: 0
4669bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x6].MODE: 0
4670bf215546Sopenharmony_ci				VPC_VARYING_INTERP[0x7].MODE: 0
4671bf215546Sopenharmony_ci109d18c4:			0000: 00072142 00000000 00000000 00000000 00000000 00000000 00000000 00000000
4672bf215546Sopenharmony_ci*
4673bf215546Sopenharmony_cit0			write VPC_VARYING_PS_REPL[0].MODE (214a)
4674bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0].MODE: 0
4675bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x1].MODE: 0
4676bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x2].MODE: 0
4677bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x3].MODE: 0
4678bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x4].MODE: 0
4679bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x5].MODE: 0
4680bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x6].MODE: 0
4681bf215546Sopenharmony_ci				VPC_VARYING_PS_REPL[0x7].MODE: 0
4682bf215546Sopenharmony_ci109d18e8:			0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
4683bf215546Sopenharmony_ci*
4684bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (131 dwords)
4685bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 4 }
4686bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
4687bf215546Sopenharmony_ci				:2:0000:0000[40700000x_10000002x] mul.f r0.x, r0.z, c0.x
4688bf215546Sopenharmony_ci				:2:0001:0001[40700001x_10030002x] mul.f r0.y, r0.z, c0.w
4689bf215546Sopenharmony_ci				:3:0002:0002[63818000x_00001004x] mad.f32 r0.x, c1.x, r0.w, r0.x
4690bf215546Sopenharmony_ci				:3:0003:0003[63818001x_00011007x] mad.f32 r0.y, c1.w, r0.w, r0.y
4691bf215546Sopenharmony_ci				:3:0004:0004[63820000x_00001008x] mad.f32 r0.x, c2.x, r1.x, r0.x
4692bf215546Sopenharmony_ci				:3:0005:0005[63820001x_0001100bx] mad.f32 r0.y, c2.w, r1.x, r0.y
4693bf215546Sopenharmony_ci				:3:0006:0006[6382800ax_0000100cx] mad.f32 r2.z, c3.x, r1.y, r0.x
4694bf215546Sopenharmony_ci				:2:0007:0007[40700000x_10010002x] mul.f r0.x, r0.z, c0.y
4695bf215546Sopenharmony_ci				:3:0008:0008[6382800dx_0001100fx] mad.f32 r3.y, c3.w, r1.y, r0.y
4696bf215546Sopenharmony_ci				:3:0009:0009[63818000x_00001005x] mad.f32 r0.x, c1.y, r0.w, r0.x
4697bf215546Sopenharmony_ci				:1:0010:0010[20244001x_00000010x] mov.f32f32 r0.y, c4.x
4698bf215546Sopenharmony_ci				:3:0011:0011[63820000x_00001009x] mad.f32 r0.x, c2.y, r1.x, r0.x
4699bf215546Sopenharmony_ci				:0:0012:0012[00000000x_00000000x] nop
4700bf215546Sopenharmony_ci				:3:0013:0013[6382800bx_0000100dx] mad.f32 r2.w, c3.y, r1.y, r0.x
4701bf215546Sopenharmony_ci				:2:0014:0014[40700000x_10020002x] mul.f r0.x, r0.z, c0.z
4702bf215546Sopenharmony_ci				:2:0015:0015[40100001x_0001101cx] add.f r0.y, c7.x, r0.y
4703bf215546Sopenharmony_ci				:3:0016:0016[63818000x_00001006x] mad.f32 r0.x, c1.z, r0.w, r0.x
4704bf215546Sopenharmony_ci				:1:0017:0017[20244002x_00000011x] mov.f32f32 r0.z, c4.y
4705bf215546Sopenharmony_ci				:3:0018:0018[63820000x_0000100ax] mad.f32 r0.x, c2.z, r1.x, r0.x
4706bf215546Sopenharmony_ci				:1:0019:0019[20244004x_00000013x] mov.f32f32 r1.x, c4.w
4707bf215546Sopenharmony_ci				:3:0020:0020[6382800cx_0000100ex] mad.f32 r3.x, c3.z, r1.y, r0.x
4708bf215546Sopenharmony_ci				:2:0021:0021[40700000x_00070007x] mul.f r0.x, r1.w, r1.w
4709bf215546Sopenharmony_ci				:2:0022:0022[40100002x_0002101dx] add.f r0.z, c7.y, r0.z
4710bf215546Sopenharmony_ci				:3:0023:0023[63830000x_00000006x] mad.f32 r0.x, r1.z, r1.z, r0.x
4711bf215546Sopenharmony_ci				:2:0024:0024[40500411x_00041013x] (sat)max.f r4.y, c4.w, r1.x
4712bf215546Sopenharmony_ci				:3:0025:0025[63840000x_00000008x] mad.f32 r0.x, r2.x, r2.x, r0.x
4713bf215546Sopenharmony_ci				:1:0026:0026[20244003x_00000012x] mov.f32f32 r0.w, c4.z
4714bf215546Sopenharmony_ci				:0:0027:0027[00000200x_00000000x] (rpt2)nop
4715bf215546Sopenharmony_ci				:2:0028:0030[40100003x_0003101ex] add.f r0.w, c7.z, r0.w
4716bf215546Sopenharmony_ci				:0:0029:0031[00000000x_00000000x] nop
4717bf215546Sopenharmony_ci				:4:0030:0032[80300000x_00000000x] rsq r0.x, r0.x
4718bf215546Sopenharmony_ci				:2:0031:0033[40701004x_00000007x] (ss)mul.f r1.x, r1.w, r0.x
4719bf215546Sopenharmony_ci				:0:0032:0034[00000200x_00000000x] (rpt2)nop
4720bf215546Sopenharmony_ci				:2:0033:0037[40700004x_10150004x] mul.f r1.x, r1.x, c5.y
4721bf215546Sopenharmony_ci				:2:0034:0038[40700005x_00000006x] mul.f r1.y, r1.z, r0.x
4722bf215546Sopenharmony_ci				:0:0035:0039[00000200x_00000000x] (rpt2)nop
4723bf215546Sopenharmony_ci				:3:0036:0042[63828004x_00041014x] mad.f32 r1.x, c5.x, r1.y, r1.x
4724bf215546Sopenharmony_ci				:2:0037:0043[40700000x_00000008x] mul.f r0.x, r2.x, r0.x
4725bf215546Sopenharmony_ci				:0:0038:0044[00000200x_00000000x] (rpt2)nop
4726bf215546Sopenharmony_ci				:3:0039:0047[63800000x_00041016x] mad.f32 r0.x, c5.z, r0.x, r1.x
4727bf215546Sopenharmony_ci				:0:0040:0048[00000200x_00000000x] (rpt2)nop
4728bf215546Sopenharmony_ci				:2:0041:0051[40b00004x_00001034x] cmps.f.lt r1.x, c13.x, r0.x
4729bf215546Sopenharmony_ci				:2:0042:0052[40500000x_00001034x] max.f r0.x, c13.x, r0.x
4730bf215546Sopenharmony_ci				:0:0043:0053[00000100x_00000000x] (rpt1)nop
4731bf215546Sopenharmony_ci				:1:0044:0055[200c4004x_00000004x] cov.u32f32 r1.x, r1.x
4732bf215546Sopenharmony_ci				:3:0045:0056[63800001x_00011020x] mad.f32 r0.y, c8.x, r0.x, r0.y
4733bf215546Sopenharmony_ci				:3:0046:0057[63800002x_00021021x] mad.f32 r0.z, c8.y, r0.x, r0.z
4734bf215546Sopenharmony_ci				:3:0047:0058[63800000x_00031022x] mad.f32 r0.x, c8.z, r0.x, r0.w
4735bf215546Sopenharmony_ci				:3:0048:0059[6382040ex_00011024x] (sat)mad.f32 r3.z, c9.x, r1.x, r0.y
4736bf215546Sopenharmony_ci				:3:0049:0060[6382040fx_00021025x] (sat)mad.f32 r3.w, c9.y, r1.x, r0.z
4737bf215546Sopenharmony_ci				:3:0050:0061[63820410x_00001026x] (sat)mad.f32 r4.x, c9.z, r1.x, r0.x
4738bf215546Sopenharmony_ci				:0:0051:0062[03000000x_00000000x] end
4739bf215546Sopenharmony_ci				:0:0052:0063[00000000x_00000000x] nop
4740bf215546Sopenharmony_ci				:0:0053:0064[00000000x_00000000x] nop
4741bf215546Sopenharmony_ci				:0:0054:0065[00000000x_00000000x] nop
4742bf215546Sopenharmony_ci				:0:0055:0066[00000000x_00000000x] nop
4743bf215546Sopenharmony_ci				Stats:
4744bf215546Sopenharmony_ci				- shaderdb: 67 instr, 23 nops, 44 non-nops, 4 mov, 1 cov
4745bf215546Sopenharmony_ci				- shaderdb: 0 last-baryf, 0 half, 5 full, 13 constlen
4746bf215546Sopenharmony_ci				- shaderdb: 24 cat0, 5 cat1, 15 cat2, 22 cat3, 1 cat4, 0 cat5, 0 cat6, 0 cat7
4747bf215546Sopenharmony_ci				- shaderdb: 10 sstall, 1 (ss), 0 (sy)
4748bf215546Sopenharmony_ci109d190c:			0000: c0813000 01200000 00000000 10000002 40700000 10030002 40700001 00001004
4749bf215546Sopenharmony_ci109d192c:			0020: 63818000 00011007 63818001 00001008 63820000 0001100b 63820001 0000100c
4750bf215546Sopenharmony_ci109d194c:			0040: 6382800a 10010002 40700000 0001100f 6382800d 00001005 63818000 00000010
4751bf215546Sopenharmony_ci109d196c:			0060: 20244001 00001009 63820000 00000000 00000000 0000100d 6382800b 10020002
4752bf215546Sopenharmony_ci109d198c:			0080: 40700000 0001101c 40100001 00001006 63818000 00000011 20244002 0000100a
4753bf215546Sopenharmony_ci109d19ac:			00a0: 63820000 00000013 20244004 0000100e 6382800c 00070007 40700000 0002101d
4754bf215546Sopenharmony_ci109d19cc:			00c0: 40100002 00000006 63830000 00041013 40500411 00000008 63840000 00000012
4755bf215546Sopenharmony_ci109d19ec:			00e0: 20244003 00000000 00000200 0003101e 40100003 00000000 00000000 00000000
4756bf215546Sopenharmony_ci109d1a0c:			0100: 80300000 00000007 40701004 00000000 00000200 10150004 40700004 00000006
4757bf215546Sopenharmony_ci109d1a2c:			0120: 40700005 00000000 00000200 00041014 63828004 00000008 40700000 00000000
4758bf215546Sopenharmony_ci109d1a4c:			0140: 00000200 00041016 63800000 00000000 00000200 00001034 40b00004 00001034
4759bf215546Sopenharmony_ci109d1a6c:			0160: 40500000 00000000 00000100 00000004 200c4004 00011020 63800001 00021021
4760bf215546Sopenharmony_ci109d1a8c:			0180: 63800002 00031022 63800000 00011024 6382040e 00021025 6382040f 00001026
4761bf215546Sopenharmony_ci109d1aac:			01a0: 63820410 00000000 03000000 00000000 00000000 00000000 00000000 00000000
4762bf215546Sopenharmony_ci*
4763bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (35 dwords)
4764bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
4765bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
4766bf215546Sopenharmony_ci				:2:0000:0000[47300002x_00002000x] bary.f r0.z, 0, r0.x
4767bf215546Sopenharmony_ci				:2:0001:0001[47300003x_00002001x] bary.f r0.w, 1, r0.x
4768bf215546Sopenharmony_ci				:2:0002:0002[47300004x_00002002x] bary.f r1.x, 2, r0.x
4769bf215546Sopenharmony_ci				:2:0003:0003[47308005x_00002003x] bary.f (ei)r1.y, 3, r0.x
4770bf215546Sopenharmony_ci				:0:0004:0004[03000000x_00000000x] end
4771bf215546Sopenharmony_ci				:0:0005:0005[00000000x_00000000x] nop
4772bf215546Sopenharmony_ci				:0:0006:0006[00000000x_00000000x] nop
4773bf215546Sopenharmony_ci				:0:0007:0007[00000000x_00000000x] nop
4774bf215546Sopenharmony_ci				:0:0008:0008[00000000x_00000000x] nop
4775bf215546Sopenharmony_ci				Stats:
4776bf215546Sopenharmony_ci				- shaderdb: 9 instr, 4 nops, 5 non-nops, 0 mov, 0 cov
4777bf215546Sopenharmony_ci				- shaderdb: 3 last-baryf, 0 half, 2 full, 0 constlen
4778bf215546Sopenharmony_ci				- shaderdb: 5 cat0, 0 cat1, 4 cat2, 0 cat3, 0 cat4, 0 cat5, 0 cat6, 0 cat7
4779bf215546Sopenharmony_ci				- shaderdb: 0 sstall, 0 (ss), 0 (sy)
4780bf215546Sopenharmony_ci109d1b18:			0000: c0213000 00700000 00000000 00002000 47300002 00002001 47300003 00002002
4781bf215546Sopenharmony_ci109d1b38:			0020: 47300004 00002003 47308005 00000000 03000000 00000000 00000000 00000000
4782bf215546Sopenharmony_ci*
4783bf215546Sopenharmony_cit3			opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
4784bf215546Sopenharmony_ci109d1ba4:			0000: c0002600 00000000
4785bf215546Sopenharmony_cit3			opcode: CP_LOAD_STATE4 (30) (51 dwords)
4786bf215546Sopenharmony_ci				{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 12 }
4787bf215546Sopenharmony_ci				{ STATE_TYPE = ST4_CONSTANTS | EXT_SRC_ADDR = 0 }
4788bf215546Sopenharmony_ci109d1bb8:				3.924428 -1.210718 0.674073 0.570369 1.829991 4.619613 -0.131666 -0.111410
4789bf215546Sopenharmony_ci109d1bd8:				2.500000 -1.480991 -0.961761 -0.813798 -13.423393 17.082890 32.944622 37.106991
4790bf215546Sopenharmony_ci109d1bf8:				0.040000 0.040000 0.200000 1.000000 -0.244131 0.617574 0.747665 0.000000
4791bf215546Sopenharmony_ci109d1c18:				1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000
4792bf215546Sopenharmony_ci109d1c38:				0.200000 0.200000 1.000000 1.000000 0.000000 0.000000 0.000000 1.000000
4793bf215546Sopenharmony_ci109d1c58:				0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000
4794bf215546Sopenharmony_ci109d1bb8:				0000: 407b29d2 bf9af8cb 3f2c9009 3f1203b9 3fea3d23 4093d3df be06d382 bde42adc
4795bf215546Sopenharmony_ci109d1bd8:				0020: 40200000 bfbd9119 bf7635f5 bf50550b c156c638 4188a9c2 4203c74b 42146d8f
4796bf215546Sopenharmony_ci109d1bf8:				0040: 3d23d70b 3d23d70b 3e4ccccd 3f800000 be79fd80 3f1e194f 3f3f66f5 00000000
4797bf215546Sopenharmony_ci109d1c18:				0060: 3f800000 00000000 00000000 00000000 00000000 00000000 00000000 3f800000
4798bf215546Sopenharmony_ci109d1c38:				0080: 3e4ccccd 3e4ccccd 3f800000 3f800000 00000000 00000000 00000000 3f800000
4799bf215546Sopenharmony_ci109d1c58:				00a0: 00000000 00000000 00000000 3f800000 02020000 02020202 02020202 00000202
4800bf215546Sopenharmony_ci109d1bac:			0000: c0313000 03200000 00000001 407b29d2 bf9af8cb 3f2c9009 3f1203b9 3fea3d23
4801bf215546Sopenharmony_ci109d1bcc:			0020: 4093d3df be06d382 bde42adc 40200000 bfbd9119 bf7635f5 bf50550b c156c638
4802bf215546Sopenharmony_ci109d1bec:			0040: 4188a9c2 4203c74b 42146d8f 3d23d70b 3d23d70b 3e4ccccd 3f800000 be79fd80
4803bf215546Sopenharmony_ci109d1c0c:			0060: 3f1e194f 3f3f66f5 00000000 3f800000 00000000 00000000 00000000 00000000
4804bf215546Sopenharmony_ci109d1c2c:			0080: 00000000 00000000 3f800000 3e4ccccd 3e4ccccd 3f800000 3f800000 00000000
4805bf215546Sopenharmony_ci109d1c4c:			00a0: 00000000 00000000 3f800000 00000000 00000000 00000000 3f800000 02020000
4806bf215546Sopenharmony_ci109d1c6c:			00c0: 02020202 02020202 00000202
4807bf215546Sopenharmony_cit0			write VFD_INDEX_OFFSET (2208)
4808bf215546Sopenharmony_ci				VFD_INDEX_OFFSET: 0
4809bf215546Sopenharmony_ci				UNKNOWN_2209: 0
4810bf215546Sopenharmony_ci109d1c78:			0000: 00012208 00000000 00000000
4811bf215546Sopenharmony_cit0			write PC_RESTART_INDEX (21c6)
4812bf215546Sopenharmony_ci				PC_RESTART_INDEX: 0xffffffff
4813bf215546Sopenharmony_ci109d1c84:			0000: 000021c6 ffffffff
4814bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
4815bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x6e
4816bf215546Sopenharmony_ci				:0,109,115,110
4817bf215546Sopenharmony_ci109d1c8c:			0000: 0000057f 0000006e
4818bf215546Sopenharmony_cit3			opcode: CP_DRAW_INDX_OFFSET (38) (7 dwords)
4819bf215546Sopenharmony_ci				{ 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 }
4820bf215546Sopenharmony_ci				{ NUM_INSTANCES = 1 }
4821bf215546Sopenharmony_ci				{ NUM_INDICES = 60 }
4822bf215546Sopenharmony_ci				{ FIRST_INDX = 0 }
4823bf215546Sopenharmony_ci				{ INDX_BASE = 0x10bd1428 }
4824bf215546Sopenharmony_ci				{ INDX_SIZE = 120 }
4825bf215546Sopenharmony_ci			draw[18] register values
4826bf215546Sopenharmony_ci!+	0000006d			CP_SCRATCH[0x5].REG: 0x6d
4827bf215546Sopenharmony_ci			:0,109,115,110
4828bf215546Sopenharmony_ci!+	0000006e			CP_SCRATCH[0x7].REG: 0x6e
4829bf215546Sopenharmony_ci			:0,109,115,110
4830bf215546Sopenharmony_ci +	00080000			GRAS_CL_CLIP_CNTL: { 0x80000 }
4831bf215546Sopenharmony_ci!+	00000001			GRAS_CNTL: { IJ_PERSP }
4832bf215546Sopenharmony_ci +	00100010			GRAS_SU_POINT_MINMAX: { MIN = 1.000000 | MAX = 1.000000 }
4833bf215546Sopenharmony_ci +	00000010			GRAS_SU_POINT_SIZE: 1.000000
4834bf215546Sopenharmony_ci +	00000000			GRAS_ALPHA_CONTROL: { 0 }
4835bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_SCALE: 0.000000
4836bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_OFFSET: 0.000000
4837bf215546Sopenharmony_ci +	00000000			GRAS_SU_POLY_OFFSET_CLAMP: 0.000000
4838bf215546Sopenharmony_ci +	00100012			GRAS_SU_MODE_CONTROL: { CULL_BACK | LINEHALFWIDTH = 0.500000 | RENDERING_PASS }
4839bf215546Sopenharmony_ci +	012b012b			GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
4840bf215546Sopenharmony_ci +	00000000			GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
4841bf215546Sopenharmony_ci!+	00001000			RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 | IJ_PERSP_PIXEL }
4842bf215546Sopenharmony_ci +	00000001			RB_FS_OUTPUT_REG: { MRT = 1 }
4843bf215546Sopenharmony_ci +	80000016			RB_DEPTH_CONTROL: { Z_TEST_ENABLE | Z_WRITE_ENABLE | ZFUNC = FUNC_LESS | Z_READ_ENABLE }
4844bf215546Sopenharmony_ci +	00000000			RB_VPORT_Z_CLAMP[0].MIN: 0
4845bf215546Sopenharmony_ci +	00ffffff			RB_VPORT_Z_CLAMP[0].MAX: 0xffffff
4846bf215546Sopenharmony_ci +	42001004			VPC_ATTR: { TOTALATTR = 4 | THRDASSIGN = 1 | ENABLE | 0x40000000 }
4847bf215546Sopenharmony_ci +	00040400			VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 4 | NUMNONPOSVSVAR = 4 }
4848bf215546Sopenharmony_ci!+	00000000			VPC_VARYING_INTERP[0].MODE: 0
4849bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x1].MODE: 0
4850bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x2].MODE: 0
4851bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x3].MODE: 0
4852bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x4].MODE: 0
4853bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x5].MODE: 0
4854bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x6].MODE: 0
4855bf215546Sopenharmony_ci +	00000000			VPC_VARYING_INTERP[0x7].MODE: 0
4856bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0].MODE: 0
4857bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x1].MODE: 0
4858bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x2].MODE: 0
4859bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x3].MODE: 0
4860bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x4].MODE: 0
4861bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x5].MODE: 0
4862bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x6].MODE: 0
4863bf215546Sopenharmony_ci +	00000000			VPC_VARYING_PS_REPL[0x7].MODE: 0
4864bf215546Sopenharmony_ci +	02000001			PC_PRIM_VTX_CNTL: { VAROUT = 1 | PROVOKING_VTX_LAST }
4865bf215546Sopenharmony_ci +	00000012			PC_PRIM_VTX_CNTL2: { POLYMODE_FRONT_PTYPE = PC_DRAW_TRIANGLES | POLYMODE_BACK_PTYPE = PC_DRAW_TRIANGLES }
4866bf215546Sopenharmony_ci +	ffffffff			PC_RESTART_INDEX: 0xffffffff
4867bf215546Sopenharmony_ci +	00000000			VFD_INDEX_OFFSET: 0
4868bf215546Sopenharmony_ci +	00000000			UNKNOWN_2209: 0
4869bf215546Sopenharmony_ci +	00140010			SP_SP_CTRL_REG: { 0x140010 }
4870bf215546Sopenharmony_ci +	000005ff			SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
4871bf215546Sopenharmony_ci +	00201400			SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
4872bf215546Sopenharmony_ci +	08000042			SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 8 }
4873bf215546Sopenharmony_ci +	0010fc0a			SP_VS_PARAM_REG: { POSREGID = r2.z | PSIZEREGID = r63.x | TOTALVSOUTVAR = 1 }
4874bf215546Sopenharmony_ci +	00001e0e			SP_VS_OUT[0].REG: { A_REGID = r3.z | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 }
4875bf215546Sopenharmony_ci +	08080808			SP_VS_VPC_DST[0].REG: { OUTLOC0 = 8 | OUTLOC1 = 8 | OUTLOC2 = 8 | OUTLOC3 = 8 }
4876bf215546Sopenharmony_ci +	00000000			SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
4877bf215546Sopenharmony_ci +	10cd5000			SP_VS_OBJ_START: 0x10cd5000
4878bf215546Sopenharmony_ci +	00000004			SP_VS_LENGTH_REG: 4
4879bf215546Sopenharmony_ci!+	00340802			SP_FS_CTRL_REG0: { THREADMODE = MULTI | VARYING | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 2 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
4880bf215546Sopenharmony_ci +	8010003e			SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | VARYING | 0x80000000 }
4881bf215546Sopenharmony_ci +	7e420000			SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
4882bf215546Sopenharmony_ci!+	108cb000			SP_FS_OBJ_START: 0x108cb000
4883bf215546Sopenharmony_ci +	00000001			SP_FS_LENGTH_REG: 1
4884bf215546Sopenharmony_ci +	0000fc01			SP_FS_OUTPUT_REG: { MRT = 1 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
4885bf215546Sopenharmony_ci!+	0001a002			SP_FS_MRT[0].REG: { REGID = r0.z | MRTFORMAT = RB4_R8G8B8A8_UNORM }
4886bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x1].REG: { REGID = r0.z | MRTFORMAT = 0 }
4887bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x2].REG: { REGID = r0.z | MRTFORMAT = 0 }
4888bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x3].REG: { REGID = r0.z | MRTFORMAT = 0 }
4889bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x4].REG: { REGID = r0.z | MRTFORMAT = 0 }
4890bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x5].REG: { REGID = r0.z | MRTFORMAT = 0 }
4891bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x6].REG: { REGID = r0.z | MRTFORMAT = 0 }
4892bf215546Sopenharmony_ci!+	00000002			SP_FS_MRT[0x7].REG: { REGID = r0.z | MRTFORMAT = 0 }
4893bf215546Sopenharmony_ci +	7e420000			SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
4894bf215546Sopenharmony_ci +	7e420000			SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
4895bf215546Sopenharmony_ci +	7e420000			SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
4896bf215546Sopenharmony_ci +	28000250			HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
4897bf215546Sopenharmony_ci +	fcfc0100			HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
4898bf215546Sopenharmony_ci +	fff3f3f0			HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
4899bf215546Sopenharmony_ci!+	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 }
4900bf215546Sopenharmony_ci +	00fcfcfc			HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
4901bf215546Sopenharmony_ci +	04000042			HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 4 }
4902bf215546Sopenharmony_ci +	017e423e			HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
4903bf215546Sopenharmony_ci +	007e4200			HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
4904bf215546Sopenharmony_ci +	007e4200			HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
4905bf215546Sopenharmony_ci +	007e4200			HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
4906bf215546Sopenharmony_ci +	00000003			HLSQ_UPDATE_CONTROL: 0x3
4907bf215546Sopenharmony_ci109d1c94:			0000: c0053800 00000404 00000001 0000003c 00000000 10bd1428 00000078
4908bf215546Sopenharmony_cit0			write CP_SCRATCH[0x7].REG (057f)
4909bf215546Sopenharmony_ci				CP_SCRATCH[0x7].REG: 0x6f
4910bf215546Sopenharmony_ci				:0,109,115,111
4911bf215546Sopenharmony_ci109d1cb0:			0000: 0000057f 0000006f
4912bf215546Sopenharmony_ci108ce2d0:		0000: c0013f00 109ce000 00000f2e
4913bf215546Sopenharmony_cit2		nop
4914bf215546Sopenharmony_cit0		write RB_DEPTH_CONTROL (2101)
4915bf215546Sopenharmony_ci			RB_DEPTH_CONTROL: { ZFUNC = FUNC_NEVER }
4916bf215546Sopenharmony_ci108ce2e8:		0000: 00002101 00000000
4917bf215546Sopenharmony_cit0		write RB_STENCIL_CONTROL (2106)
4918bf215546Sopenharmony_ci			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 }
4919bf215546Sopenharmony_ci			RB_STENCIL_CONTROL2: { 0 }
4920bf215546Sopenharmony_ci108ce2f0:		0000: 00012106 00000000 00000000
4921bf215546Sopenharmony_cit0		write RB_STENCILREFMASK (210b)
4922bf215546Sopenharmony_ci			RB_STENCILREFMASK: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0xff | 0xff000000 }
4923bf215546Sopenharmony_ci			RB_STENCILREFMASK_BF: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0xff | 0xff000000 }
4924bf215546Sopenharmony_ci108ce2fc:		0000: 0001210b ffff0000 ffff0000
4925bf215546Sopenharmony_cit0		write GRAS_SU_MODE_CONTROL (2078)
4926bf215546Sopenharmony_ci			GRAS_SU_MODE_CONTROL: { LINEHALFWIDTH = 0.000000 }
4927bf215546Sopenharmony_ci108ce308:		0000: 00002078 00000000
4928bf215546Sopenharmony_cit3		opcode: CP_WAIT_FOR_IDLE (26) (2 dwords)
4929bf215546Sopenharmony_ci108ce310:		0000: c0002600 00000000
4930bf215546Sopenharmony_cit0		write GRAS_CL_CLIP_CNTL (2000)
4931bf215546Sopenharmony_ci			GRAS_CL_CLIP_CNTL: { 0x80000 }
4932bf215546Sopenharmony_ci108ce318:		0000: 00002000 00080000
4933bf215546Sopenharmony_cit0		write GRAS_CL_VPORT_XOFFSET_0 (2008)
4934bf215546Sopenharmony_ci			GRAS_CL_VPORT_XOFFSET_0: 150.000000
4935bf215546Sopenharmony_ci			GRAS_CL_VPORT_XSCALE_0: 150.000000
4936bf215546Sopenharmony_ci			GRAS_CL_VPORT_YOFFSET_0: 150.000000
4937bf215546Sopenharmony_ci			GRAS_CL_VPORT_YSCALE_0: -150.000000
4938bf215546Sopenharmony_ci			GRAS_CL_VPORT_ZOFFSET_0: 0.000000
4939bf215546Sopenharmony_ci			GRAS_CL_VPORT_ZSCALE_0: 1.000000
4940bf215546Sopenharmony_ci108ce320:		0000: 00052008 43160000 43160000 43160000 c3160000 00000000 3f800000
4941bf215546Sopenharmony_cit0		write RB_RENDER_CONTROL (20a1)
4942bf215546Sopenharmony_ci			RB_RENDER_CONTROL: { DISABLE_COLOR_PIPE | 0xa }
4943bf215546Sopenharmony_ci108ce33c:		0000: 000020a1 0000002a
4944bf215546Sopenharmony_cit0		write GRAS_SC_CONTROL (207b)
4945bf215546Sopenharmony_ci			GRAS_SC_CONTROL: { RENDER_MODE = RB_RESOLVE_PASS | MSAA_SAMPLES = 0 | MSAA_DISABLE | RASTER_MODE = 0x1 }
4946bf215546Sopenharmony_ci108ce344:		0000: 0000207b 00001808
4947bf215546Sopenharmony_cit0		write PC_PRIM_VTX_CNTL (21c4)
4948bf215546Sopenharmony_ci			PC_PRIM_VTX_CNTL: { VAROUT = 0 | PROVOKING_VTX_LAST }
4949bf215546Sopenharmony_ci108ce34c:		0000: 000021c4 02000000
4950bf215546Sopenharmony_cit0		write GRAS_ALPHA_CONTROL (2073)
4951bf215546Sopenharmony_ci			GRAS_ALPHA_CONTROL: { 0x2 }
4952bf215546Sopenharmony_ci108ce354:		0000: 00002073 00000002
4953bf215546Sopenharmony_cit0		write GRAS_SC_WINDOW_SCISSOR_BR (209c)
4954bf215546Sopenharmony_ci			GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
4955bf215546Sopenharmony_ci			GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
4956bf215546Sopenharmony_ci108ce35c:		0000: 0001209c 012b012b 00000000
4957bf215546Sopenharmony_cit0		write VFD_INDEX_OFFSET (2208)
4958bf215546Sopenharmony_ci			VFD_INDEX_OFFSET: 0
4959bf215546Sopenharmony_ci			UNKNOWN_2209: 0
4960bf215546Sopenharmony_ci108ce368:		0000: 00012208 00000000 00000000
4961bf215546Sopenharmony_cit0		write HLSQ_UPDATE_CONTROL (23db)
4962bf215546Sopenharmony_ci			HLSQ_UPDATE_CONTROL: 0x3
4963bf215546Sopenharmony_ci108ce374:		0000: 000023db 00000003
4964bf215546Sopenharmony_cit0		write HLSQ_CONTROL_0_REG (23c0)
4965bf215546Sopenharmony_ci			HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
4966bf215546Sopenharmony_ci			HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
4967bf215546Sopenharmony_ci			HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
4968bf215546Sopenharmony_ci			HLSQ_CONTROL_3_REG: { IJ_PERSP_PIXEL = r63.x | IJ_LINEAR_PIXEL = r63.x | IJ_PERSP_CENTROID = r63.x | IJ_LINEAR_CENTROID = r63.x }
4969bf215546Sopenharmony_ci			HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
4970bf215546Sopenharmony_ci108ce37c:		0000: 000423c0 28000250 fcfc0100 fff3f3f0 fcfcfcfc 00fcfcfc
4971bf215546Sopenharmony_cit0		write HLSQ_VS_CONTROL_REG (23c5)
4972bf215546Sopenharmony_ci			HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 1 }
4973bf215546Sopenharmony_ci			HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
4974bf215546Sopenharmony_ci			HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
4975bf215546Sopenharmony_ci			HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
4976bf215546Sopenharmony_ci			HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
4977bf215546Sopenharmony_ci108ce394:		0000: 000423c5 01000042 017e423e 007e4200 007e4200 007e4200
4978bf215546Sopenharmony_cit0		write SP_SP_CTRL_REG (22c0)
4979bf215546Sopenharmony_ci			SP_SP_CTRL_REG: { 0x140010 }
4980bf215546Sopenharmony_ci108ce3ac:		0000: 000022c0 00140010
4981bf215546Sopenharmony_cit0		write SP_INSTR_CACHE_CTRL (22c1)
4982bf215546Sopenharmony_ci			SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
4983bf215546Sopenharmony_ci108ce3b4:		0000: 000022c1 000005ff
4984bf215546Sopenharmony_cit0		write SP_VS_LENGTH_REG (22e5)
4985bf215546Sopenharmony_ci			SP_VS_LENGTH_REG: 1
4986bf215546Sopenharmony_ci108ce3bc:		0000: 000022e5 00000001
4987bf215546Sopenharmony_cit0		write SP_VS_CTRL_REG0 (22c4)
4988bf215546Sopenharmony_ci			SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
4989bf215546Sopenharmony_ci			SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
4990bf215546Sopenharmony_ci			SP_VS_PARAM_REG: { POSREGID = r0.x | PSIZEREGID = r63.x | TOTALVSOUTVAR = 0 }
4991bf215546Sopenharmony_ci108ce3c4:		0000: 000222c4 00200400 04000042 0000fc00
4992bf215546Sopenharmony_cit0		write SP_VS_OBJ_OFFSET_REG (22e0)
4993bf215546Sopenharmony_ci			SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
4994bf215546Sopenharmony_ci			SP_VS_OBJ_START: 0x1073c000
4995bf215546Sopenharmony_ci108ce3d4:		0000: 000122e0 00000000 1073c000
4996bf215546Sopenharmony_cit0		write SP_FS_LENGTH_REG (22ef)
4997bf215546Sopenharmony_ci			SP_FS_LENGTH_REG: 1
4998bf215546Sopenharmony_ci108ce3e0:		0000: 000022ef 00000001
4999bf215546Sopenharmony_cit0		write SP_FS_CTRL_REG0 (22e8)
5000bf215546Sopenharmony_ci			SP_FS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
5001bf215546Sopenharmony_ci			SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | 0x80000000 }
5002bf215546Sopenharmony_ci108ce3e8:		0000: 000122e8 00340400 8000003e
5003bf215546Sopenharmony_cit0		write SP_FS_OBJ_OFFSET_REG (22ea)
5004bf215546Sopenharmony_ci			SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
5005bf215546Sopenharmony_ci			SP_FS_OBJ_START: 0x1073b000
5006bf215546Sopenharmony_ci108ce3f4:		0000: 000122ea 7e420000 1073b000
5007bf215546Sopenharmony_cit0		write SP_HS_OBJ_OFFSET_REG (230d)
5008bf215546Sopenharmony_ci			SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
5009bf215546Sopenharmony_ci108ce400:		0000: 0000230d 7e420000
5010bf215546Sopenharmony_cit0		write SP_DS_OBJ_OFFSET_REG (2334)
5011bf215546Sopenharmony_ci			SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
5012bf215546Sopenharmony_ci108ce408:		0000: 00002334 7e420000
5013bf215546Sopenharmony_cit0		write SP_GS_OBJ_OFFSET_REG (235b)
5014bf215546Sopenharmony_ci			SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
5015bf215546Sopenharmony_ci108ce410:		0000: 0000235b 7e420000
5016bf215546Sopenharmony_cit0		write GRAS_CNTL (2003)
5017bf215546Sopenharmony_ci			GRAS_CNTL: { 0 }
5018bf215546Sopenharmony_ci108ce418:		0000: 00002003 00000000
5019bf215546Sopenharmony_cit0		write RB_RENDER_CONTROL2 (20a3)
5020bf215546Sopenharmony_ci			RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
5021bf215546Sopenharmony_ci108ce420:		0000: 000020a3 00000000
5022bf215546Sopenharmony_cit0		write RB_FS_OUTPUT_REG (2100)
5023bf215546Sopenharmony_ci			RB_FS_OUTPUT_REG: { MRT = 0 }
5024bf215546Sopenharmony_ci108ce428:		0000: 00002100 00000000
5025bf215546Sopenharmony_cit0		write SP_FS_OUTPUT_REG (22f0)
5026bf215546Sopenharmony_ci			SP_FS_OUTPUT_REG: { MRT = 0 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
5027bf215546Sopenharmony_ci108ce430:		0000: 000022f0 0000fc00
5028bf215546Sopenharmony_cit0		write SP_FS_MRT[0].REG (22f1)
5029bf215546Sopenharmony_ci			SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = 0 }
5030bf215546Sopenharmony_ci			SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
5031bf215546Sopenharmony_ci			SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
5032bf215546Sopenharmony_ci			SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
5033bf215546Sopenharmony_ci			SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
5034bf215546Sopenharmony_ci			SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
5035bf215546Sopenharmony_ci			SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
5036bf215546Sopenharmony_ci			SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
5037bf215546Sopenharmony_ci108ce438:		0000: 000722f1 00000000 00000000 00000000 00000000 00000000 00000000 00000000
5038bf215546Sopenharmony_ci*
5039bf215546Sopenharmony_cit0		write VPC_ATTR (2140)
5040bf215546Sopenharmony_ci			VPC_ATTR: { TOTALATTR = 0 | THRDASSIGN = 1 | 0x40000000 }
5041bf215546Sopenharmony_ci			VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 0 | NUMNONPOSVSVAR = 0 }
5042bf215546Sopenharmony_ci108ce45c:		0000: 00012140 40001000 00000000
5043bf215546Sopenharmony_cit0		write VPC_VARYING_INTERP[0].MODE (2142)
5044bf215546Sopenharmony_ci			VPC_VARYING_INTERP[0].MODE: 0
5045bf215546Sopenharmony_ci			VPC_VARYING_INTERP[0x1].MODE: 0
5046bf215546Sopenharmony_ci			VPC_VARYING_INTERP[0x2].MODE: 0
5047bf215546Sopenharmony_ci			VPC_VARYING_INTERP[0x3].MODE: 0
5048bf215546Sopenharmony_ci			VPC_VARYING_INTERP[0x4].MODE: 0
5049bf215546Sopenharmony_ci			VPC_VARYING_INTERP[0x5].MODE: 0
5050bf215546Sopenharmony_ci			VPC_VARYING_INTERP[0x6].MODE: 0
5051bf215546Sopenharmony_ci			VPC_VARYING_INTERP[0x7].MODE: 0
5052bf215546Sopenharmony_ci108ce468:		0000: 00072142 00000000 00000000 00000000 00000000 00000000 00000000 00000000
5053bf215546Sopenharmony_ci*
5054bf215546Sopenharmony_cit0		write VPC_VARYING_PS_REPL[0].MODE (214a)
5055bf215546Sopenharmony_ci			VPC_VARYING_PS_REPL[0].MODE: 0
5056bf215546Sopenharmony_ci			VPC_VARYING_PS_REPL[0x1].MODE: 0
5057bf215546Sopenharmony_ci			VPC_VARYING_PS_REPL[0x2].MODE: 0
5058bf215546Sopenharmony_ci			VPC_VARYING_PS_REPL[0x3].MODE: 0
5059bf215546Sopenharmony_ci			VPC_VARYING_PS_REPL[0x4].MODE: 0
5060bf215546Sopenharmony_ci			VPC_VARYING_PS_REPL[0x5].MODE: 0
5061bf215546Sopenharmony_ci			VPC_VARYING_PS_REPL[0x6].MODE: 0
5062bf215546Sopenharmony_ci			VPC_VARYING_PS_REPL[0x7].MODE: 0
5063bf215546Sopenharmony_ci108ce48c:		0000: 0007214a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
5064bf215546Sopenharmony_ci*
5065bf215546Sopenharmony_cit3		opcode: CP_LOAD_STATE4 (30) (35 dwords)
5066bf215546Sopenharmony_ci			{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_VS_SHADER | NUM_UNIT = 1 }
5067bf215546Sopenharmony_ci			{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
5068bf215546Sopenharmony_ci			:0:0000:0000[03000000x_00000000x] end
5069bf215546Sopenharmony_ci			:0:0001:0001[00000000x_00000000x] nop
5070bf215546Sopenharmony_ci			:0:0002:0002[00000000x_00000000x] nop
5071bf215546Sopenharmony_ci			:0:0003:0003[00000000x_00000000x] nop
5072bf215546Sopenharmony_ci			:0:0004:0004[00000000x_00000000x] nop
5073bf215546Sopenharmony_ci			Stats:
5074bf215546Sopenharmony_ci			- shaderdb: 5 instr, 4 nops, 1 non-nops, 0 mov, 0 cov
5075bf215546Sopenharmony_ci			- shaderdb: 0 last-baryf, 0 half, 0 full, 0 constlen
5076bf215546Sopenharmony_ci			- shaderdb: 5 cat0, 0 cat1, 0 cat2, 0 cat3, 0 cat4, 0 cat5, 0 cat6, 0 cat7
5077bf215546Sopenharmony_ci			- shaderdb: 0 sstall, 0 (ss), 0 (sy)
5078bf215546Sopenharmony_ci108ce4b0:		0000: c0213000 00600000 00000000 00000000 03000000 00000000 00000000 00000000
5079bf215546Sopenharmony_ci*
5080bf215546Sopenharmony_cit3		opcode: CP_LOAD_STATE4 (30) (35 dwords)
5081bf215546Sopenharmony_ci			{ DST_OFF = 0 | STATE_SRC = SS4_DIRECT | STATE_BLOCK = SB4_FS_SHADER | NUM_UNIT = 1 }
5082bf215546Sopenharmony_ci			{ STATE_TYPE = ST4_SHADER | EXT_SRC_ADDR = 0 }
5083bf215546Sopenharmony_ci			:1:0000:0000[20244000x_00000000x] mov.f32f32 r0.x, c0.x
5084bf215546Sopenharmony_ci			:1:0001:0001[20244001x_00000001x] mov.f32f32 r0.y, c0.y
5085bf215546Sopenharmony_ci			:1:0002:0002[20244002x_00000002x] mov.f32f32 r0.z, c0.z
5086bf215546Sopenharmony_ci			:1:0003:0003[20244003x_00000003x] mov.f32f32 r0.w, c0.w
5087bf215546Sopenharmony_ci			:0:0004:0004[03000000x_00000000x] end
5088bf215546Sopenharmony_ci			:0:0005:0005[00000000x_00000000x] nop
5089bf215546Sopenharmony_ci			:0:0006:0006[00000000x_00000000x] nop
5090bf215546Sopenharmony_ci			:0:0007:0007[00000000x_00000000x] nop
5091bf215546Sopenharmony_ci			:0:0008:0008[00000000x_00000000x] nop
5092bf215546Sopenharmony_ci			Stats:
5093bf215546Sopenharmony_ci			- shaderdb: 9 instr, 4 nops, 5 non-nops, 4 mov, 0 cov
5094bf215546Sopenharmony_ci			- shaderdb: 0 last-baryf, 0 half, 1 full, 1 constlen
5095bf215546Sopenharmony_ci			- shaderdb: 5 cat0, 4 cat1, 0 cat2, 0 cat3, 0 cat4, 0 cat5, 0 cat6, 0 cat7
5096bf215546Sopenharmony_ci			- shaderdb: 0 sstall, 0 (ss), 0 (sy)
5097bf215546Sopenharmony_ci108ce53c:		0000: c0213000 00700000 00000000 00000000 20244000 00000001 20244001 00000002
5098bf215546Sopenharmony_ci108ce55c:		0020: 20244002 00000003 20244003 00000000 03000000 00000000 00000000 00000000
5099bf215546Sopenharmony_ci*
5100bf215546Sopenharmony_cit0		write VFD_FETCH[0].INSTR_0 (220a)
5101bf215546Sopenharmony_ci			VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
5102bf215546Sopenharmony_ci			VFD_FETCH[0].INSTR_1: 0x1074a000
5103bf215546Sopenharmony_ci			VFD_FETCH[0].INSTR_2: { SIZE = 0x1000 }
5104bf215546Sopenharmony_ci			VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
5105bf215546Sopenharmony_ci108ce5c8:		0000: 0003220a 0000060b 1074a000 00001000 00000001
5106bf215546Sopenharmony_cit0		write VFD_DECODE[0].INSTR (228a)
5107bf215546Sopenharmony_ci			VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.x | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
5108bf215546Sopenharmony_ci108ce5dc:		0000: 0000228a 2c0000df
5109bf215546Sopenharmony_cit0		write VFD_CONTROL_0 (2200)
5110bf215546Sopenharmony_ci			VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
5111bf215546Sopenharmony_ci			VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
5112bf215546Sopenharmony_ci			VFD_CONTROL_2: 0
5113bf215546Sopenharmony_ci			VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
5114bf215546Sopenharmony_ci			VFD_CONTROL_4: 0
5115bf215546Sopenharmony_ci108ce5e4:		0000: 00042200 041a0004 fcfc0081 00000000 0000fc00 00000000
5116bf215546Sopenharmony_cit0		write UCHE_INVALIDATE0 (0e8a)
5117bf215546Sopenharmony_ci			UCHE_INVALIDATE0: 0
5118bf215546Sopenharmony_ci			UCHE_INVALIDATE1: 0x12
5119bf215546Sopenharmony_ci108ce5fc:		0000: 00010e8a 00000000 00000012
5120bf215546Sopenharmony_cit0		write RB_COPY_CONTROL (20fc)
5121bf215546Sopenharmony_ci			RB_COPY_CONTROL: { MSAA_RESOLVE = MSAA_ONE | MODE = RB_COPY_RESOLVE | FASTCLEAR = 0 | GMEM_BASE = 0x64000 }
5122bf215546Sopenharmony_ci			RB_COPY_DEST_BASE: { BASE = 0x10edc000 }
5123bf215546Sopenharmony_ci			RB_COPY_DEST_PITCH: { PITCH = 1280 }
5124bf215546Sopenharmony_ci			RB_COPY_DEST_INFO: { FORMAT = RB4_R8G8B8A8_UNORM | SWAP = WZYX | DITHER_MODE = DITHER_DISABLE | COMPONENT_ENABLE = 0xf | ENDIAN = ENDIAN_NONE | TILE = TILE4_LINEAR }
5125bf215546Sopenharmony_ci108ce608:		0000: 000320fc 00064010 10edc000 00000028 0003c068
5126bf215546Sopenharmony_cit0		write CP_SCRATCH[0x7].REG (057f)
5127bf215546Sopenharmony_ci			CP_SCRATCH[0x7].REG: 0x75
5128bf215546Sopenharmony_ci			:0,109,115,117
5129bf215546Sopenharmony_ci108ce61c:		0000: 0000057f 00000075
5130bf215546Sopenharmony_cit3		opcode: CP_DRAW_INDX_OFFSET (38) (4 dwords)
5131bf215546Sopenharmony_ci			{ 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 }
5132bf215546Sopenharmony_ci			{ NUM_INSTANCES = 1 }
5133bf215546Sopenharmony_ci			{ NUM_INDICES = 2 }
5134bf215546Sopenharmony_ci		draw[19] register values
5135bf215546Sopenharmony_ci!+	00000075		CP_SCRATCH[0x7].REG: 0x75
5136bf215546Sopenharmony_ci		:0,109,115,117
5137bf215546Sopenharmony_ci +	00000000		UCHE_INVALIDATE0: 0
5138bf215546Sopenharmony_ci +	00000012		UCHE_INVALIDATE1: 0x12
5139bf215546Sopenharmony_ci +	00080000		GRAS_CL_CLIP_CNTL: { 0x80000 }
5140bf215546Sopenharmony_ci!+	00000000		GRAS_CNTL: { 0 }
5141bf215546Sopenharmony_ci +	43160000		GRAS_CL_VPORT_XOFFSET_0: 150.000000
5142bf215546Sopenharmony_ci +	43160000		GRAS_CL_VPORT_XSCALE_0: 150.000000
5143bf215546Sopenharmony_ci +	43160000		GRAS_CL_VPORT_YOFFSET_0: 150.000000
5144bf215546Sopenharmony_ci +	c3160000		GRAS_CL_VPORT_YSCALE_0: -150.000000
5145bf215546Sopenharmony_ci!+	00000000		GRAS_CL_VPORT_ZOFFSET_0: 0.000000
5146bf215546Sopenharmony_ci!+	3f800000		GRAS_CL_VPORT_ZSCALE_0: 1.000000
5147bf215546Sopenharmony_ci!+	00000002		GRAS_ALPHA_CONTROL: { 0x2 }
5148bf215546Sopenharmony_ci!+	00000000		GRAS_SU_MODE_CONTROL: { LINEHALFWIDTH = 0.000000 }
5149bf215546Sopenharmony_ci!+	00001808		GRAS_SC_CONTROL: { RENDER_MODE = RB_RESOLVE_PASS | MSAA_SAMPLES = 0 | MSAA_DISABLE | RASTER_MODE = 0x1 }
5150bf215546Sopenharmony_ci +	012b012b		GRAS_SC_WINDOW_SCISSOR_BR: { X = 299 | Y = 299 }
5151bf215546Sopenharmony_ci +	00000000		GRAS_SC_WINDOW_SCISSOR_TL: { X = 0 | Y = 0 }
5152bf215546Sopenharmony_ci!+	0000002a		RB_RENDER_CONTROL: { DISABLE_COLOR_PIPE | 0xa }
5153bf215546Sopenharmony_ci!+	00000000		RB_RENDER_CONTROL2: { COORD_MASK = 0 | MSAA_SAMPLES = 0 }
5154bf215546Sopenharmony_ci!+	00064010		RB_COPY_CONTROL: { MSAA_RESOLVE = MSAA_ONE | MODE = RB_COPY_RESOLVE | FASTCLEAR = 0 | GMEM_BASE = 0x64000 }
5155bf215546Sopenharmony_ci!+	10edc000		RB_COPY_DEST_BASE: { BASE = 0x10edc000 }
5156bf215546Sopenharmony_ci!+	00000028		RB_COPY_DEST_PITCH: { PITCH = 1280 }
5157bf215546Sopenharmony_ci!+	0003c068		RB_COPY_DEST_INFO: { FORMAT = RB4_R8G8B8A8_UNORM | SWAP = WZYX | DITHER_MODE = DITHER_DISABLE | COMPONENT_ENABLE = 0xf | ENDIAN = ENDIAN_NONE | TILE = TILE4_LINEAR }
5158bf215546Sopenharmony_ci!+	00000000		RB_FS_OUTPUT_REG: { MRT = 0 }
5159bf215546Sopenharmony_ci!+	00000000		RB_DEPTH_CONTROL: { ZFUNC = FUNC_NEVER }
5160bf215546Sopenharmony_ci +	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 }
5161bf215546Sopenharmony_ci +	00000000		RB_STENCIL_CONTROL2: { 0 }
5162bf215546Sopenharmony_ci!+	ffff0000		RB_STENCILREFMASK: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0xff | 0xff000000 }
5163bf215546Sopenharmony_ci!+	ffff0000		RB_STENCILREFMASK_BF: { STENCILREF = 0 | STENCILMASK = 0 | STENCILWRITEMASK = 0xff | 0xff000000 }
5164bf215546Sopenharmony_ci!+	40001000		VPC_ATTR: { TOTALATTR = 0 | THRDASSIGN = 1 | 0x40000000 }
5165bf215546Sopenharmony_ci!+	00000000		VPC_PACK: { NUMBYPASSVAR = 0 | NUMFPNONPOSVAR = 0 | NUMNONPOSVSVAR = 0 }
5166bf215546Sopenharmony_ci +	00000000		VPC_VARYING_INTERP[0].MODE: 0
5167bf215546Sopenharmony_ci +	00000000		VPC_VARYING_INTERP[0x1].MODE: 0
5168bf215546Sopenharmony_ci +	00000000		VPC_VARYING_INTERP[0x2].MODE: 0
5169bf215546Sopenharmony_ci +	00000000		VPC_VARYING_INTERP[0x3].MODE: 0
5170bf215546Sopenharmony_ci +	00000000		VPC_VARYING_INTERP[0x4].MODE: 0
5171bf215546Sopenharmony_ci +	00000000		VPC_VARYING_INTERP[0x5].MODE: 0
5172bf215546Sopenharmony_ci +	00000000		VPC_VARYING_INTERP[0x6].MODE: 0
5173bf215546Sopenharmony_ci +	00000000		VPC_VARYING_INTERP[0x7].MODE: 0
5174bf215546Sopenharmony_ci +	00000000		VPC_VARYING_PS_REPL[0].MODE: 0
5175bf215546Sopenharmony_ci +	00000000		VPC_VARYING_PS_REPL[0x1].MODE: 0
5176bf215546Sopenharmony_ci +	00000000		VPC_VARYING_PS_REPL[0x2].MODE: 0
5177bf215546Sopenharmony_ci +	00000000		VPC_VARYING_PS_REPL[0x3].MODE: 0
5178bf215546Sopenharmony_ci +	00000000		VPC_VARYING_PS_REPL[0x4].MODE: 0
5179bf215546Sopenharmony_ci +	00000000		VPC_VARYING_PS_REPL[0x5].MODE: 0
5180bf215546Sopenharmony_ci +	00000000		VPC_VARYING_PS_REPL[0x6].MODE: 0
5181bf215546Sopenharmony_ci +	00000000		VPC_VARYING_PS_REPL[0x7].MODE: 0
5182bf215546Sopenharmony_ci!+	02000000		PC_PRIM_VTX_CNTL: { VAROUT = 0 | PROVOKING_VTX_LAST }
5183bf215546Sopenharmony_ci!+	041a0004		VFD_CONTROL_0: { TOTALATTRTOVS = 4 | BYPASSATTROVS = 0 | STRMDECINSTRCNT = 1 | STRMFETCHINSTRCNT = 1 | 0xa0000 }
5184bf215546Sopenharmony_ci +	fcfc0081		VFD_CONTROL_1: { MAXSTORAGE = 129 | REGID4VTX = r63.x | REGID4INST = r63.x }
5185bf215546Sopenharmony_ci +	00000000		VFD_CONTROL_2: 0
5186bf215546Sopenharmony_ci +	0000fc00		VFD_CONTROL_3: { REGID_VTXCNT = r63.x | REGID_TESSX = r0.x | REGID_TESSY = r0.x }
5187bf215546Sopenharmony_ci +	00000000		VFD_CONTROL_4: 0
5188bf215546Sopenharmony_ci +	00000000		VFD_INDEX_OFFSET: 0
5189bf215546Sopenharmony_ci +	00000000		UNKNOWN_2209: 0
5190bf215546Sopenharmony_ci!+	0000060b		VFD_FETCH[0].INSTR_0: { FETCHSIZE = 11 | BUFSTRIDE = 12 }
5191bf215546Sopenharmony_ci!+	1074a000		VFD_FETCH[0].INSTR_1: 0x1074a000
5192bf215546Sopenharmony_ci!+	00001000		VFD_FETCH[0].INSTR_2: { SIZE = 0x1000 }
5193bf215546Sopenharmony_ci +	00000001		VFD_FETCH[0].INSTR_3: { STEPRATE = 1 }
5194bf215546Sopenharmony_ci!+	2c0000df		VFD_DECODE[0].INSTR: { WRITEMASK = 0xf | CONSTFILL | FORMAT = VFMT4_32_32_32_FLOAT | REGID = r0.x | SWAP = WZYX | SHIFTCNT = 12 | LASTCOMPVALID }
5195bf215546Sopenharmony_ci +	00140010		SP_SP_CTRL_REG: { 0x140010 }
5196bf215546Sopenharmony_ci +	000005ff		SP_INSTR_CACHE_CTRL: { VS_BUFFER | FS_BUFFER | INSTR_BUFFER | 0x7f }
5197bf215546Sopenharmony_ci!+	00200400		SP_VS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 0 | THREADSIZE = TWO_QUADS | SUPERTHREADMODE }
5198bf215546Sopenharmony_ci!+	04000042		SP_VS_CTRL_REG1: { CONSTLENGTH = 66 | INITIALOUTSTANDING = 4 }
5199bf215546Sopenharmony_ci!+	0000fc00		SP_VS_PARAM_REG: { POSREGID = r0.x | PSIZEREGID = r63.x | TOTALVSOUTVAR = 0 }
5200bf215546Sopenharmony_ci +	00000000		SP_VS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 }
5201bf215546Sopenharmony_ci!+	1073c000		SP_VS_OBJ_START: 0x1073c000
5202bf215546Sopenharmony_ci!+	00000001		SP_VS_LENGTH_REG: 1
5203bf215546Sopenharmony_ci!+	00340400		SP_FS_CTRL_REG0: { THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | INOUTREGOVERLAP = 1 | THREADSIZE = FOUR_QUADS | SUPERTHREADMODE }
5204bf215546Sopenharmony_ci!+	8000003e		SP_FS_CTRL_REG1: { CONSTLENGTH = 62 | 0x80000000 }
5205bf215546Sopenharmony_ci +	7e420000		SP_FS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
5206bf215546Sopenharmony_ci!+	1073b000		SP_FS_OBJ_START: 0x1073b000
5207bf215546Sopenharmony_ci +	00000001		SP_FS_LENGTH_REG: 1
5208bf215546Sopenharmony_ci!+	0000fc00		SP_FS_OUTPUT_REG: { MRT = 0 | DEPTH_REGID = r63.x | SAMPLEMASK_REGID = r0.x }
5209bf215546Sopenharmony_ci!+	00000000		SP_FS_MRT[0].REG: { REGID = r0.x | MRTFORMAT = 0 }
5210bf215546Sopenharmony_ci!+	00000000		SP_FS_MRT[0x1].REG: { REGID = r0.x | MRTFORMAT = 0 }
5211bf215546Sopenharmony_ci!+	00000000		SP_FS_MRT[0x2].REG: { REGID = r0.x | MRTFORMAT = 0 }
5212bf215546Sopenharmony_ci!+	00000000		SP_FS_MRT[0x3].REG: { REGID = r0.x | MRTFORMAT = 0 }
5213bf215546Sopenharmony_ci!+	00000000		SP_FS_MRT[0x4].REG: { REGID = r0.x | MRTFORMAT = 0 }
5214bf215546Sopenharmony_ci!+	00000000		SP_FS_MRT[0x5].REG: { REGID = r0.x | MRTFORMAT = 0 }
5215bf215546Sopenharmony_ci!+	00000000		SP_FS_MRT[0x6].REG: { REGID = r0.x | MRTFORMAT = 0 }
5216bf215546Sopenharmony_ci!+	00000000		SP_FS_MRT[0x7].REG: { REGID = r0.x | MRTFORMAT = 0 }
5217bf215546Sopenharmony_ci +	7e420000		SP_HS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
5218bf215546Sopenharmony_ci +	7e420000		SP_DS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
5219bf215546Sopenharmony_ci +	7e420000		SP_GS_OBJ_OFFSET_REG: { CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 }
5220bf215546Sopenharmony_ci +	28000250		HLSQ_CONTROL_0_REG: { FSTHREADSIZE = FOUR_QUADS | FSSUPERTHREADENABLE | SPSHADERRESTART | CONSTMODE = 1 | SPCONSTFULLUPDATE }
5221bf215546Sopenharmony_ci +	fcfc0100		HLSQ_CONTROL_1_REG: { VSTHREADSIZE = TWO_QUADS | VSSUPERTHREADENABLE | COORDREGID = r63.x | ZWCOORDREGID = r63.x }
5222bf215546Sopenharmony_ci +	fff3f3f0		HLSQ_CONTROL_2_REG: { PRIMALLOCTHRESHOLD = 63 | FACEREGID = r63.x | SAMPLEID_REGID = r63.x | SAMPLEMASK_REGID = r63.x }
5223bf215546Sopenharmony_ci!+	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 }
5224bf215546Sopenharmony_ci +	00fcfcfc		HLSQ_CONTROL_4_REG: { IJ_PERSP_SAMPLE = r63.x | IJ_LINEAR_SAMPLE = r63.x | 0xfc0000 }
5225bf215546Sopenharmony_ci!+	01000042		HLSQ_VS_CONTROL_REG: { CONSTLENGTH = 66 | CONSTOBJECTOFFSET = 0 | SHADEROBJOFFSET = 0 | INSTRLENGTH = 1 }
5226bf215546Sopenharmony_ci +	017e423e		HLSQ_FS_CONTROL_REG: { CONSTLENGTH = 62 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 1 }
5227bf215546Sopenharmony_ci +	007e4200		HLSQ_HS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
5228bf215546Sopenharmony_ci +	007e4200		HLSQ_DS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
5229bf215546Sopenharmony_ci +	007e4200		HLSQ_GS_CONTROL_REG: { CONSTLENGTH = 0 | CONSTOBJECTOFFSET = 66 | SHADEROBJOFFSET = 63 | INSTRLENGTH = 0 }
5230bf215546Sopenharmony_ci +	00000003		HLSQ_UPDATE_CONTROL: 0x3
5231bf215546Sopenharmony_ci108ce624:		0000: c0023800 00000088 00000001 00000002
5232bf215546Sopenharmony_cit0		write CP_SCRATCH[0x7].REG (057f)
5233bf215546Sopenharmony_ci			CP_SCRATCH[0x7].REG: 0x76
5234bf215546Sopenharmony_ci			:0,109,115,118
5235bf215546Sopenharmony_ci108ce634:		0000: 0000057f 00000076
5236bf215546Sopenharmony_cit0		write RB_COPY_CONTROL (20fc)
5237bf215546Sopenharmony_ci			RB_COPY_CONTROL: { MSAA_RESOLVE = MSAA_ONE | MODE = RB_COPY_RESOLVE | FASTCLEAR = 0 | GMEM_BASE = 0 }
5238bf215546Sopenharmony_ci			RB_COPY_DEST_BASE: { BASE = 0x10f3c000 }
5239bf215546Sopenharmony_ci			RB_COPY_DEST_PITCH: { PITCH = 1280 }
5240bf215546Sopenharmony_ci			RB_COPY_DEST_INFO: { FORMAT = RB4_R8G8B8A8_UNORM | SWAP = WXYZ | DITHER_MODE = DITHER_DISABLE | COMPONENT_ENABLE = 0xf | ENDIAN = ENDIAN_NONE | TILE = TILE4_LINEAR }
5241bf215546Sopenharmony_ci108ce63c:		0000: 000320fc 00000010 10f3c000 00000028 0003c168
5242bf215546Sopenharmony_cit0		write CP_SCRATCH[0x7].REG (057f)
5243bf215546Sopenharmony_ci			CP_SCRATCH[0x7].REG: 0x77
5244bf215546Sopenharmony_ci			:0,109,115,119
5245bf215546Sopenharmony_ci108ce650:		0000: 0000057f 00000077
5246bf215546Sopenharmony_cit3		opcode: CP_DRAW_INDX_OFFSET (38) (4 dwords)
5247bf215546Sopenharmony_ci			{ 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 }
5248bf215546Sopenharmony_ci			{ NUM_INSTANCES = 1 }
5249bf215546Sopenharmony_ci			{ NUM_INDICES = 2 }
5250bf215546Sopenharmony_ci		draw[20] register values
5251bf215546Sopenharmony_ci!+	00000077		CP_SCRATCH[0x7].REG: 0x77
5252bf215546Sopenharmony_ci		:0,109,115,119
5253bf215546Sopenharmony_ci!+	00000010		RB_COPY_CONTROL: { MSAA_RESOLVE = MSAA_ONE | MODE = RB_COPY_RESOLVE | FASTCLEAR = 0 | GMEM_BASE = 0 }
5254bf215546Sopenharmony_ci!+	10f3c000		RB_COPY_DEST_BASE: { BASE = 0x10f3c000 }
5255bf215546Sopenharmony_ci +	00000028		RB_COPY_DEST_PITCH: { PITCH = 1280 }
5256bf215546Sopenharmony_ci!+	0003c168		RB_COPY_DEST_INFO: { FORMAT = RB4_R8G8B8A8_UNORM | SWAP = WXYZ | DITHER_MODE = DITHER_DISABLE | COMPONENT_ENABLE = 0xf | ENDIAN = ENDIAN_NONE | TILE = TILE4_LINEAR }
5257bf215546Sopenharmony_ci108ce658:		0000: c0023800 00000088 00000001 00000002
5258bf215546Sopenharmony_cit0		write CP_SCRATCH[0x7].REG (057f)
5259bf215546Sopenharmony_ci			CP_SCRATCH[0x7].REG: 0x78
5260bf215546Sopenharmony_ci			:0,109,115,120
5261bf215546Sopenharmony_ci108ce668:		0000: 0000057f 00000078
5262bf215546Sopenharmony_cit0		write GRAS_SC_CONTROL (207b)
5263bf215546Sopenharmony_ci			GRAS_SC_CONTROL: { RENDER_MODE = RB_RENDERING_PASS | MSAA_SAMPLES = 0 | MSAA_DISABLE | RASTER_MODE = 0 }
5264bf215546Sopenharmony_ci108ce670:		0000: 0000207b 00000800
5265bf215546Sopenharmony_ci############################################################
5266bf215546Sopenharmony_civertices: 0
5267bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029605
5268bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029606
5269bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029607
5270bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029608
5271bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029609
5272bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029610
5273bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029611
5274bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029612
5275bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029613
5276bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029614
5277bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029615
5278bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029616
5279bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029617
5280bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029618
5281bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029619
5282bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029620
5283bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029621
5284bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029622
5285bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029623
5286bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029624
5287bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029625
5288bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029626
5289bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029627
5290bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029628
5291bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029629
5292bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029630
5293bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029631
5294bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029632
5295bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029633
5296bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029634
5297bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029635
5298bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029636
5299bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029637
5300bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029638
5301bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029639
5302bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029640
5303bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029641
5304bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029642
5305bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029643
5306bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029644
5307bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029645
5308bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029646
5309bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029647
5310bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029648
5311bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029649
5312bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029650
5313bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029651
5314bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029652
5315bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029653
5316bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029654
5317bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029655
5318bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029656
5319bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029657
5320bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029658
5321bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029659
5322bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029660
5323bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029661
5324bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029662
5325bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029663
5326bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029664
5327bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029665
5328bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029666
5329bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029667
5330bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029668
5331bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029669
5332bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029670
5333bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029671
5334bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029672
5335bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029673
5336bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029674
5337bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029675
5338bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029676
5339bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029677
5340bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029678
5341bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029679
5342bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029680
5343bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029681
5344bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029682
5345bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029683
5346bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029684
5347bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029685
5348bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029686
5349bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029687
5350bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029688
5351bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029689
5352bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029690
5353bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029691
5354bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029692
5355bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029693
5356bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029694
5357bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029695
5358bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029696
5359bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029697
5360bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029698
5361bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029699
5362bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029700
5363bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029701
5364bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029702
5365bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029703
5366bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029704
5367bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029705
5368bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029706
5369bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029707
5370bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029708
5371bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029709
5372bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029710
5373bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029711
5374bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029712
5375bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029713
5376bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029714
5377bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029715
5378bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029716
5379bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029717
5380bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029718
5381bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029719
5382bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029720
5383bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029721
5384bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029722
5385bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029723
5386bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029724
5387bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029725
5388bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029726
5389bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029727
5390bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029728
5391bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029729
5392bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029730
5393bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029731
5394bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029732
5395bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029733
5396bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029734
5397bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029735
5398bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029736
5399bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029737
5400bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029738
5401bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029739
5402bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029740
5403bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029741
5404bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029742
5405bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029743
5406bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029744
5407bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029745
5408bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029746
5409bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029747
5410bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029748
5411bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029749
5412bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029750
5413bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029751
5414bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029752
5415bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029753
5416bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029754
5417bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029755
5418bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029756
5419bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029757
5420bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029758
5421bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029759
5422bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029760
5423bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029761
5424bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029762
5425bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029763
5426bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029764
5427bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029765
5428bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029766
5429bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029767
5430bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029768
5431bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029769
5432bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029770
5433bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029771
5434bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029772
5435bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029773
5436bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029774
5437bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029775
5438bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029776
5439bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029777
5440bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029778
5441bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029779
5442bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029780
5443bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029781
5444bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029782
5445bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029783
5446bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029784
5447bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029785
5448bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029786
5449bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029787
5450bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029788
5451bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029789
5452bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029790
5453bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029791
5454bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029792
5455bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029793
5456bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029794
5457bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029795
5458bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029796
5459bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029797
5460bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029798
5461bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029799
5462bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029800
5463bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029801
5464bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029802
5465bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029803
5466bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029804
5467bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029805
5468bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029806
5469bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029807
5470bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029808
5471bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029809
5472bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029810
5473bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029811
5474bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029812
5475bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029813
5476bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029814
5477bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029815
5478bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029816
5479bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029817
5480bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029818
5481bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029819
5482bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029820
5483bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029821
5484bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029822
5485bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029823
5486bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029824
5487bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029825
5488bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029826
5489bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029827
5490bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029828
5491bf215546Sopenharmony_cicmd: X/23360: fence=1029829
5492bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029830
5493bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029831
5494bf215546Sopenharmony_cicmd: X/23360: fence=1029832
5495bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029833
5496bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029834
5497bf215546Sopenharmony_cicmd: X/23360: fence=1029835
5498bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029836
5499bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029837
5500bf215546Sopenharmony_cicmd: X/23360: fence=1029838
5501bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029839
5502bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029840
5503bf215546Sopenharmony_cicmd: X/23360: fence=1029841
5504bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029842
5505bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029843
5506bf215546Sopenharmony_cicmd: X/23360: fence=1029844
5507bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029845
5508bf215546Sopenharmony_cicmd: glxgears/23375: fence=1029846
5509bf215546Sopenharmony_cicmd: X/23360: fence=1029847
5510