diff --git a/src/freedreno/ir3/ir3_shader.h b/src/freedreno/ir3/ir3_shader.h index e084b5a4919..f1c3c61b6da 100644 --- a/src/freedreno/ir3/ir3_shader.h +++ b/src/freedreno/ir3/ir3_shader.h @@ -1458,7 +1458,7 @@ ir3_shader_branchstack_hw(const struct ir3_shader_variant *v) if (v->compiler->gen < 5) return v->branchstack; - return DIV_ROUND_UP(MIN2(v->branchstack, v->compiler->branchstack_size), 2); + return align(MIN2(v->branchstack, v->compiler->branchstack_size), 2); } ENDC; diff --git a/src/freedreno/registers/adreno/a5xx.xml b/src/freedreno/registers/adreno/a5xx.xml index bd8df594516..014e5faa22b 100644 --- a/src/freedreno/registers/adreno/a5xx.xml +++ b/src/freedreno/registers/adreno/a5xx.xml @@ -2475,7 +2475,7 @@ bit 7 for RECTLIST (clear) when z32s8 (used for clear of depth32? not set - + diff --git a/src/freedreno/registers/adreno/a6xx.xml b/src/freedreno/registers/adreno/a6xx.xml index 2bf19db4e80..468986a3cee 100644 --- a/src/freedreno/registers/adreno/a6xx.xml +++ b/src/freedreno/registers/adreno/a6xx.xml @@ -3601,10 +3601,8 @@ by a particular renderpass/blit. --> - - - + diff --git a/src/freedreno/tests/reference/crash.log b/src/freedreno/tests/reference/crash.log index 1048baaf5c0..ebca29f3390 100644 --- a/src/freedreno/tests/reference/crash.log +++ b/src/freedreno/tests/reference/crash.log @@ -7100,7 +7100,7 @@ WARNING: 64b discontinuity (no _LO dword for 890d) 00000000 SP_PS_INITIAL_TEX_INDEX[0x3].CMD: { SAMP_ID = 0 | TEX_ID = 0 } 00000080 SP_PS_TSIZE: 128 0000f000 SP_UNKNOWN_A9A8: 0xf000 - 00421800 SP_CS_CNTL_0: { THREADSIZE = THREAD64 | UNK22 | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 48 | BRANCHSTACK = 8 } + 00421800 SP_CS_CNTL_0: { THREADSIZE = THREAD64 | UNK22 | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 48 | BRANCHSTACK = 16 } 0000001f SP_CS_CNTL_1: { SHARED_SIZE = 31 | CONSTANTRAMMODE = CONSTLEN_128 } 00000000 SP_CS_BOOLEAN_CF_MASK: 0 00000000 SP_CS_PROGRAM_COUNTER_OFFSET: 0 @@ -7168,7 +7168,7 @@ WARNING: 64b discontinuity (no _LO dword for 890d) 00000000 SP_PS_INITIAL_TEX_INDEX[0x3].CMD: { SAMP_ID = 0 | TEX_ID = 0 } 00000080 SP_PS_TSIZE: 128 0000f000 SP_UNKNOWN_A9A8: 0xf000 - 00421800 SP_CS_CNTL_0: { THREADSIZE = THREAD64 | UNK22 | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 48 | BRANCHSTACK = 8 } + 00421800 SP_CS_CNTL_0: { THREADSIZE = THREAD64 | UNK22 | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 48 | BRANCHSTACK = 16 } 0000001f SP_CS_CNTL_1: { SHARED_SIZE = 31 | CONSTANTRAMMODE = CONSTLEN_128 } 00000000 SP_CS_BOOLEAN_CF_MASK: 0 00000000 SP_CS_PROGRAM_COUNTER_OFFSET: 0 diff --git a/src/freedreno/tests/reference/fd-clouds.log b/src/freedreno/tests/reference/fd-clouds.log index 1704d73e1a9..205710df306 100644 --- a/src/freedreno/tests/reference/fd-clouds.log +++ b/src/freedreno/tests/reference/fd-clouds.log @@ -1889,7 +1889,7 @@ cmdstream[0]: 1023 dwords SP_PS_WAVE_CNTL: { THREADSIZE = THREAD128 } 00000000011200b8: 0000: 48b98001 00000001 write SP_PS_CNTL_0 (a980) - SP_PS_CNTL_0: { THREADSIZE = THREAD128 | VARYING | INOUTREGOVERLAP | MERGEDREGS | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 19 | BRANCHSTACK = 2 } + SP_PS_CNTL_0: { THREADSIZE = THREAD128 | VARYING | INOUTREGOVERLAP | MERGEDREGS | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 19 | BRANCHSTACK = 4 } 00000000011200c0: 0000: 40a98001 81508980 write SP_PS_PROGRAM_COUNTER_OFFSET (a982) SP_PS_PROGRAM_COUNTER_OFFSET: 0 @@ -5198,7 +5198,7 @@ cmdstream[0]: 1023 dwords + 00000000 SP_DS_CONFIG: { NTEX = 0 | NSAMP = 0 | NUAV = 0 } + 00000000 SP_GS_CNTL_1: 0 + 00000000 SP_GS_CONFIG: { NTEX = 0 | NSAMP = 0 | NUAV = 0 } -!+ 81508980 SP_PS_CNTL_0: { THREADSIZE = THREAD128 | VARYING | INOUTREGOVERLAP | MERGEDREGS | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 19 | BRANCHSTACK = 2 } +!+ 81508980 SP_PS_CNTL_0: { THREADSIZE = THREAD128 | VARYING | INOUTREGOVERLAP | MERGEDREGS | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 19 | BRANCHSTACK = 4 } + 00000000 SP_PS_PROGRAM_COUNTER_OFFSET: 0 !+ 01013000 SP_PS_BASE: 0x1013000 base=1013000, offset=0, size=11264 0000000001013000: 0000: 40400000 204cc000 00000000 204cc006 3e99999a 204cc004 20080014 42700008 diff --git a/src/freedreno/tests/reference/prefetch-test.log b/src/freedreno/tests/reference/prefetch-test.log index 04fe9364c20..d64a3bf0062 100644 --- a/src/freedreno/tests/reference/prefetch-test.log +++ b/src/freedreno/tests/reference/prefetch-test.log @@ -7633,7 +7633,7 @@ WARNING: 64b discontinuity (no _LO dword for 890d) 103adc200 HLSQ_LOAD_STATE_GEOM_EXT_SRC_ADDR: 0x103adc200 - cluster-name: CLUSTER_SP_VS - context: 0 - 00108280 SP_VS_CNTL_0: { MERGEDREGS | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | BRANCHSTACK = 2 } + 00108280 SP_VS_CNTL_0: { MERGEDREGS | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | BRANCHSTACK = 4 } 00000000 SP_VS_BOOLEAN_CF_MASK: 0 00000002 SP_VS_OUTPUT_CNTL: { OUT = 2 } 0f0e0312 SP_VS_OUTPUT[0].REG: { A_REGID = r4.z | A_COMPMASK = 0x3 | B_REGID = r3.z | B_COMPMASK = 0xf } @@ -7763,7 +7763,7 @@ WARNING: 64b discontinuity (no _LO dword for 890d) 00000000 0xa8c2: 00000000 00000000 0xa8c3: 00000000 - context: 1 - 00108280 SP_VS_CNTL_0: { MERGEDREGS | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | BRANCHSTACK = 2 } + 00108280 SP_VS_CNTL_0: { MERGEDREGS | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | BRANCHSTACK = 4 } 00000000 SP_VS_BOOLEAN_CF_MASK: 0 00000002 SP_VS_OUTPUT_CNTL: { OUT = 2 } 0f0e0312 SP_VS_OUTPUT[0].REG: { A_REGID = r4.z | A_COMPMASK = 0x3 | B_REGID = r3.z | B_COMPMASK = 0xf } @@ -8024,7 +8024,7 @@ WARNING: 64b discontinuity (no _LO dword for 890d) deadbeef HLSQ_2D_EVENT_CMD: { STATE_ID = 0xbe | EVENT = 0x6f | 0xdead0080 } - cluster-name: CLUSTER_SP_PS - context: 0 - 85508180 SP_PS_CNTL_0: { THREADSIZE = THREAD128 | VARYING | INOUTREGOVERLAP | PIXLODENABLE | MERGEDREGS | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 3 | BRANCHSTACK = 2 } + 85508180 SP_PS_CNTL_0: { THREADSIZE = THREAD128 | VARYING | INOUTREGOVERLAP | PIXLODENABLE | MERGEDREGS | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 3 | BRANCHSTACK = 4 } 00000000 SP_PS_BOOLEAN_CF_MASK: 0 00000000 SP_PS_PROGRAM_COUNTER_OFFSET: 0 10372c000 SP_PS_BASE: 0x10372c000 base=10372c000, offset=0, size=4096 @@ -8092,7 +8092,7 @@ WARNING: 64b discontinuity (no _LO dword for 890d) 00000000 0xaa30: 00000000 00000000 0xaa31: 00000000 - context: 1 - 85508180 SP_PS_CNTL_0: { THREADSIZE = THREAD128 | VARYING | INOUTREGOVERLAP | PIXLODENABLE | MERGEDREGS | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 3 | BRANCHSTACK = 2 } + 85508180 SP_PS_CNTL_0: { THREADSIZE = THREAD128 | VARYING | INOUTREGOVERLAP | PIXLODENABLE | MERGEDREGS | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 3 | BRANCHSTACK = 4 } 00000000 SP_PS_BOOLEAN_CF_MASK: 0 00000000 SP_PS_PROGRAM_COUNTER_OFFSET: 0 10372c000 SP_PS_BASE: 0x10372c000 base=10372c000, offset=0, size=4096 @@ -8926,7 +8926,7 @@ got cmdszdw=416 !+ c7400000 VFD_FETCH_INSTR[0].INSTR: { IDX = 0 | OFFSET = 0 | FORMAT = FMT6_32_32_32_FLOAT | SWAP = WZYX | UNK30 | FLOAT } !+ 00000001 VFD_FETCH_INSTR[0].STEP_RATE: 1 !+ 00000007 VFD_DEST_CNTL[0].INSTR: { WRITEMASK = 0x7 | REGID = r0.x } -!+ 00108280 SP_VS_CNTL_0: { MERGEDREGS | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | BRANCHSTACK = 2 } +!+ 00108280 SP_VS_CNTL_0: { MERGEDREGS | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 5 | BRANCHSTACK = 4 } !+ 00000002 SP_VS_OUTPUT_CNTL: { OUT = 2 } !+ 0f0e0312 SP_VS_OUTPUT[0].REG: { A_REGID = r4.z | A_COMPMASK = 0x3 | B_REGID = r3.z | B_COMPMASK = 0xf } !+ 00000200 SP_VS_VPC_DEST[0].REG: { OUTLOC0 = 0 | OUTLOC1 = 2 | OUTLOC2 = 0 | OUTLOC3 = 0 } @@ -9003,7 +9003,7 @@ got cmdszdw=416 + 00000000 SP_DS_CONFIG: { NTEX = 0 | NSAMP = 0 | NUAV = 0 } + 00000000 SP_GS_CNTL_1: 0 + 00000000 SP_GS_CONFIG: { NTEX = 0 | NSAMP = 0 | NUAV = 0 } -!+ 85508180 SP_PS_CNTL_0: { THREADSIZE = THREAD128 | VARYING | INOUTREGOVERLAP | PIXLODENABLE | MERGEDREGS | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 3 | BRANCHSTACK = 2 } +!+ 85508180 SP_PS_CNTL_0: { THREADSIZE = THREAD128 | VARYING | INOUTREGOVERLAP | PIXLODENABLE | MERGEDREGS | THREADMODE = MULTI | HALFREGFOOTPRINT = 0 | FULLREGFOOTPRINT = 3 | BRANCHSTACK = 4 } + 00000000 SP_PS_PROGRAM_COUNTER_OFFSET: 0 !+ 10372c000 SP_PS_BASE: 0x10372c000 base=10372c000, offset=0, size=4096 000000010372c000: 0000: 00002000 473080fc 0000000e 03820000 0000000d 02820000 0000b800 20488007