mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-01 20:30:12 +01:00
panfrost/midgard: Add ult/ule ops
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
This commit is contained in:
parent
f277bd3c22
commit
b8739c24ee
3 changed files with 7 additions and 0 deletions
|
|
@ -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,
|
||||
|
|
|
|||
|
|
@ -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",
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue