diff options
author | Alyssa Rosenzweig <[email protected]> | 2019-04-30 23:19:41 +0000 |
---|---|---|
committer | Alyssa Rosenzweig <[email protected]> | 2019-05-04 19:08:50 +0000 |
commit | b6b534c73366eff8570c15183ed617575295f4b7 (patch) | |
tree | 65779204cc0bd89c109e22fa0f266d0e58edde0c | |
parent | 8c36ecd4b1daec66435d6d0baef0e64cd80b46c1 (diff) |
panfrost/midgard/disasm: Stub out 64-bit
Signed-off-by: Alyssa Rosenzweig <[email protected]>
-rw-r--r-- | src/gallium/drivers/panfrost/midgard/disassemble.c | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/src/gallium/drivers/panfrost/midgard/disassemble.c b/src/gallium/drivers/panfrost/midgard/disassemble.c index 9469cac6e75..8466a90b8d6 100644 --- a/src/gallium/drivers/panfrost/midgard/disassemble.c +++ b/src/gallium/drivers/panfrost/midgard/disassemble.c @@ -75,6 +75,8 @@ prefix_for_bits(unsigned bits) return 'q'; case 16: return 'h'; + case 64: + return 'd'; default: return 0; } @@ -219,7 +221,19 @@ print_vector_src(unsigned src_binary, bool out_high, print_reg(reg, 32); } } else if (mode == midgard_reg_mode_64) { - /* TODO */ + if (src->rep_high) + printf(" /* rep_high */ "); + + if (src->rep_low) + printf(" /* rep_low */ "); + + if (src->half) + printf(" /* half */ "); + + if (out_high) + printf(" /* out_high */ "); + + print_reg(reg, 64); } //swizzle @@ -268,10 +282,6 @@ print_vector_field(const char *name, uint16_t *words, uint16_t reg_word, midgard_vector_alu *alu_field = (midgard_vector_alu *) words; midgard_reg_mode mode = alu_field->reg_mode; - if (mode == midgard_reg_mode_64) { - printf("unknown reg mode %u\n", alu_field->reg_mode); - } - /* For now, prefix instruction names with their unit, until we * understand how this works on a deeper level */ printf("%s.", name); |