diff options
Diffstat (limited to 'intern/cycles/kernel/kernels/cpu/kernel.cpp')
-rw-r--r-- | intern/cycles/kernel/kernels/cpu/kernel.cpp | 65 |
1 files changed, 12 insertions, 53 deletions
diff --git a/intern/cycles/kernel/kernels/cpu/kernel.cpp b/intern/cycles/kernel/kernels/cpu/kernel.cpp index 2c8d3503c1a..5c6dc31b949 100644 --- a/intern/cycles/kernel/kernels/cpu/kernel.cpp +++ b/intern/cycles/kernel/kernels/cpu/kernel.cpp @@ -16,15 +16,19 @@ /* CPU kernel entry points */ -#include "kernel_compat_cpu.h" +/* On x86-64, we can assume SSE2, so avoid the extra kernel and compile this one with SSE2 intrinsics */ +#if defined(__x86_64__) || defined(_M_X64) +#define __KERNEL_SSE2__ +#endif + +/* quiet unused define warnings */ +#if defined(__KERNEL_SSE2__) + /* do nothing */ +#endif + #include "kernel.h" -#include "kernel_math.h" -#include "kernel_types.h" -#include "kernel_globals.h" -#include "kernel_film.h" -#include "kernel_path.h" -#include "kernel_path_branched.h" -#include "kernel_bake.h" +#define KERNEL_ARCH cpu +#include "kernel_cpu_impl.h" CCL_NAMESPACE_BEGIN @@ -94,49 +98,4 @@ void kernel_tex_copy(KernelGlobals *kg, assert(0); } -/* On x86-64, we can assume SSE2, so avoid the extra kernel and compile this one with SSE2 intrinsics */ -#if defined(__x86_64__) || defined(_M_X64) -#define __KERNEL_SSE2__ -#endif - -/* quiet unused define warnings */ -#if defined(__KERNEL_SSE2__) - /* do nothing */ -#endif - -/* Path Tracing */ - -void kernel_cpu_path_trace(KernelGlobals *kg, float *buffer, unsigned int *rng_state, int sample, int x, int y, int offset, int stride) -{ -#ifdef __BRANCHED_PATH__ - if(kernel_data.integrator.branched) - kernel_branched_path_trace(kg, buffer, rng_state, sample, x, y, offset, stride); - else -#endif - kernel_path_trace(kg, buffer, rng_state, sample, x, y, offset, stride); -} - -/* Film */ - -void kernel_cpu_convert_to_byte(KernelGlobals *kg, uchar4 *rgba, float *buffer, float sample_scale, int x, int y, int offset, int stride) -{ - kernel_film_convert_to_byte(kg, rgba, buffer, sample_scale, x, y, offset, stride); -} - -void kernel_cpu_convert_to_half_float(KernelGlobals *kg, uchar4 *rgba, float *buffer, float sample_scale, int x, int y, int offset, int stride) -{ - kernel_film_convert_to_half_float(kg, rgba, buffer, sample_scale, x, y, offset, stride); -} - -/* Shader Evaluation */ - -void kernel_cpu_shader(KernelGlobals *kg, uint4 *input, float4 *output, int type, int i, int offset, int sample) -{ - if(type >= SHADER_EVAL_BAKE) - kernel_bake_evaluate(kg, input, output, (ShaderEvalType)type, i, offset, sample); - else - kernel_shader_evaluate(kg, input, output, (ShaderEvalType)type, i, sample); -} - CCL_NAMESPACE_END - |