Skip to content

panfrost: Try demoting uniforms instead of spilling to TLS

Icecream95 requested to merge icecream95/mesa:demote into master
mir_estimate_pressure often underestimates the register pressure,
letting too many registers be used for uniforms, causing RA to fail.

Mitigate this by demoting some uniforms back to explicit loads to free
up work registers if register allocation fails.

The pressure heuristic in mir_work_heuristic could probably now be increased somewhat, as promoting too many uniforms isn't such a problem any more.

Uniforms are demoted four at a time to decrease compile time.

Merge request reports