diff options
author | Michal Krol <michal@vmware.com> | 2010-03-02 12:16:54 +0100 |
---|---|---|
committer | Michal Krol <michal@vmware.com> | 2010-03-02 12:16:54 +0100 |
commit | 0d87cea21c55fdec57a55965a9d468bfb688bdad (patch) | |
tree | aa6c3a44885c3a299d46baf855919611cce738a2 | |
parent | 99be17a85522f252ad004612c863ab28e4e7bd42 (diff) |
gallium: Remove TGSI_OPCODE_RFL.
-rw-r--r-- | src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c | 4 | ||||
-rw-r--r-- | src/gallium/auxiliary/tgsi/tgsi-instruction-set.txt | 8 | ||||
-rw-r--r-- | src/gallium/auxiliary/tgsi/tgsi_exec.c | 49 | ||||
-rw-r--r-- | src/gallium/auxiliary/tgsi/tgsi_info.c | 2 | ||||
-rw-r--r-- | src/gallium/auxiliary/tgsi/tgsi_opcode_tmp.h | 1 | ||||
-rw-r--r-- | src/gallium/auxiliary/tgsi/tgsi_sse2.c | 4 | ||||
-rw-r--r-- | src/gallium/docs/source/tgsi.rst | 17 | ||||
-rw-r--r-- | src/gallium/drivers/cell/spu/spu_exec.c | 4 | ||||
-rw-r--r-- | src/gallium/drivers/nv30/nv30_fragprog.c | 3 | ||||
-rw-r--r-- | src/gallium/drivers/nv40/nv40_fragprog.c | 9 | ||||
-rw-r--r-- | src/gallium/drivers/r300/r300_tgsi_to_rc.c | 1 | ||||
-rw-r--r-- | src/gallium/include/pipe/p_shader_tokens.h | 1 |
12 files changed, 1 insertions, 102 deletions
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c b/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c index 497f328e8d..b297e652e3 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c +++ b/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c @@ -966,10 +966,6 @@ emit_instruction( emit_kil( bld, inst ); break; - case TGSI_OPCODE_RFL: - return 0; - break; - case TGSI_OPCODE_SEQ: FOR_EACH_DST0_ENABLED_CHANNEL( inst, chan_index ) { src0 = emit_fetch( bld, inst, 0, chan_index ); diff --git a/src/gallium/auxiliary/tgsi/tgsi-instruction-set.txt b/src/gallium/auxiliary/tgsi/tgsi-instruction-set.txt index 008114d1ad..d6fe930e04 100644 --- a/src/gallium/auxiliary/tgsi/tgsi-instruction-set.txt +++ b/src/gallium/auxiliary/tgsi/tgsi-instruction-set.txt @@ -396,14 +396,6 @@ TGSI Instruction Specification Alias for POWER. -1.5.15 RFL - Reflection Vector - - dst.x = 2.0 * (src0.x * src1.x + src0.y * src1.y + src0.z * src1.z) / (src0.x * src0.x + src0.y * src0.y + src0.z * src0.z) * src0.x - src1.x - dst.y = 2.0 * (src0.x * src1.x + src0.y * src1.y + src0.z * src1.z) / (src0.x * src0.x + src0.y * src0.y + src0.z * src0.z) * src0.y - src1.y - dst.z = 2.0 * (src0.x * src1.x + src0.y * src1.y + src0.z * src1.z) / (src0.x * src0.x + src0.y * src0.y + src0.z * src0.z) * src0.z - src1.z - dst.w = 1.0 - - 1.5.16 SEQ - Set On Equal dst.x = (src0.x == src1.x) ? 1.0 : 0.0 diff --git a/src/gallium/auxiliary/tgsi/tgsi_exec.c b/src/gallium/auxiliary/tgsi/tgsi_exec.c index 899265de00..5274ec0a7f 100644 --- a/src/gallium/auxiliary/tgsi/tgsi_exec.c +++ b/src/gallium/auxiliary/tgsi/tgsi_exec.c @@ -2807,55 +2807,6 @@ exec_instruction( exec_kil (mach, inst); break; - case TGSI_OPCODE_RFL: - if (IS_CHANNEL_ENABLED(*inst, CHAN_X) || - IS_CHANNEL_ENABLED(*inst, CHAN_Y) || - IS_CHANNEL_ENABLED(*inst, CHAN_Z)) { - /* r0 = dp3(src0, src0) */ - FETCH(&r[2], 0, CHAN_X); - micro_mul(&r[0], &r[2], &r[2]); - FETCH(&r[4], 0, CHAN_Y); - micro_mul(&r[8], &r[4], &r[4]); - micro_add(&r[0], &r[0], &r[8]); - FETCH(&r[6], 0, CHAN_Z); - micro_mul(&r[8], &r[6], &r[6]); - micro_add(&r[0], &r[0], &r[8]); - - /* r1 = dp3(src0, src1) */ - FETCH(&r[3], 1, CHAN_X); - micro_mul(&r[1], &r[2], &r[3]); - FETCH(&r[5], 1, CHAN_Y); - micro_mul(&r[8], &r[4], &r[5]); - micro_add(&r[1], &r[1], &r[8]); - FETCH(&r[7], 1, CHAN_Z); - micro_mul(&r[8], &r[6], &r[7]); - micro_add(&r[1], &r[1], &r[8]); - - /* r1 = 2 * r1 / r0 */ - micro_add(&r[1], &r[1], &r[1]); - micro_div(&r[1], &r[1], &r[0]); - - if (IS_CHANNEL_ENABLED(*inst, CHAN_X)) { - micro_mul(&r[2], &r[2], &r[1]); - micro_sub(&r[2], &r[2], &r[3]); - STORE(&r[2], 0, CHAN_X); - } - if (IS_CHANNEL_ENABLED(*inst, CHAN_Y)) { - micro_mul(&r[4], &r[4], &r[1]); - micro_sub(&r[4], &r[4], &r[5]); - STORE(&r[4], 0, CHAN_Y); - } - if (IS_CHANNEL_ENABLED(*inst, CHAN_Z)) { - micro_mul(&r[6], &r[6], &r[1]); - micro_sub(&r[6], &r[6], &r[7]); - STORE(&r[6], 0, CHAN_Z); - } - } - if (IS_CHANNEL_ENABLED(*inst, CHAN_W)) { - STORE(&mach->Temps[TEMP_1_I].xyzw[TEMP_1_C], 0, CHAN_W); - } - break; - case TGSI_OPCODE_SEQ: exec_vector_binary(mach, inst, micro_seq, TGSI_EXEC_DATA_FLOAT, TGSI_EXEC_DATA_FLOAT); break; diff --git a/src/gallium/auxiliary/tgsi/tgsi_info.c b/src/gallium/auxiliary/tgsi/tgsi_info.c index 227c352601..240ab69699 100644 --- a/src/gallium/auxiliary/tgsi/tgsi_info.c +++ b/src/gallium/auxiliary/tgsi/tgsi_info.c @@ -75,7 +75,7 @@ static const struct tgsi_opcode_info opcode_info[TGSI_OPCODE_LAST] = { 0, 0, 0, 0, 0, 0, "", 41 }, /* removed */ { 0, 0, 0, 0, 0, 0, "", 42 }, /* removed */ { 0, 0, 0, 0, 0, 0, "", 43 }, /* removed */ - { 1, 2, 0, 0, 0, 0, "RFL", TGSI_OPCODE_RFL }, + { 0, 0, 0, 0, 0, 0, "", 44 }, /* removed */ { 1, 2, 0, 0, 0, 0, "SEQ", TGSI_OPCODE_SEQ }, { 0, 0, 0, 0, 0, 0, "", 46 }, /* removed */ { 1, 2, 0, 0, 0, 0, "SGT", TGSI_OPCODE_SGT }, diff --git a/src/gallium/auxiliary/tgsi/tgsi_opcode_tmp.h b/src/gallium/auxiliary/tgsi/tgsi_opcode_tmp.h index 69b15734f6..66464f6fcc 100644 --- a/src/gallium/auxiliary/tgsi/tgsi_opcode_tmp.h +++ b/src/gallium/auxiliary/tgsi/tgsi_opcode_tmp.h @@ -76,7 +76,6 @@ OP11(COS) OP11(DDX) OP11(DDY) OP00(KILP) -OP12(RFL) OP12(SEQ) OP12(SGT) OP11(SIN) diff --git a/src/gallium/auxiliary/tgsi/tgsi_sse2.c b/src/gallium/auxiliary/tgsi/tgsi_sse2.c index 4765bf694e..682228db45 100644 --- a/src/gallium/auxiliary/tgsi/tgsi_sse2.c +++ b/src/gallium/auxiliary/tgsi/tgsi_sse2.c @@ -2260,10 +2260,6 @@ emit_instruction( emit_kil( func, &inst->Src[0] ); break; - case TGSI_OPCODE_RFL: - return 0; - break; - case TGSI_OPCODE_SEQ: emit_setcc( func, inst, cc_Equal ); break; diff --git a/src/gallium/docs/source/tgsi.rst b/src/gallium/docs/source/tgsi.rst index ed6655f71b..ad918762db 100644 --- a/src/gallium/docs/source/tgsi.rst +++ b/src/gallium/docs/source/tgsi.rst @@ -453,23 +453,6 @@ This instruction replicates its result. discard -.. opcode:: RFL - Reflection Vector - -.. math:: - - dst.x = 2 \times (src0.x \times src1.x + src0.y \times src1.y + src0.z \times src1.z) / (src0.x \times src0.x + src0.y \times src0.y + src0.z \times src0.z) \times src0.x - src1.x - - dst.y = 2 \times (src0.x \times src1.x + src0.y \times src1.y + src0.z \times src1.z) / (src0.x \times src0.x + src0.y \times src0.y + src0.z \times src0.z) \times src0.y - src1.y - - dst.z = 2 \times (src0.x \times src1.x + src0.y \times src1.y + src0.z \times src1.z) / (src0.x \times src0.x + src0.y \times src0.y + src0.z \times src0.z) \times src0.z - src1.z - - dst.w = 1 - -.. note:: - - Considered for removal. - - .. opcode:: SEQ - Set On Equal .. math:: diff --git a/src/gallium/drivers/cell/spu/spu_exec.c b/src/gallium/drivers/cell/spu/spu_exec.c index 10c728c0d9..42f9e908e9 100644 --- a/src/gallium/drivers/cell/spu/spu_exec.c +++ b/src/gallium/drivers/cell/spu/spu_exec.c @@ -1315,10 +1315,6 @@ exec_instruction( exec_kil (mach, inst); break; - case TGSI_OPCODE_RFL: - ASSERT (0); - break; - case TGSI_OPCODE_SEQ: FOR_EACH_ENABLED_CHANNEL( *inst, chan_index ) { FETCH( &r[0], 0, chan_index ); diff --git a/src/gallium/drivers/nv30/nv30_fragprog.c b/src/gallium/drivers/nv30/nv30_fragprog.c index 2c432c6dfa..0455cfd70b 100644 --- a/src/gallium/drivers/nv30/nv30_fragprog.c +++ b/src/gallium/drivers/nv30/nv30_fragprog.c @@ -511,9 +511,6 @@ nv30_fragprog_parse_instruction(struct nv30_fpc *fpc, case TGSI_OPCODE_RET: assert(0); break; - case TGSI_OPCODE_RFL: - arith(fpc, 0, RFL, dst, mask, src[0], src[1], none); - break; case TGSI_OPCODE_RSQ: arith(fpc, sat, RSQ, dst, mask, abs(swz(src[0], X, X, X, X)), none, none); break; diff --git a/src/gallium/drivers/nv40/nv40_fragprog.c b/src/gallium/drivers/nv40/nv40_fragprog.c index f0e773cb12..2a31594c9b 100644 --- a/src/gallium/drivers/nv40/nv40_fragprog.c +++ b/src/gallium/drivers/nv40/nv40_fragprog.c @@ -557,15 +557,6 @@ nv40_fragprog_parse_instruction(struct nv40_fpc *fpc, case TGSI_OPCODE_RET: assert(0); break; - case TGSI_OPCODE_RFL: - tmp = temp(fpc); - arith(fpc, 0, DP3, tmp, MASK_X, src[0], src[0], none); - arith(fpc, 0, DP3, tmp, MASK_Y, src[0], src[1], none); - arith(fpc, 0, DIV, scale(tmp, 2X), MASK_Z, - swz(tmp, Y, Y, Y, Y), swz(tmp, X, X, X, X), none); - arith(fpc, sat, MAD, dst, mask, - swz(tmp, Z, Z, Z, Z), src[0], neg(src[1])); - break; case TGSI_OPCODE_RSQ: tmp = temp(fpc); arith(fpc, 0, LG2, scale(tmp, INV_2X), MASK_X, diff --git a/src/gallium/drivers/r300/r300_tgsi_to_rc.c b/src/gallium/drivers/r300/r300_tgsi_to_rc.c index 2b4cdbe574..305fa4d09c 100644 --- a/src/gallium/drivers/r300/r300_tgsi_to_rc.c +++ b/src/gallium/drivers/r300/r300_tgsi_to_rc.c @@ -73,7 +73,6 @@ static unsigned translate_opcode(unsigned opcode) case TGSI_OPCODE_DDX: return RC_OPCODE_DDX; case TGSI_OPCODE_DDY: return RC_OPCODE_DDY; /* case TGSI_OPCODE_KILP: return RC_OPCODE_KILP; */ - /* case TGSI_OPCODE_RFL: return RC_OPCODE_RFL; */ case TGSI_OPCODE_SEQ: return RC_OPCODE_SEQ; case TGSI_OPCODE_SGT: return RC_OPCODE_SGT; case TGSI_OPCODE_SIN: return RC_OPCODE_SIN; diff --git a/src/gallium/include/pipe/p_shader_tokens.h b/src/gallium/include/pipe/p_shader_tokens.h index fc147171a5..1746113a6b 100644 --- a/src/gallium/include/pipe/p_shader_tokens.h +++ b/src/gallium/include/pipe/p_shader_tokens.h @@ -242,7 +242,6 @@ struct tgsi_property_data { #define TGSI_OPCODE_DDY 38 #define TGSI_OPCODE_KILP 39 /* predicated kill */ /* gap */ -#define TGSI_OPCODE_RFL 44 #define TGSI_OPCODE_SEQ 45 /* gap */ #define TGSI_OPCODE_SGT 47 |