r600: float texture component ordering
The ordering of texture components was backwards for the floating point textures. Signed-off-by: Pierre Ossman <pierre@ossman.eu>
This commit is contained in:
parent
324568f79d
commit
c9befda13a
|
@ -357,37 +357,37 @@ static GLboolean r600GetTexFormat(struct gl_texture_object *tObj, gl_format mesa
|
|||
SETfield(t->SQ_TEX_RESOURCE1, FMT_32_32_32_32_FLOAT,
|
||||
SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask);
|
||||
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask);
|
||||
break;
|
||||
case MESA_FORMAT_RGBA_FLOAT16:
|
||||
SETfield(t->SQ_TEX_RESOURCE1, FMT_16_16_16_16_FLOAT,
|
||||
SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask);
|
||||
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask);
|
||||
break;
|
||||
case MESA_FORMAT_RGB_FLOAT32: /* X, Y, Z, ONE */
|
||||
SETfield(t->SQ_TEX_RESOURCE1, FMT_32_32_32_FLOAT,
|
||||
SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask);
|
||||
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z,
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X,
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask);
|
||||
|
@ -396,11 +396,11 @@ static GLboolean r600GetTexFormat(struct gl_texture_object *tObj, gl_format mesa
|
|||
SETfield(t->SQ_TEX_RESOURCE1, FMT_16_16_16_FLOAT,
|
||||
SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask);
|
||||
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z,
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X,
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask);
|
||||
|
@ -461,26 +461,26 @@ static GLboolean r600GetTexFormat(struct gl_texture_object *tObj, gl_format mesa
|
|||
SETfield(t->SQ_TEX_RESOURCE1, FMT_32_32_FLOAT,
|
||||
SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask);
|
||||
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask);
|
||||
break;
|
||||
case MESA_FORMAT_LUMINANCE_ALPHA_FLOAT16:
|
||||
SETfield(t->SQ_TEX_RESOURCE1, FMT_16_16_FLOAT,
|
||||
SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask);
|
||||
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask);
|
||||
SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y,
|
||||
SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask);
|
||||
break;
|
||||
case MESA_FORMAT_INTENSITY_FLOAT32: /* X, X, X, X */
|
||||
|
|
Loading…
Reference in New Issue