diff options
author | Alex Deucher <alexdeucher@gmail.com> | 2009-03-02 04:08:09 -0500 |
---|---|---|
committer | Alex Deucher <alexdeucher@gmail.com> | 2009-03-02 04:08:09 -0500 |
commit | b7164ac4ad55e5d0fc474df8ae762b469b91ba30 (patch) | |
tree | 5c2914edcf594868e395cc3098d118a5d7fb7d95 /src/r600_textured_videofuncs.c | |
parent | fa98f424de739be2c6005b740a74bbf1ee968a8b (diff) |
R6xx/R7xx EXA: combine composite mask/non-mask VS
Also fix set_bool_const()
the CF bool consts are not contiguous by shader type
There are 96 boolean constants (32 each for PS, VS, GS) and
they are ordered as follows:
ps, vs, gs ... ps, vs, gs
Diffstat (limited to 'src/r600_textured_videofuncs.c')
-rw-r--r-- | src/r600_textured_videofuncs.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/src/r600_textured_videofuncs.c b/src/r600_textured_videofuncs.c index d208b076..56adc6d5 100644 --- a/src/r600_textured_videofuncs.c +++ b/src/r600_textured_videofuncs.c @@ -115,7 +115,6 @@ R600DisplayTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) tex_sampler_t tex_samp; shader_config_t vs_conf, ps_conf; int uv_offset; - uint32_t bool_consts[1] = { 0 }; static float ps_alu_consts[] = { 1.0, 0.0, 1.4020, 0, /* r - c[0] */ 1.0, -0.34414, -0.71414, 0, /* g - c[1] */ @@ -169,15 +168,16 @@ R600DisplayTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) accel_state->ps_mc_addr = info->fbLocation + pScrn->fbOffset + accel_state->shaders->offset + accel_state->xv_ps_offset; + /* PS bool constant */ switch(pPriv->id) { case FOURCC_YV12: case FOURCC_I420: - bool_consts[0] = 1; + set_bool_const(pScrn, accel_state->ib, 0, 1); break; case FOURCC_UYVY: case FOURCC_YUY2: default: - bool_consts[0] = 0; + set_bool_const(pScrn, accel_state->ib, 0, 0); break; } @@ -211,10 +211,6 @@ R600DisplayTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) set_alu_consts(pScrn, accel_state->ib, SQ_ALU_CONSTANT_ps, sizeof(ps_alu_consts) / SQ_ALU_CONSTANT_offset, ps_alu_consts); - /* CF bool constants */ - set_bool_consts(pScrn, accel_state->ib, SQ_BOOL_CONST_ps, - sizeof(bool_consts) / SQ_BOOL_CONST_offset, bool_consts); - /* Texture */ switch(pPriv->id) { case FOURCC_YV12: |