Struct fields might span several dwords, but iter_dword is incremented up to the last dword of the current field before we print out the struct's fields. We can't use iter_dword for computing the offset into the pointer of data to decode.
Signed-off-by: Lionel Landwerlin <lionel.g.landwer...@intel.com> --- src/intel/common/gen_decoder.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/intel/common/gen_decoder.c b/src/intel/common/gen_decoder.c index 93fa4864ee3..a0a9634c5d9 100644 --- a/src/intel/common/gen_decoder.c +++ b/src/intel/common/gen_decoder.c @@ -1064,7 +1064,7 @@ gen_print_group(FILE *outfile, struct gen_group *group, uint64_t offset, if (iter.struct_desc) { uint64_t struct_offset = offset + 4 * iter_dword; gen_print_group(outfile, iter.struct_desc, struct_offset, - &p[iter_dword], iter.start_bit % 32, color); + &p[iter.start_bit / 32], iter.start_bit % 32, color); } } } -- 2.17.0 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev