r600: don't use vtx offset for load_sample_position
authorRoland Scheidegger <sroland@vmware.com>
Mon, 1 Jan 2018 18:40:56 +0000 (19:40 +0100)
committerRoland Scheidegger <sroland@vmware.com>
Wed, 10 Jan 2018 03:59:00 +0000 (04:59 +0100)
The offset looks bogus to me. Albeit in the end it doesn't matter, by the
looks of it offsets smaller than 4 get ignored there (not sure of the rules,
I suppose either non-dword aligned offsets never work there or the offset
must be at least aligned to the size of a single element).

Tested-by: Konstantin Kharlamov <hi-angel@yandex.ru>
Reviewed-by: Dave Airlie <airlied@redhat.com>
src/gallium/drivers/r600/r600_shader.c

index f6ff2055ee33deae9bb430e46e65b87458b4784a..bb7cc177ae8e5d854bcfbae091dad7e505926e5c 100644 (file)
@@ -1284,7 +1284,7 @@ static int load_sample_position(struct r600_shader_ctx *ctx, struct r600_shader_
        vtx.num_format_all = 2;
        vtx.format_comp_all = 1;
        vtx.use_const_fields = 0;
-       vtx.offset = 1; // first element is size of buffer
+       vtx.offset = 0;
        vtx.endian = r600_endian_swap(32);
        vtx.srf_mode_all = 1; /* SRF_MODE_NO_ZERO */