i965/fs: Get rid of the early return in brw_compile_cs
authorJason Ekstrand <jason.ekstrand@intel.com>
Tue, 7 Nov 2017 00:29:42 +0000 (16:29 -0800)
committerJason Ekstrand <jason.ekstrand@intel.com>
Tue, 7 Nov 2017 18:37:52 +0000 (10:37 -0800)
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/intel/compiler/brw_fs.cpp

index c0b6047b9547f84d6c51044d4d9610a6603d91cb..996e4c6a5f1ae90f44ea91cb891cbe9fac631541 100644 (file)
@@ -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;
 }
 
 /**