From: Dave Airlie Date: Tue, 5 Dec 2017 08:35:24 +0000 (+0000) Subject: r600/ssbo: use r32ui format for ssbo resources. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=989697eccce9c8f4b5403b2218c9614e34b86baf;p=mesa.git r600/ssbo: use r32ui format for ssbo resources. This works best for returning the correct values and sizes in tests. Signed-off-by: Dave Airlie --- diff --git a/src/gallium/drivers/r600/evergreen_state.c b/src/gallium/drivers/r600/evergreen_state.c index e46f55bb79c..8825f92a8ee 100644 --- a/src/gallium/drivers/r600/evergreen_state.c +++ b/src/gallium/drivers/r600/evergreen_state.c @@ -3949,12 +3949,12 @@ static void evergreen_set_shader_buffers(struct pipe_context *ctx, resource = (struct r600_resource *)rview->base.resource; - evergreen_setup_immed_buffer(rctx, rview, resource->b.b.format); + evergreen_setup_immed_buffer(rctx, rview, PIPE_FORMAT_R32_UINT); color.offset = 0; color.view = 0; evergreen_set_color_surface_buffer(rctx, resource, - PIPE_FORMAT_R32_FLOAT, + PIPE_FORMAT_R32_UINT, buf->buffer_offset, buf->buffer_offset + buf->buffer_size, &color); @@ -3974,7 +3974,7 @@ static void evergreen_set_shader_buffers(struct pipe_context *ctx, rview->cb_color_fmask_slice = color.fmask_slice; memset(&buf_params, 0, sizeof(buf_params)); - buf_params.pipe_format = PIPE_FORMAT_R32_FLOAT; + buf_params.pipe_format = PIPE_FORMAT_R32_UINT; buf_params.offset = buf->buffer_offset; buf_params.size = buf->buffer_size; buf_params.swizzle[0] = PIPE_SWIZZLE_X;