diff --git a/src/gallium/drivers/svga/svga_context.h b/src/gallium/drivers/svga/svga_context.h index bbb1d2ae5e9..1a209f76538 100644 --- a/src/gallium/drivers/svga/svga_context.h +++ b/src/gallium/drivers/svga/svga_context.h @@ -85,9 +85,10 @@ enum svga_hud { #define CONST0_UPLOAD_ALIGNMENT 256 #define SVGA_MAX_UAVIEWS SVGA3D_DX11_1_MAX_UAVIEWS #define SVGA_MAX_IMAGES SVGA3D_DX11_MAX_UAVIEWS -#define SVGA_MAX_SHADER_BUFFERS SVGA3D_DX11_MAX_UAVIEWS +#define SVGA_MAX_SHADER_BUFFERS 16 #define SVGA_MAX_ATOMIC_BUFFERS SVGA3D_DX11_MAX_UAVIEWS + enum svga_surface_state { SVGA_SURFACE_STATE_CREATED, @@ -365,7 +366,7 @@ struct svga_state /* HW atomic buffers */ unsigned num_atomic_buffers; - struct svga_shader_buffer atomic_buffers[SVGA_MAX_SHADER_BUFFERS]; + struct svga_shader_buffer atomic_buffers[SVGA_MAX_ATOMIC_BUFFERS]; struct { /* Determine the layout of the grid (in block units) to be used. */ diff --git a/src/gallium/drivers/svga/svga_shader.h b/src/gallium/drivers/svga/svga_shader.h index ec81d7be335..4a23ca21b1e 100644 --- a/src/gallium/drivers/svga/svga_shader.h +++ b/src/gallium/drivers/svga/svga_shader.h @@ -131,10 +131,10 @@ struct svga_compile_key unsigned sampler_index:5; } tex[PIPE_MAX_SAMPLERS]; - unsigned uav_splice_index:4; /* starting uav index */ - unsigned srv_raw_constbuf_index:8; /* start index for srv raw buffers */ - unsigned srv_raw_shaderbuf_index:8; /* start index for srv raw shader bufs */ - unsigned image_size_used:1; + uint8_t uav_splice_index; /* starting uav index */ + uint8_t srv_raw_constbuf_index; /* start index for srv raw buffers */ + uint8_t srv_raw_shaderbuf_index; /* start index for srv raw shader bufs */ + bool image_size_used; uint16_t raw_constbufs; /* bitmask of raw constant buffers */ uint64_t raw_shaderbufs; /* bitmask of raw shader buffers */ diff --git a/src/gallium/drivers/svga/svga_shader_buffer.h b/src/gallium/drivers/svga/svga_shader_buffer.h index a6c4774ae97..d77701c093c 100644 --- a/src/gallium/drivers/svga/svga_shader_buffer.h +++ b/src/gallium/drivers/svga/svga_shader_buffer.h @@ -11,8 +11,8 @@ struct svga_shader_buffer { struct pipe_shader_buffer desc; struct pipe_resource *resource; - unsigned uav_index; struct svga_winsys_surface *handle; + unsigned uav_index; bool writeAccess; };