diff options
author | Rafael Antognolli <[email protected]> | 2018-06-11 11:29:14 -0700 |
---|---|---|
committer | Rafael Antognolli <[email protected]> | 2019-12-04 20:48:25 +0000 |
commit | 9db044792f609867654a016321f80511ce5f9bf6 (patch) | |
tree | 16b63e05700a1e624e579b6c4abe2211a151efbe /src/intel/blorp | |
parent | 8983622995804aa5279647fc5bea75d0ca3b4612 (diff) |
intel/blorp: Use 3DSTATE_CONSTANT_ALL to setup push constants.
In blorp, all the push constants are disabled, so we only need to emit a
single 3DSTATE_CONSTANT_ALL with the bitmask for stage update
appropriately set.
v2: Update comment (Caio).
Reviewed-by: Caio Marcelo de Oliveira Filho <[email protected]>
Diffstat (limited to 'src/intel/blorp')
-rw-r--r-- | src/intel/blorp/blorp_genX_exec.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/intel/blorp/blorp_genX_exec.h b/src/intel/blorp/blorp_genX_exec.h index 9f75efe012d..67b345cbf0b 100644 --- a/src/intel/blorp/blorp_genX_exec.h +++ b/src/intel/blorp/blorp_genX_exec.h @@ -1252,6 +1252,12 @@ blorp_emit_pipeline(struct blorp_batch *batch, (void)depth_stencil_state_offset; #endif +#if GEN_GEN >= 12 + blorp_emit(batch, GENX(3DSTATE_CONSTANT_ALL), pc) { + /* Update empty push constants for all stages (bitmask = 11111b) */ + pc.ShaderUpdateEnable = 0x1f; + } +#else blorp_emit(batch, GENX(3DSTATE_CONSTANT_VS), vs); #if GEN_GEN >= 7 blorp_emit(batch, GENX(3DSTATE_CONSTANT_HS), hs); @@ -1259,6 +1265,7 @@ blorp_emit_pipeline(struct blorp_batch *batch, #endif blorp_emit(batch, GENX(3DSTATE_CONSTANT_GS), gs); blorp_emit(batch, GENX(3DSTATE_CONSTANT_PS), ps); +#endif if (params->src.enabled) blorp_emit_sampler_state(batch); |