[Mesa-dev] [PATCH 4/5] mesa/glsl: copy num_abos to gl_program

Timothy Arceri timothy.arceri at collabora.com
Thu Oct 27 09:01:56 UTC 2016


We should be able to free gl_linked_shader after linking in order to
do so we need to switch to getting values from gl_program instead.
---
 src/compiler/glsl/glsl_to_nir.cpp | 1 -
 src/mesa/main/shaderapi.c         | 1 +
 2 files changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/compiler/glsl/glsl_to_nir.cpp b/src/compiler/glsl/glsl_to_nir.cpp
index fef89f9..e1b8cea 100644
--- a/src/compiler/glsl/glsl_to_nir.cpp
+++ b/src/compiler/glsl/glsl_to_nir.cpp
@@ -149,7 +149,6 @@ glsl_to_nir(const struct gl_shader_program *shader_prog,
       shader->info->label = ralloc_strdup(shader, shader_prog->Label);
    shader->info->num_textures = util_last_bit(sh->Program->SamplersUsed);
    shader->info->num_ubos = sh->NumUniformBlocks;
-   shader->info->num_abos = shader_prog->NumAtomicBuffers;
    shader->info->num_ssbos = sh->NumShaderStorageBlocks;
    shader->info->uses_clip_distance_out =
       sh->Program->ClipDistanceArraySize != 0;
diff --git a/src/mesa/main/shaderapi.c b/src/mesa/main/shaderapi.c
index 4d64ae5..5db4137 100644
--- a/src/mesa/main/shaderapi.c
+++ b/src/mesa/main/shaderapi.c
@@ -2165,6 +2165,7 @@ _mesa_copy_linked_program_data(const struct gl_shader_program *src,
 
    struct gl_program *dst = dst_sh->Program;
 
+   dst->info.num_abos = dst_sh->NumAtomicBuffers;
    dst->info.num_images = dst_sh->NumImages;
 
    switch (dst_sh->Stage) {
-- 
2.7.4



More information about the mesa-dev mailing list