[Mesa-dev] [PATCH] ac: image size builtin for GLSL_SAMPLER_DIM_3D

Timothy Arceri tarceri at itsqueeze.com
Thu Jan 18 07:17:42 UTC 2018


This is what radeonsi does. Fixes remaing piglit subtest in:

./bin/arb_shader_image_size-builtin --quick -auto -fbo
---
 src/amd/common/ac_nir_to_llvm.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index d5b8bea44f..ac6bbe02f1 100644
--- a/src/amd/common/ac_nir_to_llvm.c
+++ b/src/amd/common/ac_nir_to_llvm.c
@@ -3788,7 +3788,8 @@ static LLVMValueRef visit_image_size(struct ac_nir_context *ctx,
 	const nir_variable *var = instr->variables[0]->var;
 	const struct glsl_type *type = instr->variables[0]->var->type;
 	bool da = glsl_sampler_type_is_array(var->type) ||
-	          glsl_get_sampler_dim(var->type) == GLSL_SAMPLER_DIM_CUBE;
+		  glsl_get_sampler_dim(var->type) == GLSL_SAMPLER_DIM_CUBE ||
+		  glsl_get_sampler_dim(var->type) == GLSL_SAMPLER_DIM_3D;
 	if(instr->variables[0]->deref.child)
 		type = instr->variables[0]->deref.child->type;
 
-- 
2.14.3



More information about the mesa-dev mailing list