diff --git a/src/fft_setup.cpp b/src/fft_setup.cpp index b014ea7e9326e8db48c6c5bb0130eb65e503134e..6b23db1a599942e41eb698eb13a319f9dc9b6789 100644 --- a/src/fft_setup.cpp +++ b/src/fft_setup.cpp @@ -72,6 +72,10 @@ #include <cmath> #include <limits.h> +#ifndef CLFFT_COMPILE_OPTIONS +#define CLFFT_COMPILE_OPTIONS "-cl-mad-enable -cl-single-precision-constant" +#endif + using namespace std; extern void getKernelWorkDimensions(cl_fft_plan *plan, cl_fft_kernel_info *kernelInfo, cl_int *batchSize, size_t *gWorkItems, size_t *lWorkItems); @@ -434,7 +438,7 @@ patch_kernel_source: err = clGetDeviceInfo(devices[i], CL_DEVICE_TYPE, sizeof(device_type), &device_type, NULL); ERR_MACRO(err); - err = clBuildProgram(plan->program, 1, &devices[i], "-cl-mad-enable -cl-single-precision-constant", NULL, NULL); + err = clBuildProgram(plan->program, 1, &devices[i], CLFFT_COMPILE_OPTIONS, NULL, NULL); if (err != CL_SUCCESS) { char *build_log;