From 7cee56b1dfde82ae81850fbedc4afc778d911edd Mon Sep 17 00:00:00 2001 From: Iago Toral Quiroga Date: Tue, 5 Nov 2019 12:25:35 +0100 Subject: [PATCH] v3d: disable lowering of indirect inputs MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit V3D can do indirect inputs so we don't need it. Also, the lowering produces horrible if-ladder code that is particularly bad for geometry shaders where inputs are always arrays and shader bodies usually have a loop indexing into them. This fixes a couple of geometry shader tests in CTS that would fail to register allocate otherwise. There are no changes in shader-db. Reviewed-by: Alejandro Piñeiro --- src/gallium/drivers/v3d/v3d_screen.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gallium/drivers/v3d/v3d_screen.c b/src/gallium/drivers/v3d/v3d_screen.c index 935f3207239..a3eef791a42 100644 --- a/src/gallium/drivers/v3d/v3d_screen.c +++ b/src/gallium/drivers/v3d/v3d_screen.c @@ -334,6 +334,7 @@ v3d_screen_get_shader_param(struct pipe_screen *pscreen, unsigned shader, case PIPE_SHADER_CAP_TGSI_CONT_SUPPORTED: return 0; case PIPE_SHADER_CAP_INDIRECT_INPUT_ADDR: + return 1; case PIPE_SHADER_CAP_INDIRECT_OUTPUT_ADDR: return 0; case PIPE_SHADER_CAP_INDIRECT_TEMP_ADDR: -- 2.30.2