Loading...
Searching...
No Matches
14#if defined(SYCL_LANGUAGE_VERSION) || defined(CL_SYCL_LANGUAGE_VERSION)
15#define VECMEM_PRINTF VECMEM_SYCL_PRINTF_FUNCTION
17#define VECMEM_PRINTF printf
22#ifndef VECMEM_MSG_ATTRIBUTES
23#ifdef __SYCL_DEVICE_ONLY__
24#define VECMEM_MSG_ATTRIBUTES __attribute__((opencl_constant))
26#define VECMEM_MSG_ATTRIBUTES
31#ifndef VECMEM_DEBUG_MSG_LVL
32#define VECMEM_DEBUG_MSG_LVL 0
36#ifndef VECMEM_SOURCE_DIR_LENGTH
37#define VECMEM_SOURCE_DIR_LENGTH 0
46#define __VECMEM_PRINT_MSG(MSG, ...) \
48 const VECMEM_MSG_ATTRIBUTES char __msg[] = MSG; \
49 VECMEM_PRINTF(__msg, __VA_ARGS__); \
53#if VECMEM_DEBUG_MSG_LVL >= 1
54#define __VECMEM_PRINT_1(MSG, ...) __VECMEM_PRINT_MSG(MSG, __VA_ARGS__)
56#define __VECMEM_PRINT_1(MSG, ...)
60#if VECMEM_DEBUG_MSG_LVL >= 2
61#define __VECMEM_PRINT_2(MSG, ...) __VECMEM_PRINT_MSG(MSG, __VA_ARGS__)
63#define __VECMEM_PRINT_2(MSG, ...)
67#if VECMEM_DEBUG_MSG_LVL >= 3
68#define __VECMEM_PRINT_3(MSG, ...) __VECMEM_PRINT_MSG(MSG, __VA_ARGS__)
70#define __VECMEM_PRINT_3(MSG, ...)
74#if VECMEM_DEBUG_MSG_LVL >= 4
75#define __VECMEM_PRINT_4(MSG, ...) __VECMEM_PRINT_MSG(MSG, __VA_ARGS__)
77#define __VECMEM_PRINT_4(MSG, ...)
81#if VECMEM_DEBUG_MSG_LVL >= 5
82#define __VECMEM_PRINT_5(MSG, ...) __VECMEM_PRINT_MSG(MSG, __VA_ARGS__)
84#define __VECMEM_PRINT_5(MSG, ...)
92#if defined(_MSC_VER) && (!defined(__clang__))
103#define VECMEM_DEBUG_MSG(LVL, MSG, ...) \
104 __VECMEM_PRINT_##LVL( \
105 "[vecmem] %s:%i " MSG "\n", \
106 (static_cast<const char*>(__FILE__) + VECMEM_SOURCE_DIR_LENGTH), \
107 __LINE__, __VA_ARGS__)
112#define __VECMEM_DEBUG_MSG(LVL, MSG, ...) \
113 __VECMEM_PRINT_##LVL( \
114 "[vecmem] %s:%i " MSG "\n%s", \
115 (static_cast<const char*>(__FILE__) + VECMEM_SOURCE_DIR_LENGTH), \
116 __LINE__, __VA_ARGS__)
127#define VECMEM_DEBUG_MSG(LVL, ...) __VECMEM_DEBUG_MSG(LVL, __VA_ARGS__, "")