diff --git a/src/freedreno/.gitlab-ci/reference/crash.log b/src/freedreno/.gitlab-ci/reference/crash.log index 502fa640f42..76ee876e107 100644 --- a/src/freedreno/.gitlab-ci/reference/crash.log +++ b/src/freedreno/.gitlab-ci/reference/crash.log @@ -7962,26 +7962,26 @@ clusters: 00000000 SP_VS_VPC_DST[0x5].REG: { OUTLOC0 = 0 | OUTLOC1 = 0 | OUTLOC2 = 0 | OUTLOC3 = 0 } 00000000 SP_VS_VPC_DST[0x6].REG: { OUTLOC0 = 0 | OUTLOC1 = 0 | OUTLOC2 = 0 | OUTLOC3 = 0 } 00000000 SP_VS_VPC_DST[0x7].REG: { OUTLOC0 = 0 | OUTLOC1 = 0 | OUTLOC2 = 0 | OUTLOC3 = 0 } - 00000000 SP_UNKNOWN_A81B: 0 + 00000000 SP_VS_OBJ_FIRST_EXEC_OFFSET: 0 8e5d7d37 SP_VS_OBJ_START_LO: 0x8e5d7d37 0001fcd5 SP_VS_OBJ_START_HI: 0x1fcd5 - 00000000 0xa81e: 00000000 - 00000000 0xa81f: 00000000 - 00000000 0xa820: 00000000 - 00000000 0xa821: 00000000 + 00000000 SP_VS_PVT_MEM_PARAM: { MEMSIZEPERITEM = 0 | HWSTACKSIZEPERTHREAD = 0 } + 00000000 SP_VS_PVT_MEM_ADDR: 0 + 00000000 SP_VS_PVT_MEM_ADDR+0x1: 0 + 00000000 SP_VS_PVT_MEM_SIZE: { TOTALPVTMEMSIZE = 0 } 00000080 SP_VS_TEX_COUNT: 128 00000100 SP_VS_CONFIG: { ENABLED | NTEX = 0 | NSAMP = 0 | NIBO = 0 } 00000000 SP_VS_INSTRLEN: 0 00000000 SP_HS_CTRL_REG0: { HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 0 | BRANCHSTACK = 0 | THREADSIZE = TWO_QUADS } 00000000 SP_HS_UNKNOWN_A831: 0 00000000 0xa832: 00000000 - 00000000 SP_HS_UNKNOWN_A833: 0 + 00000000 SP_HS_OBJ_FIRST_EXEC_OFFSET: 0 780a8ca5 SP_HS_OBJ_START_LO: 0x780a8ca5 0001aad2 SP_HS_OBJ_START_HI: 0x1aad2 - 00000000 0xa836: 00000000 - 00000000 0xa837: 00000000 - 00000000 0xa838: 00000000 - 00000000 0xa839: 00000000 + 00000000 SP_HS_PVT_MEM_PARAM: { MEMSIZEPERITEM = 0 | HWSTACKSIZEPERTHREAD = 0 } + 00000000 SP_HS_PVT_MEM_ADDR: 0 + 00000000 SP_HS_PVT_MEM_ADDR+0x1: 0 + 00000000 SP_HS_PVT_MEM_SIZE: { TOTALPVTMEMSIZE = 0 } 00000080 SP_HS_TEX_COUNT: 128 00000000 SP_HS_CONFIG: { NTEX = 0 | NSAMP = 0 | NIBO = 0 } 00000000 SP_HS_INSTRLEN: 0 @@ -8012,13 +8012,13 @@ clusters: 00000000 SP_DS_VPC_DST[0x5].REG: { OUTLOC0 = 0 | OUTLOC1 = 0 | OUTLOC2 = 0 | OUTLOC3 = 0 } 00000000 SP_DS_VPC_DST[0x6].REG: { OUTLOC0 = 0 | OUTLOC1 = 0 | OUTLOC2 = 0 | OUTLOC3 = 0 } 00000000 SP_DS_VPC_DST[0x7].REG: { OUTLOC0 = 0 | OUTLOC1 = 0 | OUTLOC2 = 0 | OUTLOC3 = 0 } - 00000000 SP_DS_UNKNOWN_A85B: 0 + 00000000 SP_DS_OBJ_FIRST_EXEC_OFFSET: 0 7abf500d SP_DS_OBJ_START_LO: 0x7abf500d 00017e52 SP_DS_OBJ_START_HI: 0x17e52 - 00000000 0xa85e: 00000000 - 00000000 0xa85f: 00000000 - 00000000 0xa860: 00000000 - 00000000 0xa861: 00000000 + 00000000 SP_DS_PVT_MEM_PARAM: { MEMSIZEPERITEM = 0 | HWSTACKSIZEPERTHREAD = 0 } + 00000000 SP_DS_PVT_MEM_ADDR: 0 + 00000000 SP_DS_PVT_MEM_ADDR+0x1: 0 + 00000000 SP_DS_PVT_MEM_SIZE: { TOTALPVTMEMSIZE = 0 } 00000080 SP_DS_TEX_COUNT: 128 00000000 SP_DS_CONFIG: { NTEX = 0 | NSAMP = 0 | NIBO = 0 } 00000000 SP_DS_INSTRLEN: 0 @@ -8050,13 +8050,13 @@ clusters: 00000000 SP_GS_VPC_DST[0x5].REG: { OUTLOC0 = 0 | OUTLOC1 = 0 | OUTLOC2 = 0 | OUTLOC3 = 0 } 00000000 SP_GS_VPC_DST[0x6].REG: { OUTLOC0 = 0 | OUTLOC1 = 0 | OUTLOC2 = 0 | OUTLOC3 = 0 } 00000000 SP_GS_VPC_DST[0x7].REG: { OUTLOC0 = 0 | OUTLOC1 = 0 | OUTLOC2 = 0 | OUTLOC3 = 0 } - 00000000 0xa88c: 00000000 + 00000000 SP_GS_OBJ_FIRST_EXEC_OFFSET: 0 14e2046b SP_GS_OBJ_START_LO: 0x14e2046b 00004c8f SP_GS_OBJ_START_HI: 0x4c8f - 00000000 0xa88f: 00000000 - 00000000 0xa890: 00000000 - 00000000 0xa891: 00000000 - 00000000 0xa892: 00000000 + 00000000 SP_GS_PVT_MEM_PARAM: { MEMSIZEPERITEM = 0 | HWSTACKSIZEPERTHREAD = 0 } + 00000000 SP_GS_PVT_MEM_ADDR: 0 + 00000000 SP_GS_PVT_MEM_ADDR+0x1: 0 + 00000000 SP_GS_PVT_MEM_SIZE: { TOTALPVTMEMSIZE = 0 } 00000080 SP_GS_TEX_COUNT: 128 00000100 SP_GS_CONFIG: { ENABLED | NTEX = 0 | NSAMP = 0 | NIBO = 0 } 00000000 SP_GS_INSTRLEN: 0 @@ -8108,26 +8108,26 @@ clusters: 00000000 SP_VS_VPC_DST[0x5].REG: { OUTLOC0 = 0 | OUTLOC1 = 0 | OUTLOC2 = 0 | OUTLOC3 = 0 } 00000000 SP_VS_VPC_DST[0x6].REG: { OUTLOC0 = 0 | OUTLOC1 = 0 | OUTLOC2 = 0 | OUTLOC3 = 0 } 00000000 SP_VS_VPC_DST[0x7].REG: { OUTLOC0 = 0 | OUTLOC1 = 0 | OUTLOC2 = 0 | OUTLOC3 = 0 } - 00000000 SP_UNKNOWN_A81B: 0 + 00000000 SP_VS_OBJ_FIRST_EXEC_OFFSET: 0 8e5d7d37 SP_VS_OBJ_START_LO: 0x8e5d7d37 0001fcd5 SP_VS_OBJ_START_HI: 0x1fcd5 - 00000000 0xa81e: 00000000 - 00000000 0xa81f: 00000000 - 00000000 0xa820: 00000000 - 00000000 0xa821: 00000000 + 00000000 SP_VS_PVT_MEM_PARAM: { MEMSIZEPERITEM = 0 | HWSTACKSIZEPERTHREAD = 0 } + 00000000 SP_VS_PVT_MEM_ADDR: 0 + 00000000 SP_VS_PVT_MEM_ADDR+0x1: 0 + 00000000 SP_VS_PVT_MEM_SIZE: { TOTALPVTMEMSIZE = 0 } 00000080 SP_VS_TEX_COUNT: 128 00000100 SP_VS_CONFIG: { ENABLED | NTEX = 0 | NSAMP = 0 | NIBO = 0 } 00000000 SP_VS_INSTRLEN: 0 00000000 SP_HS_CTRL_REG0: { HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 0 | BRANCHSTACK = 0 | THREADSIZE = TWO_QUADS } 00000000 SP_HS_UNKNOWN_A831: 0 00000000 0xa832: 00000000 - 00000000 SP_HS_UNKNOWN_A833: 0 + 00000000 SP_HS_OBJ_FIRST_EXEC_OFFSET: 0 780a8ca5 SP_HS_OBJ_START_LO: 0x780a8ca5 0001aad2 SP_HS_OBJ_START_HI: 0x1aad2 - 00000000 0xa836: 00000000 - 00000000 0xa837: 00000000 - 00000000 0xa838: 00000000 - 00000000 0xa839: 00000000 + 00000000 SP_HS_PVT_MEM_PARAM: { MEMSIZEPERITEM = 0 | HWSTACKSIZEPERTHREAD = 0 } + 00000000 SP_HS_PVT_MEM_ADDR: 0 + 00000000 SP_HS_PVT_MEM_ADDR+0x1: 0 + 00000000 SP_HS_PVT_MEM_SIZE: { TOTALPVTMEMSIZE = 0 } 00000080 SP_HS_TEX_COUNT: 128 00000000 SP_HS_CONFIG: { NTEX = 0 | NSAMP = 0 | NIBO = 0 } 00000000 SP_HS_INSTRLEN: 0 @@ -8158,13 +8158,13 @@ clusters: 00000000 SP_DS_VPC_DST[0x5].REG: { OUTLOC0 = 0 | OUTLOC1 = 0 | OUTLOC2 = 0 | OUTLOC3 = 0 } 00000000 SP_DS_VPC_DST[0x6].REG: { OUTLOC0 = 0 | OUTLOC1 = 0 | OUTLOC2 = 0 | OUTLOC3 = 0 } 00000000 SP_DS_VPC_DST[0x7].REG: { OUTLOC0 = 0 | OUTLOC1 = 0 | OUTLOC2 = 0 | OUTLOC3 = 0 } - 00000000 SP_DS_UNKNOWN_A85B: 0 + 00000000 SP_DS_OBJ_FIRST_EXEC_OFFSET: 0 7abf500d SP_DS_OBJ_START_LO: 0x7abf500d 00017e52 SP_DS_OBJ_START_HI: 0x17e52 - 00000000 0xa85e: 00000000 - 00000000 0xa85f: 00000000 - 00000000 0xa860: 00000000 - 00000000 0xa861: 00000000 + 00000000 SP_DS_PVT_MEM_PARAM: { MEMSIZEPERITEM = 0 | HWSTACKSIZEPERTHREAD = 0 } + 00000000 SP_DS_PVT_MEM_ADDR: 0 + 00000000 SP_DS_PVT_MEM_ADDR+0x1: 0 + 00000000 SP_DS_PVT_MEM_SIZE: { TOTALPVTMEMSIZE = 0 } 00000080 SP_DS_TEX_COUNT: 128 00000000 SP_DS_CONFIG: { NTEX = 0 | NSAMP = 0 | NIBO = 0 } 00000000 SP_DS_INSTRLEN: 0 @@ -8196,13 +8196,13 @@ clusters: 00000000 SP_GS_VPC_DST[0x5].REG: { OUTLOC0 = 0 | OUTLOC1 = 0 | OUTLOC2 = 0 | OUTLOC3 = 0 } 00000000 SP_GS_VPC_DST[0x6].REG: { OUTLOC0 = 0 | OUTLOC1 = 0 | OUTLOC2 = 0 | OUTLOC3 = 0 } 00000000 SP_GS_VPC_DST[0x7].REG: { OUTLOC0 = 0 | OUTLOC1 = 0 | OUTLOC2 = 0 | OUTLOC3 = 0 } - 00000000 0xa88c: 00000000 + 00000000 SP_GS_OBJ_FIRST_EXEC_OFFSET: 0 14e2046b SP_GS_OBJ_START_LO: 0x14e2046b 00004c8f SP_GS_OBJ_START_HI: 0x4c8f - 00000000 0xa88f: 00000000 - 00000000 0xa890: 00000000 - 00000000 0xa891: 00000000 - 00000000 0xa892: 00000000 + 00000000 SP_GS_PVT_MEM_PARAM: { MEMSIZEPERITEM = 0 | HWSTACKSIZEPERTHREAD = 0 } + 00000000 SP_GS_PVT_MEM_ADDR: 0 + 00000000 SP_GS_PVT_MEM_ADDR+0x1: 0 + 00000000 SP_GS_PVT_MEM_SIZE: { TOTALPVTMEMSIZE = 0 } 00000080 SP_GS_TEX_COUNT: 128 00000100 SP_GS_CONFIG: { ENABLED | NTEX = 0 | NSAMP = 0 | NIBO = 0 } 00000000 SP_GS_INSTRLEN: 0 @@ -8396,13 +8396,13 @@ clusters: - context: 0 05100000 SP_FS_CTRL_REG0: { HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 0 | BRANCHSTACK = 0 | THREADSIZE = FOUR_QUADS | PIXLODENABLE | 0x1000000 } 00000000 SP_FS_BRANCH_COND: 0 - 00000000 SP_UNKNOWN_A982: 0 + 00000000 SP_FS_OBJ_FIRST_EXEC_OFFSET: 0 4bdb43d8 SP_FS_OBJ_START_LO: 0x4bdb43d8 0001af86 SP_FS_OBJ_START_HI: 0x1af86 - 00000000 0xa985: 00000000 - 00000000 0xa986: 00000000 - 00000000 0xa987: 00000000 - 00000000 0xa988: 00000000 + 00000000 SP_FS_PVT_MEM_PARAM: { MEMSIZEPERITEM = 0 | HWSTACKSIZEPERTHREAD = 0 } + 00000000 SP_FS_PVT_MEM_ADDR: 0 + 00000000 SP_FS_PVT_MEM_ADDR+0x1: 0 + 00000000 SP_FS_PVT_MEM_SIZE: { TOTALPVTMEMSIZE = 0 } 00000100 SP_BLEND_CNTL: { UNK8 } 00000000 SP_SRGB_CNTL: { 0 } 00000000 SP_FS_RENDER_COMPONENTS: { RT0 = 0 | RT1 = 0 | RT2 = 0 | RT3 = 0 | RT4 = 0 | RT5 = 0 | RT6 = 0 | RT7 = 0 } @@ -8438,13 +8438,13 @@ clusters: 00421800 SP_CS_CTRL_REG0: { HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 48 | BRANCHSTACK = 8 | THREADSIZE = TWO_QUADS | VARYING } 0000001f SP_CS_UNKNOWN_A9B1: 31 00000000 0xa9b2: 00000000 - 00000000 SP_CS_UNKNOWN_A9B3: 0 + 00000000 SP_CS_OBJ_FIRST_EXEC_OFFSET: 0 8c415420 SP_CS_OBJ_START_LO: 0x8c415420 00000000 SP_CS_OBJ_START_HI: 0 - 00000000 0xa9b6: 00000000 - 00000000 0xa9b7: 00000000 - 00000000 0xa9b8: 00000000 - 00000000 0xa9b9: 00000000 + 00000000 SP_CS_PVT_MEM_PARAM: { MEMSIZEPERITEM = 0 | HWSTACKSIZEPERTHREAD = 0 } + 00000000 SP_CS_PVT_MEM_ADDR: 0 + 00000000 SP_CS_PVT_MEM_ADDR+0x1: 0 + 00000000 SP_CS_PVT_MEM_SIZE: { TOTALPVTMEMSIZE = 0 } 00000080 SP_CS_TEX_COUNT: 128 00200100 SP_CS_CONFIG: { ENABLED | NTEX = 0 | NSAMP = 16 | NIBO = 0 } 00000004 SP_CS_INSTRLEN: 4 @@ -8478,13 +8478,13 @@ clusters: - context: 1 05100000 SP_FS_CTRL_REG0: { HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 0 | BRANCHSTACK = 0 | THREADSIZE = FOUR_QUADS | PIXLODENABLE | 0x1000000 } 00000000 SP_FS_BRANCH_COND: 0 - 00000000 SP_UNKNOWN_A982: 0 + 00000000 SP_FS_OBJ_FIRST_EXEC_OFFSET: 0 4bdb43d8 SP_FS_OBJ_START_LO: 0x4bdb43d8 0001af86 SP_FS_OBJ_START_HI: 0x1af86 - 00000000 0xa985: 00000000 - 00000000 0xa986: 00000000 - 00000000 0xa987: 00000000 - 00000000 0xa988: 00000000 + 00000000 SP_FS_PVT_MEM_PARAM: { MEMSIZEPERITEM = 0 | HWSTACKSIZEPERTHREAD = 0 } + 00000000 SP_FS_PVT_MEM_ADDR: 0 + 00000000 SP_FS_PVT_MEM_ADDR+0x1: 0 + 00000000 SP_FS_PVT_MEM_SIZE: { TOTALPVTMEMSIZE = 0 } 00000100 SP_BLEND_CNTL: { UNK8 } 00000000 SP_SRGB_CNTL: { 0 } 00000000 SP_FS_RENDER_COMPONENTS: { RT0 = 0 | RT1 = 0 | RT2 = 0 | RT3 = 0 | RT4 = 0 | RT5 = 0 | RT6 = 0 | RT7 = 0 } @@ -8520,13 +8520,13 @@ clusters: 00421800 SP_CS_CTRL_REG0: { HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 48 | BRANCHSTACK = 8 | THREADSIZE = TWO_QUADS | VARYING } 0000001f SP_CS_UNKNOWN_A9B1: 31 00000000 0xa9b2: 00000000 - 00000000 SP_CS_UNKNOWN_A9B3: 0 + 00000000 SP_CS_OBJ_FIRST_EXEC_OFFSET: 0 8c415420 SP_CS_OBJ_START_LO: 0x8c415420 00000000 SP_CS_OBJ_START_HI: 0 - 00000000 0xa9b6: 00000000 - 00000000 0xa9b7: 00000000 - 00000000 0xa9b8: 00000000 - 00000000 0xa9b9: 00000000 + 00000000 SP_CS_PVT_MEM_PARAM: { MEMSIZEPERITEM = 0 | HWSTACKSIZEPERTHREAD = 0 } + 00000000 SP_CS_PVT_MEM_ADDR: 0 + 00000000 SP_CS_PVT_MEM_ADDR+0x1: 0 + 00000000 SP_CS_PVT_MEM_SIZE: { TOTALPVTMEMSIZE = 0 } 00000080 SP_CS_TEX_COUNT: 128 00200100 SP_CS_CONFIG: { ENABLED | NTEX = 0 | NSAMP = 16 | NIBO = 0 } 00000004 SP_CS_INSTRLEN: 4 diff --git a/src/freedreno/.gitlab-ci/reference/dEQP-VK.draw.indirect_draw.indexed.indirect_draw_count.triangle_list.log b/src/freedreno/.gitlab-ci/reference/dEQP-VK.draw.indirect_draw.indexed.indirect_draw_count.triangle_list.log index 7bbaa5de1fd..3f56d8a65de 100644 --- a/src/freedreno/.gitlab-ci/reference/dEQP-VK.draw.indirect_draw.indexed.indirect_draw_count.triangle_list.log +++ b/src/freedreno/.gitlab-ci/reference/dEQP-VK.draw.indirect_draw.indexed.indirect_draw_count.triangle_list.log @@ -69,8 +69,8 @@ t4 write UCHE_CLIENT_PF (0e19) t4 write RB_UNKNOWN_8E01 (8e01) RB_UNKNOWN_8E01: 0 00000000010580a4: 0000: 408e0101 00000000 -t4 write SP_UNKNOWN_A982 (a982) - SP_UNKNOWN_A982: 0 +t4 write SP_FS_OBJ_FIRST_EXEC_OFFSET (a982) + SP_FS_OBJ_FIRST_EXEC_OFFSET: 0 00000000010580ac: 0000: 48a98201 00000000 t4 write SP_UNKNOWN_A9A8 (a9a8) SP_UNKNOWN_A9A8: 0 @@ -147,8 +147,8 @@ t4 write PC_PRIMITIVE_CNTL_6 (9b06) t4 write PC_MULTIVIEW_CNTL (9b07) PC_MULTIVIEW_CNTL: { VIEWS = 0 } 0000000001058174: 0000: 489b0701 00000000 -t4 write SP_UNKNOWN_A81B (a81b) - SP_UNKNOWN_A81B: 0 +t4 write SP_VS_OBJ_FIRST_EXEC_OFFSET (a81b) + SP_VS_OBJ_FIRST_EXEC_OFFSET: 0 000000000105817c: 0000: 40a81b01 00000000 t4 write SP_UNKNOWN_B183 (b183) SP_UNKNOWN_B183: 0 @@ -340,10 +340,10 @@ t7 opcode: CP_BLIT (2c) (2 dwords) + 00000000 VFD_MODE_CNTL: { 0 } + 00000000 VFD_MULTIVIEW_CNTL: { VIEWS = 0 } !+ 00000001 VFD_ADD_OFFSET: { VERTEX } - + 00000000 SP_UNKNOWN_A81B: 0 + + 00000000 SP_VS_OBJ_FIRST_EXEC_OFFSET: 0 + 00000000 SP_HS_CTRL_REG0: { HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 0 | BRANCHSTACK = 0 | THREADSIZE = TWO_QUADS } + 00000000 SP_GS_CTRL_REG0: { HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 0 | BRANCHSTACK = 0 | THREADSIZE = TWO_QUADS } - + 00000000 SP_UNKNOWN_A982: 0 + + 00000000 SP_FS_OBJ_FIRST_EXEC_OFFSET: 0 + 00000000 SP_UNKNOWN_A9A8: 0 !+ 00000005 SP_MODE_CONTROL: { CONSTANT_DEMOTION_ENABLE | 0x4 } + 00000000 SP_IBO_COUNT: 0 diff --git a/src/freedreno/.gitlab-ci/reference/fd-clouds.log b/src/freedreno/.gitlab-ci/reference/fd-clouds.log index e2f0c7c9634..24fdc6603bf 100644 --- a/src/freedreno/.gitlab-ci/reference/fd-clouds.log +++ b/src/freedreno/.gitlab-ci/reference/fd-clouds.log @@ -135,8 +135,8 @@ t4 write PC_RASTER_CNTL (9980) t4 write PC_MULTIVIEW_CNTL (9b07) PC_MULTIVIEW_CNTL: { VIEWS = 0 } 0000000001d91154: 0000: 489b0701 00000000 -t4 write SP_UNKNOWN_A81B (a81b) - SP_UNKNOWN_A81B: 0 +t4 write SP_VS_OBJ_FIRST_EXEC_OFFSET (a81b) + SP_VS_OBJ_FIRST_EXEC_OFFSET: 0 0000000001d9115c: 0000: 40a81b01 00000000 t4 write SP_UNKNOWN_B183 (b183) SP_UNKNOWN_B183: 0 @@ -603,8 +603,8 @@ t4 write SP_IBO_COUNT (ab20) 0000000001121120: 0120: 000000fc 000000fc 40930101 00ff0004 409b0601 00000000 40a87101 00000000 0000000001121140: 0140: 48910101 00ffff00 48910701 00000000 40a00186 fcfcfcfc 0000fcfc fcfcfcfc 0000000001121160: 0160: 000000fc 0000fcfc 00000000 40887001 00000000 48809401 00000000 -t4 write SP_HS_UNKNOWN_A833 (a833) - SP_HS_UNKNOWN_A833: 0 +t4 write SP_HS_OBJ_FIRST_EXEC_OFFSET (a833) + SP_HS_OBJ_FIRST_EXEC_OFFSET: 0 0000000001121000: 0000: 40a83301 00000000 t4 write SP_FS_PREFETCH_CNTL (a99e) SP_FS_PREFETCH_CNTL: { COUNT = 0 | UNK4 = r63.x | 0x7000 } @@ -709,8 +709,8 @@ t4 write HLSQ_UNKNOWN_B980 (b980) t4 write SP_FS_CTRL_REG0 (a980) SP_FS_CTRL_REG0: { HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | BRANCHSTACK = 0 | THREADSIZE = FOUR_QUADS | MERGEDREGS | 0x1000000 } 00000000011210c0: 0000: 40a98001 81100080 -t4 write SP_UNKNOWN_A982 (a982) - SP_UNKNOWN_A982: 0 +t4 write SP_FS_OBJ_FIRST_EXEC_OFFSET (a982) + SP_FS_OBJ_FIRST_EXEC_OFFSET: 0 00000000011210c8: 0000: 48a98201 00000000 t4 write VPC_VS_LAYER_CNTL (9104) VPC_VS_LAYER_CNTL: { LAYERLOC = 255 | VIEWLOC = 255 } @@ -1094,7 +1094,7 @@ t7 opcode: CP_DRAW_INDX_OFFSET (38) (4 dwords) !+ 00000001 SP_VS_PRIMITIVE_CNTL: { OUT = 1 } !+ 00000f00 SP_VS_OUT[0].REG: { A_REGID = r0.x | A_COMPMASK = 0xf | B_REGID = r0.x | B_COMPMASK = 0 } + 00000000 SP_VS_VPC_DST[0].REG: { OUTLOC0 = 0 | OUTLOC1 = 0 | OUTLOC2 = 0 | OUTLOC3 = 0 } - + 00000000 SP_UNKNOWN_A81B: 0 + + 00000000 SP_VS_OBJ_FIRST_EXEC_OFFSET: 0 !+ 01011000 SP_VS_OBJ_START_LO: 0x1011000 base=1011000, offset=0, size=128 + 00000000 SP_VS_OBJ_START_HI: 0 base=1011000, offset=0, size=128 0000000001011000: 0000: 00000000 03000000 00000000 00000000 00000000 00000000 00000000 00000000 @@ -1119,13 +1119,13 @@ t7 opcode: CP_DRAW_INDX_OFFSET (38) (4 dwords) !+ 00000100 SP_VS_CONFIG: { ENABLED | NTEX = 0 | NSAMP = 0 | NIBO = 0 } !+ 00000001 SP_VS_INSTRLEN: 1 + 00000000 SP_HS_UNKNOWN_A831: 0 - + 00000000 SP_HS_UNKNOWN_A833: 0 + + 00000000 SP_HS_OBJ_FIRST_EXEC_OFFSET: 0 + 00000000 SP_HS_CONFIG: { NTEX = 0 | NSAMP = 0 | NIBO = 0 } + 00000000 SP_DS_CONFIG: { NTEX = 0 | NSAMP = 0 | NIBO = 0 } + 00000000 SP_GS_PRIM_SIZE: 0 + 00000000 SP_GS_CONFIG: { NTEX = 0 | NSAMP = 0 | NIBO = 0 } !+ 81100080 SP_FS_CTRL_REG0: { HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 1 | BRANCHSTACK = 0 | THREADSIZE = FOUR_QUADS | MERGEDREGS | 0x1000000 } - + 00000000 SP_UNKNOWN_A982: 0 + + 00000000 SP_FS_OBJ_FIRST_EXEC_OFFSET: 0 + 00000000 SP_SRGB_CNTL: { 0 } !+ 0000000f SP_FS_RENDER_COMPONENTS: { RT0 = 0xf | RT1 = 0 | RT2 = 0 | RT3 = 0 | RT4 = 0 | RT5 = 0 | RT6 = 0 | RT7 = 0 } !+ fcfcfc00 SP_FS_OUTPUT_CNTL0: { DEPTH_REGID = r63.x | SAMPMASK_REGID = r63.x | STENCILREF_REGID = r63.x } @@ -1918,8 +1918,8 @@ t4 write SP_IBO_COUNT (ab20) 00000000011202a0: 02a0: 3dd70a3e 3d3851ec 40d9999a 3d4ac083 3ba3d70a 3de147ae 358637bd 33d6bf95 00000000011202c0: 02c0: 3f0ccccd 41800000 45070000 44b40000 3df5c28f 3f333333 3f266666 3f7851ec 00000000011202e0: 02e0: 3f19999a 3f666666 3f7d70a4 40100000 00000000 3db851ec 00000000 07ee25f4 -t4 write SP_HS_UNKNOWN_A833 (a833) - SP_HS_UNKNOWN_A833: 0 +t4 write SP_HS_OBJ_FIRST_EXEC_OFFSET (a833) + SP_HS_OBJ_FIRST_EXEC_OFFSET: 0 0000000001120000: 0000: 40a83301 00000000 t4 write SP_FS_PREFETCH_CNTL (a99e) SP_FS_PREFETCH_CNTL: { COUNT = 0 | UNK4 = r63.x | 0x7000 } @@ -2024,8 +2024,8 @@ t4 write HLSQ_UNKNOWN_B980 (b980) t4 write SP_FS_CTRL_REG0 (a980) SP_FS_CTRL_REG0: { HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 19 | BRANCHSTACK = 2 | THREADSIZE = FOUR_QUADS | VARYING | MERGEDREGS | 0x1000000 } 00000000011200c0: 0000: 40a98001 81508980 -t4 write SP_UNKNOWN_A982 (a982) - SP_UNKNOWN_A982: 0 +t4 write SP_FS_OBJ_FIRST_EXEC_OFFSET (a982) + SP_FS_OBJ_FIRST_EXEC_OFFSET: 0 00000000011200c8: 0000: 48a98201 00000000 t4 write VPC_VS_LAYER_CNTL (9104) VPC_VS_LAYER_CNTL: { LAYERLOC = 255 | VIEWLOC = 255 } @@ -5344,13 +5344,13 @@ t7 opcode: CP_DRAW_INDX_OFFSET (38) (4 dwords) + 00000100 SP_VS_CONFIG: { ENABLED | NTEX = 0 | NSAMP = 0 | NIBO = 0 } + 00000001 SP_VS_INSTRLEN: 1 + 00000000 SP_HS_UNKNOWN_A831: 0 - + 00000000 SP_HS_UNKNOWN_A833: 0 + + 00000000 SP_HS_OBJ_FIRST_EXEC_OFFSET: 0 + 00000000 SP_HS_CONFIG: { NTEX = 0 | NSAMP = 0 | NIBO = 0 } + 00000000 SP_DS_CONFIG: { NTEX = 0 | NSAMP = 0 | NIBO = 0 } + 00000000 SP_GS_PRIM_SIZE: 0 + 00000000 SP_GS_CONFIG: { NTEX = 0 | NSAMP = 0 | NIBO = 0 } !+ 81508980 SP_FS_CTRL_REG0: { HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 19 | BRANCHSTACK = 2 | THREADSIZE = FOUR_QUADS | VARYING | MERGEDREGS | 0x1000000 } - + 00000000 SP_UNKNOWN_A982: 0 + + 00000000 SP_FS_OBJ_FIRST_EXEC_OFFSET: 0 !+ 01013000 SP_FS_OBJ_START_LO: 0x1013000 base=1013000, offset=0, size=11264 + 00000000 SP_FS_OBJ_START_HI: 0 base=1013000, offset=0, size=11264 0000000001013000: 0000: 40400000 204cc000 00000000 204cc006 3e99999a 204cc004 20080014 42700008 diff --git a/src/freedreno/registers/adreno/a6xx.xml b/src/freedreno/registers/adreno/a6xx.xml index b15d66c59d3..082fd720398 100644 --- a/src/freedreno/registers/adreno/a6xx.xml +++ b/src/freedreno/registers/adreno/a6xx.xml @@ -3148,21 +3148,90 @@ to upconvert to 32b float internally? - + + + The size of memory that ldp/stp can address. + + + + Seems to be the same as a3xx. The maximum stack + size in units of 4 calls, so a call depth of 7 + would result in a value of 2. + TODO: What's the actual size per call, i.e. the + size of the PC? a3xx docs say it's 16 bits + there, but the length register now takes 28 bits + so it's probably been bumped to 32 bits. + + + + + + + + + There are four indices used to compute the + private memory location for an access: + + - stp/ldp offset + - fiber id + - wavefront id (a swizzled version of what "getwid" returns) + - SP ID (the same as what "getspid" returns) + + The stride for the SP ID is always set by + TOTALPVTMEMSIZE. In the per-wave layout, the + indices are used in this order: + + - offset % 4 (offset within dword) + - fiber id + - offset / 4 + - wavefront id + - SP ID + + and the stride for the wavefront ID is + MEMSIZEPERITEM, multiplied by 128 (fibers per + wavefront). In the per-fiber layout, the indices + are used in this order: + + - offset + - fiber id % 4 + - wavefront id + - fiber id / 4 + - SP ID + + and the stride for the fiber id/wavefront id + combo is MEMSIZEPERITEM. + + Note: Accesses of more than 1 dword do not work + with per-fiber layout. The blob will fall back + to per-wave instead. + + + + + + + + + - + + + + + + @@ -3186,12 +3255,16 @@ to upconvert to 32b float internally? - + + + + + @@ -3228,11 +3301,16 @@ to upconvert to 32b float internally? + + + + + @@ -3258,9 +3336,13 @@ to upconvert to 32b float internally? bit N corresponds to brac.N --> - + + + + + @@ -3346,6 +3428,8 @@ to upconvert to 32b float internally? + + @@ -3358,9 +3442,6 @@ to upconvert to 32b float internally? - - - @@ -3385,10 +3466,23 @@ to upconvert to 32b float internally? + + + + + + + This seems to be be the equivalent of HWSTACKOFFSET in + a3xx. The offset formula isn't affected by + HWSTACKOFFSETPERTHREAD at all, so the HW return address + stack seems to be after all the normal per-SP private + memory. + +