panfrost: Blend and preload fixes

Merged Icecream95 requested to merge icecream95/mesa:blend-fix into main
  • Fix blend constant handling when the PAN_BLEND_SHADER_MAX_VARIANTS limit is hit
  • Fix crashes with combined stencil for debug builds
  • Avoid preloading stencil when it is known to be a constant value

I'm not sure that just increasing PAN_BLEND_SHADER_MAX_VARIANTS is the best thing to do. The "Colors" page of systemsettings5 uses 32 different variants on my system, but when more themes are installed this will be greater.

At this size, the overhead of searching the linked list may start to become significant if lookups are required often. Maybe other data structures should be considered, but I'm not convinced that the problem is big enough to warrant that.

Merge request reports