diff options
author | Sonny Jiang <[email protected]> | 2018-06-07 12:13:51 -0400 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2018-06-07 23:26:36 -0400 |
commit | 06b47005d327c311f358ac34c22a1e3ffc3ca11f (patch) | |
tree | 7c823c3db2a96ea7990cabe67b2899698df99e8b | |
parent | a1b4b00ce2b8db38ab56eff97a9f7417c68ba5c1 (diff) |
radeonsi: emit_msaa_sample_locs packets optimization
Remembering latest states of registers to eliminate redunant SET_CONTEXT_REG packets
Signed-off-by: Sonny Jiang <[email protected]>
Signed-off-by: Marek Olšák <[email protected]>
-rw-r--r-- | src/gallium/drivers/radeonsi/si_state.c | 6 | ||||
-rw-r--r-- | src/gallium/drivers/radeonsi/si_state.h | 2 |
2 files changed, 6 insertions, 2 deletions
diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c index 5f3ab45f42f..199d7408d79 100644 --- a/src/gallium/drivers/radeonsi/si_state.c +++ b/src/gallium/drivers/radeonsi/si_state.c @@ -3250,8 +3250,10 @@ static void si_emit_msaa_sample_locs(struct si_context *sctx) rs && !rs->multisample_enable) small_prim_filter_cntl &= C_028830_SMALL_PRIM_FILTER_ENABLE; - radeon_set_context_reg(cs, R_028830_PA_SU_SMALL_PRIM_FILTER_CNTL, - small_prim_filter_cntl); + radeon_opt_set_context_reg(sctx, + R_028830_PA_SU_SMALL_PRIM_FILTER_CNTL, + SI_TRACKED_PA_SU_SMALL_PRIM_FILTER_CNTL, + small_prim_filter_cntl); } } diff --git a/src/gallium/drivers/radeonsi/si_state.h b/src/gallium/drivers/radeonsi/si_state.h index a5af7de2274..5ff4f5714f3 100644 --- a/src/gallium/drivers/radeonsi/si_state.h +++ b/src/gallium/drivers/radeonsi/si_state.h @@ -227,6 +227,8 @@ enum si_tracked_reg { SI_TRACKED_DB_EQAA, SI_TRACKED_PA_SC_MODE_CNTL_1, + SI_TRACKED_PA_SU_SMALL_PRIM_FILTER_CNTL, + SI_NUM_TRACKED_REGS, }; |