diff options
author | Kristian Høgsberg Kristensen <krh@bitplanet.net> | 2015-12-10 12:24:50 -0800 |
---|---|---|
committer | Kristian Høgsberg Kristensen <krh@bitplanet.net> | 2015-12-29 10:39:25 -0800 |
commit | 17ebb55a14b5a9aa639845fbda9330ef9421834a (patch) | |
tree | 36b12fe6b5a90e8cf2d4c3da92d38020a4b86d7a /src/mesa/drivers/dri/i965/brw_vec4.cpp | |
parent | b70616f3e7834386f96498d9a99f2ad11b292b5b (diff) | |
download | external_mesa3d-17ebb55a14b5a9aa639845fbda9330ef9421834a.zip external_mesa3d-17ebb55a14b5a9aa639845fbda9330ef9421834a.tar.gz external_mesa3d-17ebb55a14b5a9aa639845fbda9330ef9421834a.tar.bz2 |
i965: Add support for gl_BaseVertexARB and gl_BaseInstanceARB
We already have gl_BaseVertexARB in the .x component of the SGVS vec4
and plug gl_BaseInstanceARB into the last free component (.y).
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_vec4.cpp')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_vec4.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_vec4.cpp b/src/mesa/drivers/dri/i965/brw_vec4.cpp index f0f18ca..b2a27d8 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4.cpp +++ b/src/mesa/drivers/dri/i965/brw_vec4.cpp @@ -1581,7 +1581,8 @@ vec4_vs_visitor::setup_attributes(int payload_reg) * don't represent it with a flag in inputs_read, so we call it * VERT_ATTRIB_MAX. */ - if (vs_prog_data->uses_vertexid || vs_prog_data->uses_instanceid) { + if (vs_prog_data->uses_vertexid || vs_prog_data->uses_instanceid || + vs_prog_data->uses_basevertex || vs_prog_data->uses_baseinstance) { attribute_map[VERT_ATTRIB_MAX] = payload_reg + nr_attributes; } @@ -1982,7 +1983,9 @@ brw_compile_vs(const struct brw_compiler *compiler, void *log_data, * incoming vertex attribute. So, add an extra slot. */ if (shader->info.system_values_read & - (BITFIELD64_BIT(SYSTEM_VALUE_VERTEX_ID_ZERO_BASE) | + (BITFIELD64_BIT(SYSTEM_VALUE_BASE_VERTEX) | + BITFIELD64_BIT(SYSTEM_VALUE_BASE_INSTANCE) | + BITFIELD64_BIT(SYSTEM_VALUE_VERTEX_ID_ZERO_BASE) | BITFIELD64_BIT(SYSTEM_VALUE_INSTANCE_ID))) { nr_attributes++; } |