Mesa (master): broadcom/vc5: On QPU pack error, dump the instruction and return cleanly.
Eric Anholt
anholt at kemper.freedesktop.org
Mon Mar 19 23:45:03 UTC 2018
Module: Mesa
Branch: master
Commit: 34dc64f6274db73851b0f1e5f0440a9785cafd6c
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=34dc64f6274db73851b0f1e5f0440a9785cafd6c
Author: Eric Anholt <eric at anholt.net>
Date: Wed Mar 14 14:39:51 2018 -0700
broadcom/vc5: On QPU pack error, dump the instruction and return cleanly.
This is nice for debugging when you've made a bad instruction.
---
src/broadcom/compiler/vir_to_qpu.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/src/broadcom/compiler/vir_to_qpu.c b/src/broadcom/compiler/vir_to_qpu.c
index 568a004803..83b1936cbd 100644
--- a/src/broadcom/compiler/vir_to_qpu.c
+++ b/src/broadcom/compiler/vir_to_qpu.c
@@ -388,7 +388,13 @@ v3d_vir_to_qpu(struct v3d_compile *c, struct qpu_reg *temp_registers)
vir_for_each_inst_inorder(inst, c) {
bool ok = v3d_qpu_instr_pack(c->devinfo, &inst->qpu,
&c->qpu_insts[i++]);
- assert(ok); (void) ok;
+ if (!ok) {
+ fprintf(stderr, "Failed to pack instruction:\n");
+ vir_dump_inst(c, inst);
+ fprintf(stderr, "\n");
+ c->failed = true;
+ return;
+ }
}
assert(i == c->qpu_inst_count);
More information about the mesa-commit
mailing list