From: Eric Anholt Date: Wed, 12 Nov 2014 21:27:49 +0000 (-0800) Subject: gallium: Drop the unused RCC opcode. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=de2f8d75db3dad3089c96b65223e47ad3986a25c;p=mesa.git gallium: Drop the unused RCC opcode. Nothing in the tree generated it. Reviewed-by: Jose Fonseca --- diff --git a/src/gallium/auxiliary/gallivm/lp_bld_tgsi.c b/src/gallium/auxiliary/gallivm/lp_bld_tgsi.c index 51cb54ccee3..4a9ce37b9e4 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_tgsi.c +++ b/src/gallium/auxiliary/gallivm/lp_bld_tgsi.c @@ -207,7 +207,6 @@ lp_build_tgsi_inst_llvm( /* Ignore deprecated instructions */ switch (inst->Instruction.Opcode) { - case TGSI_OPCODE_RCC: case TGSI_OPCODE_UP2H: case TGSI_OPCODE_UP2US: case TGSI_OPCODE_UP4B: diff --git a/src/gallium/auxiliary/gallivm/lp_bld_tgsi_aos.c b/src/gallium/auxiliary/gallivm/lp_bld_tgsi_aos.c index 7829a7e9c54..3b9833a1033 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_tgsi_aos.c +++ b/src/gallium/auxiliary/gallivm/lp_bld_tgsi_aos.c @@ -679,11 +679,6 @@ lp_emit_instruction_aos( case TGSI_OPCODE_XPD: return FALSE; - case TGSI_OPCODE_RCC: - /* deprecated? */ - assert(0); - return FALSE; - case TGSI_OPCODE_DPH: return FALSE; diff --git a/src/gallium/auxiliary/tgsi/tgsi_exec.c b/src/gallium/auxiliary/tgsi/tgsi_exec.c index b9a4c7bf88c..b3ea82f6b76 100644 --- a/src/gallium/auxiliary/tgsi/tgsi_exec.c +++ b/src/gallium/auxiliary/tgsi/tgsi_exec.c @@ -910,22 +910,6 @@ micro_div( } } -static void -micro_rcc(union tgsi_exec_channel *dst, - const union tgsi_exec_channel *src) -{ - uint i; - - for (i = 0; i < 4; i++) { - float recip = 1.0f / src->f[i]; - - if (recip > 0.0f) - dst->f[i] = CLAMP(recip, 5.42101e-020f, 1.84467e+019f); - else - dst->f[i] = CLAMP(recip, -1.84467e+019f, -5.42101e-020f); - } -} - static void micro_lt( union tgsi_exec_channel *dst, @@ -3799,10 +3783,6 @@ exec_instruction( exec_vector_unary(mach, inst, micro_abs, TGSI_EXEC_DATA_FLOAT, TGSI_EXEC_DATA_FLOAT); break; - case TGSI_OPCODE_RCC: - exec_scalar_unary(mach, inst, micro_rcc, TGSI_EXEC_DATA_FLOAT, TGSI_EXEC_DATA_FLOAT); - break; - case TGSI_OPCODE_DPH: exec_dph(mach, inst); break; diff --git a/src/gallium/auxiliary/tgsi/tgsi_info.c b/src/gallium/auxiliary/tgsi/tgsi_info.c index 6336304d594..d17426f7222 100644 --- a/src/gallium/auxiliary/tgsi/tgsi_info.c +++ b/src/gallium/auxiliary/tgsi/tgsi_info.c @@ -71,7 +71,7 @@ static const struct tgsi_opcode_info opcode_info[TGSI_OPCODE_LAST] = { 1, 2, 0, 0, 0, 0, COMP, "XPD", TGSI_OPCODE_XPD }, { 0, 0, 0, 0, 0, 0, NONE, "", 32 }, /* removed */ { 1, 1, 0, 0, 0, 0, COMP, "ABS", TGSI_OPCODE_ABS }, - { 1, 1, 0, 0, 0, 0, REPL, "RCC", TGSI_OPCODE_RCC }, + { 0, 0, 0, 0, 0, 0, NONE, "", 34 }, /* removed */ { 1, 2, 0, 0, 0, 0, REPL, "DPH", TGSI_OPCODE_DPH }, { 1, 1, 0, 0, 0, 0, REPL, "COS", TGSI_OPCODE_COS }, { 1, 1, 0, 0, 0, 0, COMP, "DDX", TGSI_OPCODE_DDX }, diff --git a/src/gallium/auxiliary/tgsi/tgsi_opcode_tmp.h b/src/gallium/auxiliary/tgsi/tgsi_opcode_tmp.h index 56a7a972c92..33cf38b61e8 100644 --- a/src/gallium/auxiliary/tgsi/tgsi_opcode_tmp.h +++ b/src/gallium/auxiliary/tgsi/tgsi_opcode_tmp.h @@ -87,7 +87,6 @@ OP11(LG2) OP12(POW) OP12(XPD) OP11(ABS) -OP11(RCC) OP12(DPH) OP11(COS) OP11(DDX) diff --git a/src/gallium/auxiliary/tgsi/tgsi_util.c b/src/gallium/auxiliary/tgsi/tgsi_util.c index e1cba95c264..66cb1674840 100644 --- a/src/gallium/auxiliary/tgsi/tgsi_util.c +++ b/src/gallium/auxiliary/tgsi/tgsi_util.c @@ -253,7 +253,6 @@ tgsi_util_get_inst_usage_mask(const struct tgsi_full_instruction *inst, case TGSI_OPCODE_EX2: case TGSI_OPCODE_LG2: - case TGSI_OPCODE_RCC: read_mask = TGSI_WRITEMASK_X; break; diff --git a/src/gallium/docs/source/tgsi.rst b/src/gallium/docs/source/tgsi.rst index 49de4ca9172..c912ec544d7 100644 --- a/src/gallium/docs/source/tgsi.rst +++ b/src/gallium/docs/source/tgsi.rst @@ -404,17 +404,6 @@ This instruction replicates its result. dst.w = |src.w| -.. opcode:: RCC - Reciprocal Clamped - -This instruction replicates its result. - -XXX cleanup on aisle three - -.. math:: - - dst = (1 / src.x) > 0 ? clamp(1 / src.x, 5.42101e-020, 1.84467e+019) : clamp(1 / src.x, -1.84467e+019, -5.42101e-020) - - .. opcode:: DPH - Homogeneous Dot Product This instruction replicates its result. diff --git a/src/gallium/drivers/ilo/shader/toy_tgsi.c b/src/gallium/drivers/ilo/shader/toy_tgsi.c index 8cbb47ec264..1bf9f21f915 100644 --- a/src/gallium/drivers/ilo/shader/toy_tgsi.c +++ b/src/gallium/drivers/ilo/shader/toy_tgsi.c @@ -829,7 +829,6 @@ static const toy_tgsi_translate aos_translate_table[TGSI_OPCODE_LAST] = { [TGSI_OPCODE_POW] = aos_simple, [TGSI_OPCODE_XPD] = aos_XPD, [TGSI_OPCODE_ABS] = aos_simple, - [TGSI_OPCODE_RCC] = aos_unsupported, [TGSI_OPCODE_DPH] = aos_simple, [TGSI_OPCODE_COS] = aos_simple, [TGSI_OPCODE_DDX] = aos_unsupported, @@ -1380,7 +1379,6 @@ static const toy_tgsi_translate soa_translate_table[TGSI_OPCODE_LAST] = { [TGSI_OPCODE_POW] = soa_scalar_replicate, [TGSI_OPCODE_XPD] = soa_XPD, [TGSI_OPCODE_ABS] = soa_per_channel, - [TGSI_OPCODE_RCC] = soa_unsupported, [TGSI_OPCODE_DPH] = soa_dot_product, [TGSI_OPCODE_COS] = soa_scalar_replicate, [TGSI_OPCODE_DDX] = soa_partial_derivative, diff --git a/src/gallium/drivers/r300/r300_tgsi_to_rc.c b/src/gallium/drivers/r300/r300_tgsi_to_rc.c index c08818eb19b..f371713b3fc 100644 --- a/src/gallium/drivers/r300/r300_tgsi_to_rc.c +++ b/src/gallium/drivers/r300/r300_tgsi_to_rc.c @@ -62,7 +62,6 @@ static unsigned translate_opcode(unsigned opcode) case TGSI_OPCODE_POW: return RC_OPCODE_POW; case TGSI_OPCODE_XPD: return RC_OPCODE_XPD; case TGSI_OPCODE_ABS: return RC_OPCODE_ABS; - /* case TGSI_OPCODE_RCC: return RC_OPCODE_RCC; */ case TGSI_OPCODE_DPH: return RC_OPCODE_DPH; case TGSI_OPCODE_COS: return RC_OPCODE_COS; case TGSI_OPCODE_DDX: return RC_OPCODE_DDX; diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c index 10a5ca0b1ae..ac7095f4de4 100644 --- a/src/gallium/drivers/r600/r600_shader.c +++ b/src/gallium/drivers/r600/r600_shader.c @@ -7222,7 +7222,7 @@ static struct r600_shader_tgsi_instruction r600_shader_tgsi_instruction[] = { {TGSI_OPCODE_XPD, 0, ALU_OP0_NOP, tgsi_xpd}, {32, 0, ALU_OP0_NOP, tgsi_unsupported}, {TGSI_OPCODE_ABS, 0, ALU_OP1_MOV, tgsi_op2}, - {TGSI_OPCODE_RCC, 0, ALU_OP0_NOP, tgsi_unsupported}, + {34, 0, ALU_OP0_NOP, tgsi_unsupported}, {TGSI_OPCODE_DPH, 0, ALU_OP2_DOT4, tgsi_dp}, {TGSI_OPCODE_COS, 0, ALU_OP1_COS, tgsi_trig}, {TGSI_OPCODE_DDX, 0, FETCH_OP_GET_GRADIENTS_H, tgsi_tex}, @@ -7421,7 +7421,7 @@ static struct r600_shader_tgsi_instruction eg_shader_tgsi_instruction[] = { {TGSI_OPCODE_XPD, 0, ALU_OP0_NOP, tgsi_xpd}, {32, 0, ALU_OP0_NOP, tgsi_unsupported}, {TGSI_OPCODE_ABS, 0, ALU_OP1_MOV, tgsi_op2}, - {TGSI_OPCODE_RCC, 0, ALU_OP0_NOP, tgsi_unsupported}, + {34, 0, ALU_OP0_NOP, tgsi_unsupported}, {TGSI_OPCODE_DPH, 0, ALU_OP2_DOT4, tgsi_dp}, {TGSI_OPCODE_COS, 0, ALU_OP1_COS, tgsi_trig}, {TGSI_OPCODE_DDX, 0, FETCH_OP_GET_GRADIENTS_H, tgsi_tex}, @@ -7620,7 +7620,7 @@ static struct r600_shader_tgsi_instruction cm_shader_tgsi_instruction[] = { {TGSI_OPCODE_XPD, 0, ALU_OP0_NOP, tgsi_xpd}, {32, 0, ALU_OP0_NOP, tgsi_unsupported}, {TGSI_OPCODE_ABS, 0, ALU_OP1_MOV, tgsi_op2}, - {TGSI_OPCODE_RCC, 0, ALU_OP0_NOP, tgsi_unsupported}, + {34, 0, ALU_OP0_NOP, tgsi_unsupported}, {TGSI_OPCODE_DPH, 0, ALU_OP2_DOT4, tgsi_dp}, {TGSI_OPCODE_COS, 0, ALU_OP1_COS, cayman_trig}, {TGSI_OPCODE_DDX, 0, FETCH_OP_GET_GRADIENTS_H, tgsi_tex}, diff --git a/src/gallium/include/pipe/p_shader_tokens.h b/src/gallium/include/pipe/p_shader_tokens.h index ba10576d77d..b1e7b10435a 100644 --- a/src/gallium/include/pipe/p_shader_tokens.h +++ b/src/gallium/include/pipe/p_shader_tokens.h @@ -317,7 +317,7 @@ struct tgsi_property_data { #define TGSI_OPCODE_XPD 31 /* gap */ #define TGSI_OPCODE_ABS 33 -#define TGSI_OPCODE_RCC 34 + /* gap */ #define TGSI_OPCODE_DPH 35 #define TGSI_OPCODE_COS 36 #define TGSI_OPCODE_DDX 37