gallium: add AMD-specific compute TGSI enums
[mesa.git] / src / gallium / drivers / radeonsi / si_compute.c
index 4d701e1b81fc63d433e248bc1000f230bbeae832..22975069c999be515daf341c9d3031e9c8910a78 100644 (file)
@@ -145,7 +145,7 @@ static void si_create_compute_state_async(void *job, int thread_index)
                sel->info.uses_block_size &&
                sel->info.properties[TGSI_PROPERTY_CS_FIXED_BLOCK_WIDTH] == 0;
        program->num_cs_user_data_dwords =
-               sel->info.properties[TGSI_PROPERTY_CS_USER_DATA_DWORDS];
+               sel->info.properties[TGSI_PROPERTY_CS_USER_DATA_COMPONENTS_AMD];
 
        void *ir_binary = si_get_ir_binary(sel);
 
@@ -953,6 +953,7 @@ void si_destroy_compute(struct si_compute *program)
        }
 
        si_shader_destroy(&program->shader);
+       ralloc_free(program->sel.nir);
        FREE(program);
 }
 
@@ -969,7 +970,6 @@ static void si_delete_compute_state(struct pipe_context *ctx, void* state){
        if (program == sctx->cs_shader_state.emitted_program)
                sctx->cs_shader_state.emitted_program = NULL;
 
-       ralloc_free(program->sel.nir);
        si_compute_reference(&program, NULL);
 }