Module: Mesa Branch: master Commit: da39ac9c5126825418c979989ea7e017554a0aaa URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=da39ac9c5126825418c979989ea7e017554a0aaa
Author: Rob Clark <robcl...@freedesktop.org> Date: Wed Jun 22 14:45:25 2016 -0400 freedreno/ir3: support non-user_buffer consts Signed-off-by: Rob Clark <robdcl...@gmail.com> --- src/gallium/drivers/freedreno/freedreno_screen.c | 6 ++++-- src/gallium/drivers/freedreno/ir3/ir3_compiler_nir.c | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/freedreno/freedreno_screen.c b/src/gallium/drivers/freedreno/freedreno_screen.c index 93b70e0..5255c10 100644 --- a/src/gallium/drivers/freedreno/freedreno_screen.c +++ b/src/gallium/drivers/freedreno/freedreno_screen.c @@ -156,12 +156,14 @@ fd_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param) case PIPE_CAP_VERTEX_BUFFER_OFFSET_4BYTE_ALIGNED_ONLY: case PIPE_CAP_VERTEX_BUFFER_STRIDE_4BYTE_ALIGNED_ONLY: case PIPE_CAP_VERTEX_ELEMENT_SRC_OFFSET_4BYTE_ALIGNED_ONLY: - case PIPE_CAP_USER_CONSTANT_BUFFERS: case PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT: case PIPE_CAP_VERTEXID_NOBASE: case PIPE_CAP_STRING_MARKER: return 1; + case PIPE_CAP_USER_CONSTANT_BUFFERS: + return is_ir3(screen) ? 0 : 1; + case PIPE_CAP_SHADER_STENCIL_EXPORT: case PIPE_CAP_TGSI_TEXCOORD: case PIPE_CAP_PREFER_BLIT_BASED_TEXTURE_TRANSFER: @@ -214,7 +216,7 @@ fd_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param) return is_a4xx(screen); case PIPE_CAP_CONSTANT_BUFFER_OFFSET_ALIGNMENT: - return 256; + return 64; case PIPE_CAP_GLSL_FEATURE_LEVEL: if (glsl120) diff --git a/src/gallium/drivers/freedreno/ir3/ir3_compiler_nir.c b/src/gallium/drivers/freedreno/ir3/ir3_compiler_nir.c index 04c99d1..5c7ad84 100644 --- a/src/gallium/drivers/freedreno/ir3/ir3_compiler_nir.c +++ b/src/gallium/drivers/freedreno/ir3/ir3_compiler_nir.c @@ -181,7 +181,7 @@ compile_init(struct ir3_compiler *compiler, nir_print_shader(ctx->s, stdout); } - so->first_driver_param = so->first_immediate = ctx->s->num_uniforms; + so->first_driver_param = so->first_immediate = align(ctx->s->num_uniforms, 4); /* Layout of constant registers: * _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit