diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-12-16 18:27:44 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-12-25 00:50:49 +0300 |
commit | ab8d9c4b8853755faa62307750d961dc2ec43708 (patch) | |
tree | 707d52530016e210d46375e2c1c0db432ae230b1 /intern/cycles/kernel/kernel_compat_cpu.h | |
parent | f770bc4757a2b471d5aaee048359096c1c79a6b2 (diff) |
Cycles: Add some utility functions and structures
Most of them are not currently used but are essential for the further work.
- CPU kernels with SSE2 support will now have sse3b, sse3f and sse3i
- Added templatedversions of min4, max4 which are handy to use with register
variables.
- Added util_swap function which gets arguments by pointers.
So hopefully it'll be a portable version of std::swap.
Diffstat (limited to 'intern/cycles/kernel/kernel_compat_cpu.h')
-rw-r--r-- | intern/cycles/kernel/kernel_compat_cpu.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/intern/cycles/kernel/kernel_compat_cpu.h b/intern/cycles/kernel/kernel_compat_cpu.h index 08c8bdd369d..2f0b78ea073 100644 --- a/intern/cycles/kernel/kernel_compat_cpu.h +++ b/intern/cycles/kernel/kernel_compat_cpu.h @@ -344,6 +344,12 @@ typedef texture_image<uchar4> texture_image_uchar4; #define kernel_data (kg->__data) +#ifdef __KERNEL_SSE2__ +typedef vector3<sseb> sse3b; +typedef vector3<ssef> sse3f; +typedef vector3<ssei> sse3i; +#endif + CCL_NAMESPACE_END #endif /* __KERNEL_COMPAT_CPU_H__ */ |