Mesa (master): panfrost/midgard: Add ult/ule ops

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Mar 26 23:37:32 UTC 2019


Module: Mesa
Branch: master
Commit: b8739c24ee2fdccc60e4e18357eb9e63ae2b8183
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b8739c24ee2fdccc60e4e18357eb9e63ae2b8183

Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Tue Mar 26 04:00:33 2019 +0000

panfrost/midgard: Add ult/ule ops

Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

---

 src/gallium/drivers/panfrost/midgard/helpers.h         | 2 ++
 src/gallium/drivers/panfrost/midgard/midgard.h         | 4 ++++
 src/gallium/drivers/panfrost/midgard/midgard_compile.c | 1 +
 3 files changed, 7 insertions(+)

diff --git a/src/gallium/drivers/panfrost/midgard/helpers.h b/src/gallium/drivers/panfrost/midgard/helpers.h
index 01c88ed0fcf..0d553d87917 100644
--- a/src/gallium/drivers/panfrost/midgard/helpers.h
+++ b/src/gallium/drivers/panfrost/midgard/helpers.h
@@ -223,6 +223,8 @@ static unsigned alu_opcode_props[256] = {
         [midgard_alu_op_ine]		 = UNITS_MOST,
         [midgard_alu_op_ilt]		 = UNITS_MOST,
         [midgard_alu_op_ile]		 = UNITS_MOST,
+        [midgard_alu_op_ule]		 = UNITS_MOST,
+        [midgard_alu_op_ult]		 = UNITS_MOST,
 
         [midgard_alu_op_icsel]		 = UNITS_ADD,
         [midgard_alu_op_fcsel_i]	 = UNITS_ADD,
diff --git a/src/gallium/drivers/panfrost/midgard/midgard.h b/src/gallium/drivers/panfrost/midgard/midgard.h
index c40c94bc378..eab7cb5eec0 100644
--- a/src/gallium/drivers/panfrost/midgard/midgard.h
+++ b/src/gallium/drivers/panfrost/midgard/midgard.h
@@ -103,6 +103,8 @@ typedef enum {
 
         midgard_alu_op_ieq        = 0xA0,
         midgard_alu_op_ine        = 0xA1,
+        midgard_alu_op_ult        = 0xA2,
+        midgard_alu_op_ule        = 0xA3,
         midgard_alu_op_ilt        = 0xA4,
         midgard_alu_op_ile        = 0xA5,
         midgard_alu_op_iball_eq   = 0xA8,
@@ -470,6 +472,8 @@ static char *alu_opcode_names[256] = {
         [midgard_alu_op_f2u8]       = "f2u8",
         [midgard_alu_op_ieq]        = "ieq",
         [midgard_alu_op_ine]        = "ine",
+        [midgard_alu_op_ult]        = "ult",
+        [midgard_alu_op_ule]        = "ule",
         [midgard_alu_op_ilt]        = "ilt",
         [midgard_alu_op_ile]        = "ile",
         [midgard_alu_op_iball_eq]   = "iball_eq",
diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c b/src/gallium/drivers/panfrost/midgard/midgard_compile.c
index dac5eeb2c1b..0c7bc28f00a 100644
--- a/src/gallium/drivers/panfrost/midgard/midgard_compile.c
+++ b/src/gallium/drivers/panfrost/midgard/midgard_compile.c
@@ -991,6 +991,7 @@ emit_alu(compiler_context *ctx, nir_alu_instr *instr)
                 ALU_CASE(ieq32, ieq);
                 ALU_CASE(ine32, ine);
                 ALU_CASE(ilt32, ilt);
+                ALU_CASE(ult32, ult);
 
                 /* We don't have a native b2f32 instruction. Instead, like many
                  * GPUs, we exploit booleans as 0/~0 for false/true, and




More information about the mesa-commit mailing list