diff options
-rw-r--r-- | src/intel/compiler/brw_fs.cpp | 27 |
1 files changed, 14 insertions, 13 deletions
diff --git a/src/intel/compiler/brw_fs.cpp b/src/intel/compiler/brw_fs.cpp index c0b6047b954..996e4c6a5f1 100644 --- a/src/intel/compiler/brw_fs.cpp +++ b/src/intel/compiler/brw_fs.cpp @@ -6925,27 +6925,28 @@ brw_compile_cs(const struct brw_compiler *compiler, void *log_data, } } + const unsigned *ret = NULL; if (unlikely(cfg == NULL)) { assert(fail_msg); if (error_str) *error_str = ralloc_strdup(mem_ctx, fail_msg); + } else { + fs_generator g(compiler, log_data, mem_ctx, (void*) key, &prog_data->base, + v8.promoted_constants, false, MESA_SHADER_COMPUTE); + if (INTEL_DEBUG & DEBUG_CS) { + char *name = ralloc_asprintf(mem_ctx, "%s compute shader %s", + shader->info.label ? shader->info.label : + "unnamed", + shader->info.name); + g.enable_debug(name); + } - return NULL; - } + g.generate_code(cfg, prog_data->simd_size); - fs_generator g(compiler, log_data, mem_ctx, (void*) key, &prog_data->base, - v8.promoted_constants, false, MESA_SHADER_COMPUTE); - if (INTEL_DEBUG & DEBUG_CS) { - char *name = ralloc_asprintf(mem_ctx, "%s compute shader %s", - shader->info.label ? shader->info.label : - "unnamed", - shader->info.name); - g.enable_debug(name); + ret = g.get_assembly(&prog_data->base.program_size); } - g.generate_code(cfg, prog_data->simd_size); - - return g.get_assembly(&prog_data->base.program_size); + return ret; } /** |