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

Author: Pavel Ondračka <pavel.ondra...@gmail.com>
Date:   Sat Dec 16 17:00:55 2023 +0100

r300: remove backend LRP lowering

Reviewed-by: Filip Gawin <filip.ga...@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26816>

---

 src/gallium/drivers/r300/compiler/radeon_opcodes.c     |  7 -------
 src/gallium/drivers/r300/compiler/radeon_opcodes.h     |  3 ---
 src/gallium/drivers/r300/compiler/radeon_program_alu.c | 17 -----------------
 src/gallium/drivers/r300/r300_tgsi_to_rc.c             |  1 -
 4 files changed, 28 deletions(-)

diff --git a/src/gallium/drivers/r300/compiler/radeon_opcodes.c 
b/src/gallium/drivers/r300/compiler/radeon_opcodes.c
index 01f01aa8696..541d8829cb5 100644
--- a/src/gallium/drivers/r300/compiler/radeon_opcodes.c
+++ b/src/gallium/drivers/r300/compiler/radeon_opcodes.c
@@ -163,13 +163,6 @@ const struct rc_opcode_info rc_opcodes[MAX_RC_OPCODE] = {
                .NumSrcRegs = 1,
                .HasDstReg = 1
        },
-       {
-               .Opcode = RC_OPCODE_LRP,
-               .Name = "LRP",
-               .NumSrcRegs = 3,
-               .HasDstReg = 1,
-               .IsComponentwise = 1
-       },
        {
                .Opcode = RC_OPCODE_MAD,
                .Name = "MAD",
diff --git a/src/gallium/drivers/r300/compiler/radeon_opcodes.h 
b/src/gallium/drivers/r300/compiler/radeon_opcodes.h
index 19a9ff280bc..9a772d7147a 100644
--- a/src/gallium/drivers/r300/compiler/radeon_opcodes.h
+++ b/src/gallium/drivers/r300/compiler/radeon_opcodes.h
@@ -98,9 +98,6 @@ typedef enum {
        /** special instruction, see ARB_vertex_program */
        RC_OPCODE_LOG,
 
-       /** vec4 instruction: dst.c = src0.c*src1.c + (1 - src0.c)*src2.c */
-       RC_OPCODE_LRP,
-
        /** vec4 instruction: dst.c = src0.c*src1.c + src2.c */
        RC_OPCODE_MAD,
 
diff --git a/src/gallium/drivers/r300/compiler/radeon_program_alu.c 
b/src/gallium/drivers/r300/compiler/radeon_program_alu.c
index c809ff01c74..e0a8932e751 100644
--- a/src/gallium/drivers/r300/compiler/radeon_program_alu.c
+++ b/src/gallium/drivers/r300/compiler/radeon_program_alu.c
@@ -212,21 +212,6 @@ static void transform_DP2(struct radeon_compiler* c,
        rc_remove_instruction(inst);
 }
 
-static void transform_LRP(struct radeon_compiler* c,
-       struct rc_instruction* inst)
-{
-       struct rc_dst_register dst = new_dst_reg(c, inst);
-
-       emit3(c, inst->Prev, RC_OPCODE_MAD, NULL,
-               dst,
-               negate(inst->U.I.SrcReg[0]), inst->U.I.SrcReg[2], 
inst->U.I.SrcReg[2]);
-       emit3(c, inst->Prev, RC_OPCODE_MAD, &inst->U.I,
-               inst->U.I.DstReg,
-               inst->U.I.SrcReg[0], inst->U.I.SrcReg[1], 
srcreg(RC_FILE_TEMPORARY, dst.Index));
-
-       rc_remove_instruction(inst);
-}
-
 static void transform_RSQ(struct radeon_compiler* c,
        struct rc_instruction* inst)
 {
@@ -341,7 +326,6 @@ int radeonTransformALU(
        switch(inst->U.I.Opcode) {
        case RC_OPCODE_DP2: transform_DP2(c, inst); return 1;
        case RC_OPCODE_KILP: transform_KILP(c, inst); return 1;
-       case RC_OPCODE_LRP: transform_LRP(c, inst); return 1;
        case RC_OPCODE_RSQ: transform_RSQ(c, inst); return 1;
        case RC_OPCODE_SEQ: transform_SEQ(c, inst); return 1;
        case RC_OPCODE_SGE: transform_SGE(c, inst); return 1;
@@ -499,7 +483,6 @@ int r300_transform_vertex_alu(
        case RC_OPCODE_DP2: transform_r300_vertex_DP2(c, inst); return 1;
        case RC_OPCODE_DP3: transform_r300_vertex_DP3(c, inst); return 1;
        case RC_OPCODE_LIT: transform_r300_vertex_fix_LIT(c, inst); return 1;
-       case RC_OPCODE_LRP: transform_LRP(c, inst); return 1;
        case RC_OPCODE_SEQ:
                if (!c->is_r500) {
                        transform_r300_vertex_SEQ(c, inst);
diff --git a/src/gallium/drivers/r300/r300_tgsi_to_rc.c 
b/src/gallium/drivers/r300/r300_tgsi_to_rc.c
index afe809e05a2..fd4ebb8e640 100644
--- a/src/gallium/drivers/r300/r300_tgsi_to_rc.c
+++ b/src/gallium/drivers/r300/r300_tgsi_to_rc.c
@@ -52,7 +52,6 @@ static unsigned translate_opcode(unsigned opcode)
         case TGSI_OPCODE_SLT: return RC_OPCODE_SLT;
         case TGSI_OPCODE_SGE: return RC_OPCODE_SGE;
         case TGSI_OPCODE_MAD: return RC_OPCODE_MAD;
-        case TGSI_OPCODE_LRP: return RC_OPCODE_LRP;
         case TGSI_OPCODE_FRC: return RC_OPCODE_FRC;
         case TGSI_OPCODE_ROUND: return RC_OPCODE_ROUND;
         case TGSI_OPCODE_EX2: return RC_OPCODE_EX2;

Reply via email to