projects
/
mesa.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
pan/midgard: Index blocks for printing
[mesa.git]
/
src
/
panfrost
/
midgard
/
midgard_compile.c
diff --git
a/src/panfrost/midgard/midgard_compile.c
b/src/panfrost/midgard/midgard_compile.c
index f08f60fc32809cb4abac4c3aa268d437d3516b33..67c5c8482144aa0c767538caafff6ebd38c98270 100644
(file)
--- a/
src/panfrost/midgard/midgard_compile.c
+++ b/
src/panfrost/midgard/midgard_compile.c
@@
-2264,6
+2264,8
@@
create_empty_block(compiler_context *ctx)
_mesa_hash_pointer,
_mesa_key_pointer_equal);
_mesa_hash_pointer,
_mesa_key_pointer_equal);
+ blk->source_id = ctx->block_source_count++;
+
return blk;
}
return blk;
}
@@
-2575,7
+2577,15
@@
midgard_compile_shader_nir(struct midgard_screen *screen, nir_shader *nir, midga
ctx->func = func;
emit_cf_list(ctx, &func->impl->body);
ctx->func = func;
emit_cf_list(ctx, &func->impl->body);
- emit_block(ctx, func->impl->end_block);
+
+ /* Emit empty exit block with successor */
+
+ struct midgard_block *semi_end = ctx->current_block;
+
+ struct midgard_block *end =
+ emit_block(ctx, func->impl->end_block);
+
+ midgard_block_add_successor(semi_end, end);
break; /* TODO: Multi-function shaders */
}
break; /* TODO: Multi-function shaders */
}