From: Alejandro PiƱeiro Date: Thu, 21 Apr 2016 10:23:47 +0000 (+0200) Subject: i965/vec4: use attribute slots for first non payload GRF X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=f8310189f4a31c443657cd0c1aef35db02b86c95;p=mesa.git i965/vec4: use attribute slots for first non payload GRF As part of the payload setup, setup_attributes is called with the first GRF that can be used for the attributes (first ones are used for uniforms for example) and returns the first GRF that is not part of the payload. Before this patch, it adds directly the number of attributes. But as with 64-bit attributes can consume more than one slot, that is not valid anymore. This patch change the addition to use the number of slots consumed. gen >= 8 would not be affected, as they use the scalar mode. For that case, the vs configuration is done at fs_visitor::assign_vs_urb_setup. v2: add explanation in commit log (Jordan) Reviewed-by: Jordan Justen --- diff --git a/src/mesa/drivers/dri/i965/brw_vec4.cpp b/src/mesa/drivers/dri/i965/brw_vec4.cpp index 5ddbe580d5a..f80162d8203 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4.cpp +++ b/src/mesa/drivers/dri/i965/brw_vec4.cpp @@ -1757,7 +1757,7 @@ vec4_vs_visitor::setup_attributes(int payload_reg) lower_attributes_to_hw_regs(attribute_map, false /* interleaved */); - return payload_reg + vs_prog_data->nr_attributes; + return payload_reg + vs_prog_data->nr_attribute_slots; } int