Update cycles CMakeLists.txt so the user can customize the compile
options with a cached cmake variable CYCLES_CXX_FLAGS.
Add extract<n> specializations for uchar2 for cuda.
Fix redundant compile flags for cycles kernel compile
Vectorize bvh_triangle_refine
Add copysign test
Change multiple redundant calls to make_floatN to a single call and
reuse result
Fix BVH traversal tracing to be opencl compatible by avoiding variadic
macros
Reenable float3 for amd (not sure if that is okay yet), fix some missing
parentheses in some opencl macro changes that I made, allow native
copysign implementation for opencl by removing the casts of the
arguments, add missing invert_signs and rcp macros for opencl.
Vectorize linear_rgb_to_gray
Vectorize int-to-float conversion and normalization from 0-255 to
0.0f-1.0f in svm_image_texture_read
In kernel_shader_evaluate, use make_float_31 instead of assembling the
vector from individual member accesses.
Add some specialized vectorized float/int conversions and fix incorrect
reduce_add implementations
Update perlin implementation to pass around vectors instead of each
individual component, vectorize the use of floor and float to int
conversions, change some names for opencl compatibility, and use opencl
built-in fract.