14 const uint inputs_stack_offsets,
15 const uint result_stack_offset)
33 const uint inputs_stack_offsets,
34 const uint outputs_stack_offsets,
37 uint value_stack_offset;
38 uint vector_stack_offset;
41 uint param1_stack_offset;
43 inputs_stack_offsets, &a_stack_offset, &b_stack_offset, ¶m1_stack_offset);
@ NODE_VECTOR_MATH_FACEFORWARD
@ NODE_VECTOR_MATH_MULTIPLY_ADD
ccl_device_inline float stack_load_float(const ccl_private float *stack, const uint a)
ccl_device_inline void stack_store_float(ccl_private float *stack, const uint a, const float f)
ccl_device_inline uint4 read_node(KernelGlobals kg, ccl_private int *const offset)
ccl_device_inline void stack_store_float3(ccl_private float *stack, const uint a, const float3 f)
ccl_device_forceinline void svm_unpack_node_uchar2(const uint i, ccl_private uint *x, ccl_private uint *y)
ccl_device_forceinline void svm_unpack_node_uchar3(const uint i, ccl_private uint *x, ccl_private uint *y, ccl_private uint *z)
ccl_device_inline bool stack_valid(const uint a)
CCL_NAMESPACE_BEGIN ccl_device_inline float3 stack_load_float3(const ccl_private float *stack, const uint a)
const ThreadKernelGlobalsCPU * KernelGlobals
#define ccl_device_noinline
#define CCL_NAMESPACE_END
ccl_device_noinline int svm_node_vector_math(KernelGlobals kg, ccl_private float *stack, const uint type, const uint inputs_stack_offsets, const uint outputs_stack_offsets, int offset)
CCL_NAMESPACE_BEGIN ccl_device_noinline void svm_node_math(ccl_private float *stack, const uint type, const uint inputs_stack_offsets, const uint result_stack_offset)
CCL_NAMESPACE_BEGIN ccl_device void svm_vector_math(ccl_private float *value, ccl_private float3 *vector, NodeVectorMathType type, const float3 a, const float3 b, const float3 c, float param1)
ccl_device float svm_math(NodeMathType type, const float a, float b, const float c)