nir: Print divergence status of SSA values if analysis was ever run.

After running divergence analysis, we include "div" or "con" for each
SSA def's divergence/convergence status:

	vec1 32 div ssa_35 = fddy ssa_34
	vec1 32 con ssa_36 = fddy ssa_6.x

We omit this before the first time divergence analysis has been run.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15445>
This commit is contained in:
Kenneth Graunke
2020-09-09 21:08:49 -07:00
parent 09a37ad046
commit 85d30846db
3 changed files with 12 additions and 2 deletions

View File

@@ -993,6 +993,8 @@ visit_cf_list(struct exec_list *list, struct divergence_state *state)
void
nir_divergence_analysis(nir_shader *shader)
{
shader->info.divergence_analysis_run = true;
struct divergence_state state = {
.stage = shader->info.stage,
.shader = shader,