diff options
author | Michel Dänzer <[email protected]> | 2013-08-29 16:39:16 +0200 |
---|---|---|
committer | Michel Dänzer <[email protected]> | 2013-09-02 17:25:27 +0200 |
commit | 9933b85e122c233ceac7662aec5cf359f888f595 (patch) | |
tree | 06581499ca974c012647988c1346d6db4b24bf9c /src/gallium/drivers/radeonsi/si_state.c | |
parent | ad4dc7723199b3052231f5b4aed1bd1ba1505025 (diff) |
radeonsi: Expose pure integer vertex formats
Fixes 20 piglit tests with MESA_GL_VERSION_OVERRIDE=3.0.
Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_state.c')
-rw-r--r-- | src/gallium/drivers/radeonsi/si_state.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c index 3c4197ca548..6426033fcf9 100644 --- a/src/gallium/drivers/radeonsi/si_state.c +++ b/src/gallium/drivers/radeonsi/si_state.c @@ -1630,7 +1630,12 @@ static uint32_t si_translate_vertexformat(struct pipe_screen *screen, } break; case 32: - if (type != UTIL_FORMAT_TYPE_FLOAT) + /* From the Southern Islands ISA documentation about MTBUF: + * 'Memory reads of data in memory that is 32 or 64 bits do not + * undergo any format conversion.' + */ + if (type != UTIL_FORMAT_TYPE_FLOAT && + !desc->channel[first_non_void].pure_integer) return V_008F0C_BUF_DATA_FORMAT_INVALID; switch (desc->nr_channels) { |