diff options
author | Alyssa Rosenzweig <[email protected]> | 2019-12-23 12:24:03 -0500 |
---|---|---|
committer | Alyssa Rosenzweig <[email protected]> | 2019-12-24 16:55:46 +0000 |
commit | a8beef332dbde0bb37d68bd2a53a00f9ad0c178d (patch) | |
tree | 24d25402617091903963f46a30acdab2fb1c2513 /src/panfrost/midgard/disassemble.c | |
parent | 0cc6e33537a51cba97e5b51d11161b7438c562dc (diff) |
pan/midgard: Fix disassembler cycle/quadword counting
Due to the succeeding break we would fall into some off-by-one errors.
These should be resolved now.
Signed-off-by: Alyssa Rosenzweig <[email protected]>
Diffstat (limited to 'src/panfrost/midgard/disassemble.c')
-rw-r--r-- | src/panfrost/midgard/disassemble.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/panfrost/midgard/disassemble.c b/src/panfrost/midgard/disassemble.c index 0b4dc72be9f..cfce1110318 100644 --- a/src/panfrost/midgard/disassemble.c +++ b/src/panfrost/midgard/disassemble.c @@ -1543,6 +1543,12 @@ disassemble_midgard(uint8_t *code, size_t size, unsigned gpu_id, gl_shader_stage break; } + /* We are parsing per bundle anyway. Add before we start + * breaking out so we don't miss the final bundle. */ + + midg_stats.bundle_count++; + midg_stats.quadword_count += num_quad_words; + if (prefetch_flag && midgard_word_types[tag] == midgard_word_type_alu) break; @@ -1550,10 +1556,6 @@ disassemble_midgard(uint8_t *code, size_t size, unsigned gpu_id, gl_shader_stage unsigned next = (words[i] & 0xF0) >> 4; - /* We are parsing per bundle anyway */ - midg_stats.bundle_count++; - midg_stats.quadword_count += num_quad_words; - /* Break based on instruction prefetch flag */ if (i < num_words && next == 1) { |