diff options
author | Alyssa Rosenzweig <[email protected]> | 2019-11-06 21:49:35 -0500 |
---|---|---|
committer | Tomeu Vizoso <[email protected]> | 2019-11-11 15:23:44 +0000 |
commit | 5885b64e428ca1d5e6870a6fc5a3d14e57da878b (patch) | |
tree | 00fc5b9c957fcbe66a5828eb650d2bbff24fbc91 | |
parent | 03f73c7fc6666c904ec0ad07c6aaaf175bc41291 (diff) |
pan/midgard: Identify ld_color_buffer_u8_as_fp16*
There are two versions of this opcode, depending what version of the ISA
you're using. I'm not sure if there's a semantic difference; I think
there might be some slight subtleties but it's too early to know at this
stage.
Signed-off-by: Alyssa Rosenzweig <[email protected]>
Reviewed-by: Tomeu Vizoso <[email protected]>
-rw-r--r-- | src/panfrost/midgard/midgard.h | 6 | ||||
-rw-r--r-- | src/panfrost/midgard/midgard_ops.c | 3 |
2 files changed, 7 insertions, 2 deletions
diff --git a/src/panfrost/midgard/midgard.h b/src/panfrost/midgard/midgard.h index 2093f953477..ea026621db3 100644 --- a/src/panfrost/midgard/midgard.h +++ b/src/panfrost/midgard/midgard.h @@ -448,7 +448,9 @@ typedef enum { midgard_op_ld_vary_16 = 0x99, midgard_op_ld_vary_32u = 0x9A, midgard_op_ld_vary_32i = 0x9B, - midgard_op_ld_color_buffer_16 = 0x9D, + + /* Old version of midgard_op_ld_color_buffer_u8_as_fp16, for T720 */ + midgard_op_ld_color_buffer_u8_as_fp16_old = 0x9D, /* The distinction between these ops is the alignment requirement / * accompanying shift. Thus, the offset to ld_ubo_int4 is in 16-byte @@ -464,6 +466,8 @@ typedef enum { midgard_op_ld_ubo_short4 = 0xAC, midgard_op_ld_ubo_int4 = 0xB0, + /* New-style blending ops. Works on T760/T860 */ + midgard_op_ld_color_buffer_u8_as_fp16 = 0xB9, midgard_op_ld_color_buffer_8 = 0xBA, midgard_op_st_char = 0xC0, diff --git a/src/panfrost/midgard/midgard_ops.c b/src/panfrost/midgard/midgard_ops.c index d4a74dc0fb4..14c74f7433c 100644 --- a/src/panfrost/midgard/midgard_ops.c +++ b/src/panfrost/midgard/midgard_ops.c @@ -223,7 +223,8 @@ struct mir_ldst_op_props load_store_opcode_props[256] = { [midgard_op_ld_vary_32u] = {"ld_vary_32u", M32}, [midgard_op_ld_color_buffer_8] = {"ld_color_buffer_8", M8 | LDST_SPECIAL_MASK}, - [midgard_op_ld_color_buffer_16] = {"ld_color_buffer_16", 0}, + [midgard_op_ld_color_buffer_u8_as_fp16] = {"ld_color_buffer_u8_as_fp16", M16 | LDST_SPECIAL_MASK}, + [midgard_op_ld_color_buffer_u8_as_fp16_old] = {"ld_color_buffer_u8_as_fp16_old", M16 | LDST_SPECIAL_MASK}, [midgard_op_ld_ubo_char] = {"ld_ubo_char", M32}, [midgard_op_ld_ubo_char2] = {"ld_ubo_char2", M16}, |