summaryrefslogtreecommitdiffstats
path: root/src/glsl/ir_hv_accept.cpp
diff options
context:
space:
mode:
authorChris Forbes <chrisf@ijw.co.nz>2013-10-05 18:26:56 +1300
committerChris Forbes <chrisf@ijw.co.nz>2013-10-06 11:12:29 +1300
commit88ee9bc9d1dd66ddb9721dc44574b8caaa26df70 (patch)
tree703eea9eaceab52cb3820145fe9cc2036bbafb1e /src/glsl/ir_hv_accept.cpp
parentf93a63bfccf22b64d5f0886b25fce833babdab1c (diff)
downloadexternal_mesa3d-88ee9bc9d1dd66ddb9721dc44574b8caaa26df70.zip
external_mesa3d-88ee9bc9d1dd66ddb9721dc44574b8caaa26df70.tar.gz
external_mesa3d-88ee9bc9d1dd66ddb9721dc44574b8caaa26df70.tar.bz2
glsl: Add support for specifying the component in textureGather
ARB_gpu_shader5 introduces new variants of textureGather* which have an explicit component selector, rather than relying purely on the sampler's swizzle state. This patch adds the GLSL plumbing for the extra parameter. Signed-off-by: Chris Forbes <chrisf@ijw.co.nz> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Diffstat (limited to 'src/glsl/ir_hv_accept.cpp')
-rw-r--r--src/glsl/ir_hv_accept.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/glsl/ir_hv_accept.cpp b/src/glsl/ir_hv_accept.cpp
index 3aa008a..941b25e 100644
--- a/src/glsl/ir_hv_accept.cpp
+++ b/src/glsl/ir_hv_accept.cpp
@@ -214,7 +214,6 @@ ir_texture::accept(ir_hierarchical_visitor *v)
switch (this->op) {
case ir_tex:
case ir_lod:
- case ir_tg4:
case ir_query_levels:
break;
case ir_txb:
@@ -243,6 +242,11 @@ ir_texture::accept(ir_hierarchical_visitor *v)
if (s != visit_continue)
return (s == visit_continue_with_parent) ? visit_continue : s;
break;
+ case ir_tg4:
+ s = this->lod_info.component->accept(v);
+ if (s != visit_continue)
+ return (s == visit_continue_with_parent) ? visit_continue : s;
+ break;
}
return (s == visit_stop) ? s : v->visit_leave(this);