[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [42417] branches/bmesh/blender: svn merge ^/trunk/blender -r42372:42416
Campbell Barton
ideasman42 at gmail.com
Sun Dec 4 19:39:25 CET 2011
Revision: 42417
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=42417
Author: campbellbarton
Date: 2011-12-04 18:39:19 +0000 (Sun, 04 Dec 2011)
Log Message:
-----------
svn merge ^/trunk/blender -r42372:42416
Revision Links:
--------------
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=42372
Modified Paths:
--------------
branches/bmesh/blender/build_files/scons/config/win32-vc-config.py
branches/bmesh/blender/build_files/scons/config/win64-vc-config.py
branches/bmesh/blender/doc/python_api/sphinx_doc_gen.py
branches/bmesh/blender/extern/libmv/CMakeLists.txt
branches/bmesh/blender/extern/libmv/libmv-capi.cpp
branches/bmesh/blender/extern/libmv/libmv-capi.h
branches/bmesh/blender/intern/cycles/app/cycles_xml.cpp
branches/bmesh/blender/intern/cycles/blender/blender_shader.cpp
branches/bmesh/blender/intern/cycles/kernel/CMakeLists.txt
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/CMakeLists.txt
branches/bmesh/blender/intern/cycles/kernel/svm/svm.h
branches/bmesh/blender/intern/cycles/kernel/svm/svm_types.h
branches/bmesh/blender/intern/cycles/render/nodes.cpp
branches/bmesh/blender/intern/cycles/render/nodes.h
branches/bmesh/blender/intern/cycles/util/util_boundbox.h
branches/bmesh/blender/release/scripts/startup/bl_ui/properties_texture.py
branches/bmesh/blender/release/scripts/startup/bl_ui/space_clip.py
branches/bmesh/blender/source/blender/CMakeLists.txt
branches/bmesh/blender/source/blender/blenkernel/BKE_effect.h
branches/bmesh/blender/source/blender/blenkernel/BKE_group.h
branches/bmesh/blender/source/blender/blenkernel/BKE_object.h
branches/bmesh/blender/source/blender/blenkernel/intern/armature.c
branches/bmesh/blender/source/blender/blenkernel/intern/effect.c
branches/bmesh/blender/source/blender/blenkernel/intern/group.c
branches/bmesh/blender/source/blender/blenkernel/intern/ipo.c
branches/bmesh/blender/source/blender/blenkernel/intern/lattice.c
branches/bmesh/blender/source/blender/blenkernel/intern/library.c
branches/bmesh/blender/source/blender/blenkernel/intern/mesh.c
branches/bmesh/blender/source/blender/blenkernel/intern/multires.c
branches/bmesh/blender/source/blender/blenkernel/intern/object.c
branches/bmesh/blender/source/blender/blenkernel/intern/scene.c
branches/bmesh/blender/source/blender/blenkernel/intern/text.c
branches/bmesh/blender/source/blender/blenkernel/intern/tracking.c
branches/bmesh/blender/source/blender/blenlib/intern/bpath.c
branches/bmesh/blender/source/blender/blenlib/intern/math_matrix.c
branches/bmesh/blender/source/blender/blenloader/intern/readfile.c
branches/bmesh/blender/source/blender/editors/gpencil/drawgpencil.c
branches/bmesh/blender/source/blender/editors/interface/interface_templates.c
branches/bmesh/blender/source/blender/editors/mesh/mesh_data.c
branches/bmesh/blender/source/blender/editors/mesh/meshtools.c
branches/bmesh/blender/source/blender/editors/metaball/mball_edit.c
branches/bmesh/blender/source/blender/editors/object/object_bake.c
branches/bmesh/blender/source/blender/editors/object/object_edit.c
branches/bmesh/blender/source/blender/editors/object/object_transform.c
branches/bmesh/blender/source/blender/editors/space_clip/clip_ops.c
branches/bmesh/blender/source/blender/editors/space_clip/tracking_ops.c
branches/bmesh/blender/source/blender/editors/space_outliner/outliner_select.c
branches/bmesh/blender/source/blender/editors/space_sequencer/space_sequencer.c
branches/bmesh/blender/source/blender/editors/space_time/space_time.c
branches/bmesh/blender/source/blender/editors/transform/transform.h
branches/bmesh/blender/source/blender/editors/transform/transform_conversions.c
branches/bmesh/blender/source/blender/imbuf/intern/allocimbuf.c
branches/bmesh/blender/source/blender/imbuf/intern/thumbs.c
branches/bmesh/blender/source/blender/makesdna/DNA_action_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_camera_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_constraint_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_curve_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_key_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_lamp_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_lattice_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_material_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_mesh_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_meta_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_modifier_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_node_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_object_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_particle_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_scene_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_sequence_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_space_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_texture_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_tracking_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_userdef_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_view3d_types.h
branches/bmesh/blender/source/blender/makesdna/DNA_world_types.h
branches/bmesh/blender/source/blender/makesdna/intern/makesdna.c
branches/bmesh/blender/source/blender/makesrna/intern/rna_brush.c
branches/bmesh/blender/source/blender/makesrna/intern/rna_lamp.c
branches/bmesh/blender/source/blender/makesrna/intern/rna_material.c
branches/bmesh/blender/source/blender/makesrna/intern/rna_object.c
branches/bmesh/blender/source/blender/makesrna/intern/rna_particle.c
branches/bmesh/blender/source/blender/makesrna/intern/rna_sculpt_paint.c
branches/bmesh/blender/source/blender/makesrna/intern/rna_sensor.c
branches/bmesh/blender/source/blender/makesrna/intern/rna_sequencer.c
branches/bmesh/blender/source/blender/makesrna/intern/rna_tracking.c
branches/bmesh/blender/source/blender/modifiers/intern/MOD_mirror.c
branches/bmesh/blender/source/blender/nodes/shader/nodes/node_shader_invert.c
branches/bmesh/blender/source/blender/render/intern/source/convertblender.c
branches/bmesh/blender/source/blender/render/intern/source/pipeline.c
Added Paths:
-----------
branches/bmesh/blender/extern/libmv/libmv/tracking/brute_region_tracker.cc
branches/bmesh/blender/extern/libmv/libmv/tracking/brute_region_tracker.h
branches/bmesh/blender/extern/libmv/libmv/tracking/hybrid_region_tracker.cc
branches/bmesh/blender/extern/libmv/libmv/tracking/hybrid_region_tracker.h
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_invert.osl
branches/bmesh/blender/intern/cycles/kernel/svm/svm_invert.h
branches/bmesh/blender/source/blender/makesdna/DNA_defs.h
Property Changed:
----------------
branches/bmesh/blender/
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_add_closure.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_attribute.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_background.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_blend_texture.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_blend_weight.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_bump.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_clouds_texture.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_convert_from_color.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_convert_from_float.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_convert_from_normal.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_convert_from_point.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_convert_from_vector.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_diffuse_bsdf.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_distorted_noise_texture.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_emission.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_environment_texture.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_fresnel.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_geometry.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_glass_bsdf.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_glossy_bsdf.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_holdout.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_hsv.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_image_texture.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_light_path.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_magic_texture.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_mapping.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_marble_texture.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_math.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_mix.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_mix_closure.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_musgrave_texture.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_noise_texture.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_output_displacement.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_output_surface.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_output_volume.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_sky_texture.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_stucci_texture.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_texture_coordinate.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_translucent_bsdf.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_transparent_bsdf.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_value.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_vector_math.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_velvet_bsdf.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_voronoi_texture.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_ward_bsdf.osl
branches/bmesh/blender/intern/cycles/kernel/osl/nodes/node_wood_texture.osl
branches/bmesh/blender/intern/cycles/kernel/svm/svm_hsv.h
branches/bmesh/blender/release/
branches/bmesh/blender/source/blender/editors/space_outliner/
Property changes on: branches/bmesh/blender
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/soc-2011-cucumber:37517
/trunk/blender:39992-42372
+ /branches/soc-2011-cucumber:37517
/branches/soc-2011-tomato:42376,42378-42379
/trunk/blender:39992-42416
Modified: branches/bmesh/blender/build_files/scons/config/win32-vc-config.py
===================================================================
--- branches/bmesh/blender/build_files/scons/config/win32-vc-config.py 2011-12-04 17:36:13 UTC (rev 42416)
+++ branches/bmesh/blender/build_files/scons/config/win32-vc-config.py 2011-12-04 18:39:19 UTC (rev 42417)
@@ -165,6 +165,11 @@
BF_BOOST_LIB = 'libboost_date_time-vc90-mt-s-1_47 libboost_filesystem-vc90-mt-s-1_47 libboost_regex-vc90-mt-s-1_47 libboost_system-vc90-mt-s-1_47 libboost_thread-vc90-mt-s-1_47'
BF_BOOST_LIBPATH = '${BF_BOOST}/lib'
+#CUDA
+WITH_BF_CYCLES_CUDA_BINARIES = False
+#BF_CYCLES_CUDA_NVCC = "" # Path to the nvidia compiler
+BF_CYCLES_CUDA_BINARIES_ARCH = ['sm_13', 'sm_20', 'sm_21']
+
#Ray trace optimization
WITH_BF_RAYOPTIMIZATION = True
BF_RAYOPTIMIZATION_SSE_FLAGS = ['/arch:SSE']
Modified: branches/bmesh/blender/build_files/scons/config/win64-vc-config.py
===================================================================
--- branches/bmesh/blender/build_files/scons/config/win64-vc-config.py 2011-12-04 17:36:13 UTC (rev 42416)
+++ branches/bmesh/blender/build_files/scons/config/win64-vc-config.py 2011-12-04 18:39:19 UTC (rev 42417)
@@ -154,6 +154,7 @@
WITH_BF_OPENMP = True
+#Cycles
WITH_BF_CYCLES = True
WITH_BF_OIIO = True
@@ -169,6 +170,11 @@
BF_BOOST_LIB = 'libboost_date_time-vc90-mt-s-1_47 libboost_filesystem-vc90-mt-s-1_47 libboost_regex-vc90-mt-s-1_47 libboost_system-vc90-mt-s-1_47 libboost_thread-vc90-mt-s-1_47'
BF_BOOST_LIBPATH = '${BF_BOOST}/lib'
+#CUDA
+WITH_BF_CYCLES_CUDA_BINARIES = False
+#BF_CYCLES_CUDA_NVCC = "" # Path to the nvidia compiler
+BF_CYCLES_CUDA_BINARIES_ARCH = ['sm_13', 'sm_20', 'sm_21']
+
#Ray trace optimization
WITH_BF_RAYOPTIMIZATION = True
BF_RAYOPTIMIZATION_SSE_FLAGS = ['/arch:SSE','/arch:SSE2']
Modified: branches/bmesh/blender/doc/python_api/sphinx_doc_gen.py
===================================================================
--- branches/bmesh/blender/doc/python_api/sphinx_doc_gen.py 2011-12-04 17:36:13 UTC (rev 42416)
+++ branches/bmesh/blender/doc/python_api/sphinx_doc_gen.py 2011-12-04 18:39:19 UTC (rev 42417)
@@ -87,6 +87,7 @@
"gpu",
"mathutils",
"mathutils.geometry",
+ "mathutils.noise",
)
FILTER_BPY_TYPES = ("bpy_struct", "Operator", "ID") # allow
@@ -1190,6 +1191,8 @@
fw(" mathutils.rst\n\n")
if "mathutils.geometry" not in EXCLUDE_MODULES:
fw(" mathutils.geometry.rst\n\n")
+ if "mathutils.noise" not in EXCLUDE_MODULES:
+ fw(" mathutils.noise.rst\n\n")
if "bgl" not in EXCLUDE_MODULES:
fw(" bgl.rst\n\n")
if "blf" not in EXCLUDE_MODULES:
@@ -1329,6 +1332,10 @@
import mathutils.geometry as module
pymodule2sphinx(BASEPATH, "mathutils.geometry", module, "Geometry Utilities")
+ if "mathutils.noise" not in EXCLUDE_MODULES:
+ import mathutils.noise as module
+ pymodule2sphinx(BASEPATH, "mathutils.noise", module, "Noise Utilities")
+
if "blf" not in EXCLUDE_MODULES:
import blf as module
pymodule2sphinx(BASEPATH, "blf", module, "Font Drawing")
Modified: branches/bmesh/blender/extern/libmv/CMakeLists.txt
===================================================================
--- branches/bmesh/blender/extern/libmv/CMakeLists.txt 2011-12-04 17:36:13 UTC (rev 42416)
+++ branches/bmesh/blender/extern/libmv/CMakeLists.txt 2011-12-04 18:39:19 UTC (rev 42417)
@@ -53,6 +53,8 @@
libmv/image/array_nd.cc
libmv/tracking/pyramid_region_tracker.cc
libmv/tracking/sad.cc
+ libmv/tracking/brute_region_tracker.cc
+ libmv/tracking/hybrid_region_tracker.cc
libmv/tracking/esm_region_tracker.cc
libmv/tracking/trklt_region_tracker.cc
libmv/tracking/klt_region_tracker.cc
@@ -100,6 +102,8 @@
libmv/image/sample.h
libmv/image/image.h
libmv/tracking/region_tracker.h
+ libmv/tracking/brute_region_tracker.h
+ libmv/tracking/hybrid_region_tracker.h
libmv/tracking/retrack_region_tracker.h
libmv/tracking/sad.h
libmv/tracking/pyramid_region_tracker.h
Copied: branches/bmesh/blender/extern/libmv/libmv/tracking/brute_region_tracker.cc (from rev 42416, trunk/blender/extern/libmv/libmv/tracking/brute_region_tracker.cc)
===================================================================
--- branches/bmesh/blender/extern/libmv/libmv/tracking/brute_region_tracker.cc (rev 0)
+++ branches/bmesh/blender/extern/libmv/libmv/tracking/brute_region_tracker.cc 2011-12-04 18:39:19 UTC (rev 42417)
@@ -0,0 +1,331 @@
+// Copyright (c) 2011 libmv authors.
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to
+// deal in the Software without restriction, including without limitation the
+// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+// sell copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+// IN THE SOFTWARE.
+
+#include "libmv/tracking/brute_region_tracker.h"
+
+#ifdef __SSE2__
+#include <emmintrin.h>
+#endif
+
+#ifndef __APPLE__
+// Needed for memalign on Linux and _aligned_alloc on Windows.
+#ifdef FREE_WINDOWS
+/* make sure _aligned_malloc is included */
+#ifdef __MSVCRT_VERSION__
+#undef __MSVCRT_VERSION__
+#endif
+
+#define __MSVCRT_VERSION__ 0x0700
+#endif
+
+#include <malloc.h>
+#else
+// Apple's malloc is 16-byte aligned, and does not have malloc.h, so include
+// stdilb instead.
+#include <cstdlib>
+#endif
+
+#include "libmv/image/image.h"
+#include "libmv/image/convolve.h"
+#include "libmv/image/sample.h"
+#include "libmv/logging/logging.h"
+
+namespace libmv {
+namespace {
+
+// TODO(keir): It's stupid that this is needed here. Push this somewhere else.
+void *aligned_malloc(int size, int alignment) {
+#ifdef _WIN32
+ return _aligned_malloc(size, alignment);
+#elif __APPLE__
+ // On Mac OS X, both the heap and the stack are guaranteed 16-byte aligned so
+ // they work natively with SSE types with no further work.
+ CHECK_EQ(alignment, 16);
+ return malloc(size);
+#else // This is for Linux.
+ return memalign(alignment, size);
+#endif
+}
+
+void aligned_free(void *ptr) {
+#ifdef _WIN32
+ _aligned_free(ptr);
+#else
+ free(ptr);
+#endif
+}
+
+bool RegionIsInBounds(const FloatImage &image1,
+ double x, double y,
+ int half_window_size) {
+ // Check the minimum coordinates.
+ int min_x = floor(x) - half_window_size - 1;
+ int min_y = floor(y) - half_window_size - 1;
+ if (min_x < 0.0 ||
+ min_y < 0.0) {
+ return false;
+ }
+
+ // Check the maximum coordinates.
+ int max_x = ceil(x) + half_window_size + 1;
+ int max_y = ceil(y) + half_window_size + 1;
+ if (max_x > image1.cols() ||
+ max_y > image1.rows()) {
+ return false;
+ }
+
+ // Ok, we're good.
+ return true;
+}
+
+#ifdef __SSE2__
+
+// Compute the sub of absolute differences between the arrays "a" and "b".
+// The array "a" is assumed to be 16-byte aligned, while "b" is not. The
+// result is returned as the first and third elements of __m128i if
+// interpreted as a 4-element 32-bit integer array. The SAD is the sum of the
+// elements.
+//
+// The function requires size % 16 valid extra elements at the end of both "a"
+// and "b", since the SSE load instructionst will pull in memory past the end
+// of the arrays if their size is not a multiple of 16.
+inline static __m128i SumOfAbsoluteDifferencesContiguousSSE(
+ const unsigned char *a, // aligned
+ const unsigned char *b, // not aligned
+ unsigned int size,
+ __m128i sad) {
+ // Do the bulk of the work as 16-way integer operations.
+ for(unsigned int j = 0; j < size / 16; j++) {
+ sad = _mm_add_epi32(sad, _mm_sad_epu8( _mm_load_si128 ((__m128i*)(a + 16 * j)),
+ _mm_loadu_si128((__m128i*)(b + 16 * j))));
+ }
+ // Handle the trailing end.
+ // TODO(keir): Benchmark to verify that the below SSE is a win compared to a
+ // hand-rolled loop. It's not clear that the hand rolled loop would be slower
+ // than the potential cache miss when loading the immediate table below.
+ //
+ // An alternative to this version is to take a packet of all 1's then do a
+ // 128-bit shift. The issue is that the shift instruction needs an immediate
+ // amount rather than a variable amount, so the branch instruction here must
+ // remain. See _mm_srli_si128 and _mm_slli_si128.
+ unsigned int remainder = size % 16u;
+ if (remainder) {
+ unsigned int j = size / 16;
+ __m128i a_trail = _mm_load_si128 ((__m128i*)(a + 16 * j));
+ __m128i b_trail = _mm_loadu_si128((__m128i*)(b + 16 * j));
+ __m128i mask;
+ switch (remainder) {
+#define X 0xff
+ case 1: mask = _mm_setr_epi8(X, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); break;
+ case 2: mask = _mm_setr_epi8(X, X, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); break;
+ case 3: mask = _mm_setr_epi8(X, X, X, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); break;
+ case 4: mask = _mm_setr_epi8(X, X, X, X, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); break;
+ case 5: mask = _mm_setr_epi8(X, X, X, X, X, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); break;
+ case 6: mask = _mm_setr_epi8(X, X, X, X, X, X, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); break;
+ case 7: mask = _mm_setr_epi8(X, X, X, X, X, X, X, 0, 0, 0, 0, 0, 0, 0, 0, 0); break;
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list