From 9933b85e122c233ceac7662aec5cf359f888f595 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Michel=20D=C3=A4nzer?= Date: Thu, 29 Aug 2013 16:39:16 +0200 Subject: [PATCH] radeonsi: Expose pure integer vertex formats MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Fixes 20 piglit tests with MESA_GL_VERSION_OVERRIDE=3.0. Reviewed-by: Marek Olšák --- src/gallium/drivers/radeonsi/si_state.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) 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) { -- 2.30.2