7#ifndef __UTIL_TYPES_H__
8# error "Do not include this file directly, include util/types.h instead."
13#ifndef __KERNEL_NATIVE_VECTOR_TYPES__
38# ifndef __KERNEL_GPU__
57 return int4(_mm_set_epi32(
w,
z, y, x));
68 return int4(_mm_set1_epi32(i));
76#if defined(__KERNEL_GPU__)
78#elif defined(__KERNEL_SSE__)
79 return int4(_mm_cvtps_epi32(f.m128));
81 return make_int4((
int)f.
x, (
int)f.
y, (
int)f.
z, (
int)f.w);
88 return int4(_mm_cvtps_epi32(f.m128));
90 return make_int4((
int)f.x, (
int)f.y, (
int)f.z, (
int)f.w);
96#ifdef __KERNEL_PRINTF__
97 printf(
"%s: %d %d %d %d\n",
label, a.x, a.y, a.z, a.w);
SIMD_FORCE_INLINE const btScalar & z() const
Return the z value.
SIMD_FORCE_INLINE const btScalar & w() const
Return the w value.
const int & operator[](int i) const
#define util_assert(statement)
#define ccl_device_inline
#define CCL_NAMESPACE_END
ccl_device_inline void print_int4(ccl_private const char *label, const int4 a)
ccl_device_inline int4 make_int4(int x, int y, int z, int w)