Skip to content

freedreno/ir3: const_state rework

Rob Clark requested to merge robclark/mesa:wip/const-state-rework into master

On top of @cwabbott0's !5500 (merged), with one small fixup for something that looks like an unintentional leftover. This moves const_state back to ir3_shader_variant, but makes the binning and draw pass VS share the same const_state. This lets use share the same const emit between binning and draw passes (which was the original motivation for having const_state in ir3_shader), but prepares for some upcoming changes:

  1. shader variants that have smaller constlen, to handle the case where no individual shader goes over a limit, but the combination of shader stages does
  2. shader-cache, where we'll need to serialize the const_state and immediates alongside with the rest of the variant.

Merge request reports