[Mesa-dev] [PATCH] ac: image size builtin for GLSL_SAMPLER_DIM_3D
Dieter Nützel
Dieter at nuetzel-hh.de
Fri Jan 19 07:58:44 UTC 2018
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
on RX580 with UH, UV, glmark2 and Blender 2.79
UH and UV crash for 'wireframe' (as expected - not implemented, yet) ;-)
BTW
Find an interesting hang with Unigine_Superposition-1.0 with and
_without_ NIR in very high mode. NIR is _much_ better. Hang only appears
at 8K on downsampled (?) HD 1920x1080 desktop (native monitor mode).
GLSL hang first under 1080p extreme mode. Both paths have a memory leak,
but NIR _much_ later? Nothing in the logs. Only reboot works. It happens
at the last scene (fading out into the dark). I can 'see' some little
rest of the engine. But the hang is unrelated to these latest patches.
;-)
That's why I'm cc'ed Andrey.
Need some sleep...
Dieter
Am 18.01.2018 08:17, schrieb Timothy Arceri:
> 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;
More information about the mesa-dev
mailing list