24 # define ccl_device_intersect ccl_device_forceinline
26 # define ccl_device_intersect ccl_device_inline
30 #define ENTRYPOINT_SENTINEL 0x76543210
33 #define BVH_STACK_SIZE 192
39 #define BVH_NAME_JOIN(x, y) x##_##y
40 #define BVH_NAME_EVAL(x, y) BVH_NAME_JOIN(x, y)
41 #define BVH_FUNCTION_FULL_NAME(prefix) BVH_NAME_EVAL(prefix, BVH_FUNCTION_NAME)
43 #define BVH_FEATURE(f) (((BVH_FUNCTION_FEATURES) & (f)) != 0)
46 #ifdef __KERNEL_DEBUG__
47 # define BVH_DEBUG_INIT() \
49 isect->num_traversed_nodes = 0; \
50 isect->num_traversed_instances = 0; \
51 isect->num_intersections = 0; \
53 # define BVH_DEBUG_NEXT_NODE() \
55 ++isect->num_traversed_nodes; \
57 # define BVH_DEBUG_NEXT_INTERSECTION() \
59 ++isect->num_intersections; \
61 # define BVH_DEBUG_NEXT_INSTANCE() \
63 ++isect->num_traversed_instances; \
66 # define BVH_DEBUG_INIT()
67 # define BVH_DEBUG_NEXT_NODE()
68 # define BVH_DEBUG_NEXT_INTERSECTION()
69 # define BVH_DEBUG_NEXT_INSTANCE()
#define CCL_NAMESPACE_END