mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 00:10:10 +01:00
radeonsi: fix dvec[34] attributes sourced from current attribute state
The state tracker no longer uploads those attributes for us,
so we must conservatively upload the size of the largest
attribute, which is a dvec4.
Fixes a regression of GL45-CTS.gpu_shader_fp64.varyings and
GL45-CTS.vertex_attrib_64bit.limits_test.
Fixes: 9b91e0b54c ("radeonsi: allow unaligned vertex buffer offsets and strides on CIK-VI")
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
This commit is contained in:
parent
15603055fb
commit
eebd0cd560
1 changed files with 4 additions and 3 deletions
|
|
@ -3532,12 +3532,13 @@ static void si_set_vertex_buffers(struct pipe_context *ctx,
|
|||
/* Zero-stride attribs only. */
|
||||
assert(src->stride == 0);
|
||||
|
||||
/* Assume the attrib has 4 dwords like the vbo
|
||||
* module. This is also a good upper bound.
|
||||
/* Assume that the user_buffer comes from
|
||||
* gl_current_attrib, which implies it has
|
||||
* 4 * 8 bytes (for dvec4 attributes).
|
||||
*
|
||||
* Use const_uploader to upload into VRAM directly.
|
||||
*/
|
||||
u_upload_data(sctx->b.b.const_uploader, 0, 16, 16,
|
||||
u_upload_data(sctx->b.b.const_uploader, 0, 32, 32,
|
||||
src->user_buffer,
|
||||
&dsti->buffer_offset,
|
||||
&dsti->buffer);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue