11#ifndef __KERNEL_NATIVE_VECTOR_TYPES__
51# ifndef __KERNEL_GPU__
70# if defined(__KERNEL_GPU__)
72# elif defined(__KERNEL_SSE__)
73 return int3(_mm_set_epi32(0,
z,
y,
x));
83#if defined(__KERNEL_GPU__)
85#elif defined(__KERNEL_SSE__)
86 return int3(_mm_set1_epi32(
i));
94#ifdef __KERNEL_PRINTF__
95 printf(
"%s: %d %d %d\n", label, a.
x, a.
y, a.
z);
99#if defined(__KERNEL_METAL__)
101#elif defined(__KERNEL_CUDA__) || defined(__KERNEL_ONEAPI__)
112 :
x(px),
y(py),
z(pz){};
129# ifndef __KERNEL_GPU__
144static_assert(
sizeof(
packed_int3) == 12,
"packed_int3 expected to be exactly 12 bytes");
btGeneric6DofConstraint & operator=(btGeneric6DofConstraint &other)
SIMD_FORCE_INLINE btVector3 & operator[](int i)
Get a mutable reference to a row of the matrix as a vector.
SIMD_FORCE_INLINE const btScalar & z() const
Return the z value.
SIMD_FORCE_INLINE const btScalar & w() const
Return the w value.
#define util_assert(statement)
#define ccl_device_inline
#define ccl_try_align(...)
#define ccl_device_inline_method
#define CCL_NAMESPACE_END
ccl_device_inline_method packed_int3 & operator=(const int3 &a)
ccl_device_inline_method packed_int3(const int3 &a)
ccl_device_inline_method packed_int3(const int px, const int py, const int pz)
__forceinline int & operator[](int i)
__forceinline int operator[](int i) const
ccl_device_inline_method packed_int3()=default
ccl_device_inline int3 make_int3(const int x, const int y, int z)
ccl_device_inline void print_int3(const ccl_private char *label, const int3 a)
ccl_device_inline packed_int3 make_packed_int3(const int x, const int y, int z)