Browse Source

Sometimes the cl compiler generates zero sized binaries and only a reboot seems to fix it.

Con Kolivas 14 years ago
parent
commit
1c67f6068c
1 changed files with 4 additions and 0 deletions
  1. 4 0
      ocl.c

+ 4 - 0
ocl.c

@@ -510,6 +510,10 @@ build:
 	/* copy over all of the generated binaries. */
 	if (opt_debug)
 		applog(LOG_DEBUG, "binary size %d : %d", gpu, binary_sizes[gpu]);
+	if (!binary_sizes[gpu]) {
+		applog(LOG_ERR, "OpenCL compiler generated a zero sized binary, may need to reboot!");
+		return NULL;
+	}
 	binaries[gpu] = (char *)malloc( sizeof(char)*binary_sizes[gpu]);
 	status = clGetProgramInfo( clState->program, CL_PROGRAM_BINARIES, sizeof(char *)*nDevices, binaries, NULL );
 	if (unlikely(status != CL_SUCCESS))