summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/i965/brw_vec4_gs_visitor.cpp
diff options
context:
space:
mode:
authorAlejandro PiƱeiro <apinheiro@igalia.com>2015-06-16 17:01:29 +0200
committerJason Ekstrand <jason.ekstrand@intel.com>2015-08-03 09:40:47 -0700
commit01c5617c8edc2f392363e9f8861d62a9fc9aa973 (patch)
tree73d1ac26eec50ce9a43acb1ede54a17e6b1ad84a /src/mesa/drivers/dri/i965/brw_vec4_gs_visitor.cpp
parent195156e571e851273c135847f91ed73b3bfc1914 (diff)
downloadexternal_mesa3d-01c5617c8edc2f392363e9f8861d62a9fc9aa973.zip
external_mesa3d-01c5617c8edc2f392363e9f8861d62a9fc9aa973.tar.gz
external_mesa3d-01c5617c8edc2f392363e9f8861d62a9fc9aa973.tar.bz2
i965/vec4: Redefine make_reg_for_system_value() to allow reuse in NIR->vec4 pass
The new virtual method is more flexible, it has a signature: dst_reg *make_reg_for_system_value(int location, const glsl_type *type); v2 (Jason Ekstrand): Use the new version in unit tests so make check passes again Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_vec4_gs_visitor.cpp')
-rw-r--r--src/mesa/drivers/dri/i965/brw_vec4_gs_visitor.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_vec4_gs_visitor.cpp b/src/mesa/drivers/dri/i965/brw_vec4_gs_visitor.cpp
index d6b350b..704644e 100644
--- a/src/mesa/drivers/dri/i965/brw_vec4_gs_visitor.cpp
+++ b/src/mesa/drivers/dri/i965/brw_vec4_gs_visitor.cpp
@@ -51,11 +51,12 @@ vec4_gs_visitor::vec4_gs_visitor(const struct brw_compiler *compiler,
dst_reg *
-vec4_gs_visitor::make_reg_for_system_value(ir_variable *ir)
+vec4_gs_visitor::make_reg_for_system_value(int location,
+ const glsl_type *type)
{
- dst_reg *reg = new(mem_ctx) dst_reg(this, ir->type);
+ dst_reg *reg = new(mem_ctx) dst_reg(this, type);
- switch (ir->data.location) {
+ switch (location) {
case SYSTEM_VALUE_INVOCATION_ID:
this->current_annotation = "initialize gl_InvocationID";
emit(GS_OPCODE_GET_INSTANCE_ID, *reg);