| | #pragma once |
| |
|
| | |
| | #include "OpenCLUtils_Export.h" |
| |
|
| | |
| | #include <CL/Utils/ErrorCodes.h> |
| |
|
| | |
| | #include <stdio.h> |
| |
|
| | |
| | #include <CL/cl.h> |
| |
|
| | |
| | |
| |
|
| | #ifdef _DEBUG |
| |
|
| | #define OCLERROR_RET(func, err, label) \ |
| | do \ |
| | { \ |
| | err = func; \ |
| | if (err != CL_SUCCESS) \ |
| | { \ |
| | cl_util_print_error(err); \ |
| | fprintf(stderr, "on line %d, in file %s\n%s\n", __LINE__, \ |
| | __FILE__, #func); \ |
| | goto label; \ |
| | } \ |
| | } while (0) |
| |
|
| | #define OCLERROR_PAR(func, err, label) \ |
| | do \ |
| | { \ |
| | func; \ |
| | if (err != CL_SUCCESS) \ |
| | { \ |
| | cl_util_print_error(err); \ |
| | fprintf(stderr, "on line %d, in file %s\n%s\n", __LINE__, \ |
| | __FILE__, #func); \ |
| | goto label; \ |
| | } \ |
| | } while (0) |
| |
|
| | #define MEM_CHECK(func, err, label) \ |
| | do \ |
| | { \ |
| | if ((func) == NULL) \ |
| | { \ |
| | err = CL_OUT_OF_HOST_MEMORY; \ |
| | cl_util_print_error(err); \ |
| | fprintf(stderr, "on line %d, in file %s\n%s\n", __LINE__, \ |
| | __FILE__, #func); \ |
| | goto label; \ |
| | } \ |
| | } while (0) |
| |
|
| | #else |
| |
|
| | #define OCLERROR_RET(func, err, label) \ |
| | do \ |
| | { \ |
| | err = func; \ |
| | if (err != CL_SUCCESS) goto label; \ |
| | } while (0) |
| |
|
| | #define OCLERROR_PAR(func, err, label) \ |
| | do \ |
| | { \ |
| | func; \ |
| | if (err != CL_SUCCESS) goto label; \ |
| | } while (0) |
| |
|
| | #define MEM_CHECK(func, err, label) \ |
| | do \ |
| | { \ |
| | if ((func) == NULL) \ |
| | { \ |
| | err = CL_OUT_OF_HOST_MEMORY; \ |
| | goto label; \ |
| | } \ |
| | } while (0) |
| |
|
| | #endif |
| |
|
| | UTILS_EXPORT |
| | void cl_util_print_error(cl_int error); |
| |
|