[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [56825] trunk/blender/extern/libmv/libmv/ tracking: Libmv internal compiler error workaround for VC2012.

Juergen Herrmann shadowrom at me.com
Wed May 15 19:00:54 CEST 2013


Revision: 56825
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=56825
Author:   shadowrom
Date:     2013-05-15 17:00:53 +0000 (Wed, 15 May 2013)
Log Message:
-----------
Libmv internal compiler error workaround for VC2012.
Will be reverted as soon as the x64 compiler is fixed.
For now it shouldn't have an impact on tracking performance. My test have shown no significant speed difference to official VC2008 build of 2.67.

Modified Paths:
--------------
    trunk/blender/extern/libmv/libmv/tracking/esm_region_tracker.cc
    trunk/blender/extern/libmv/libmv/tracking/lmicklt_region_tracker.cc

Modified: trunk/blender/extern/libmv/libmv/tracking/esm_region_tracker.cc
===================================================================
--- trunk/blender/extern/libmv/libmv/tracking/esm_region_tracker.cc	2013-05-15 15:52:48 UTC (rev 56824)
+++ trunk/blender/extern/libmv/libmv/tracking/esm_region_tracker.cc	2013-05-15 17:00:53 UTC (rev 56825)
@@ -61,6 +61,13 @@
   return true;
 }
 
+/* Ugly but necessary fix for compilation on VS2012
+/* this file causes an Internal Compiler Error */
+// TODO: check regularly if ICE is fixed by MS!
+#if (_MSC_VER >= 1700 && _WIN64)
+#pragma optimize("s", on)
+#endif
+
 // This is implemented from "Lukas and Kanade 20 years on: Part 1. Page 42,
 // figure 14: the Levenberg-Marquardt-Inverse Compositional Algorithm".
 bool EsmRegionTracker::Track(const FloatImage &image1,

Modified: trunk/blender/extern/libmv/libmv/tracking/lmicklt_region_tracker.cc
===================================================================
--- trunk/blender/extern/libmv/libmv/tracking/lmicklt_region_tracker.cc	2013-05-15 15:52:48 UTC (rev 56824)
+++ trunk/blender/extern/libmv/libmv/tracking/lmicklt_region_tracker.cc	2013-05-15 17:00:53 UTC (rev 56825)
@@ -52,6 +52,13 @@
   return true;
 }
 
+/* Ugly but necessary fix for compilation on VS2012
+/* this file causes an Internal Compiler Error */
+// TODO: check regularly if ICE is fixed by MS!
+#if (_MSC_VER >= 1700 && _WIN64)
+#pragma optimize("s", on)
+#endif
+
 // Estimate "reasonable" error by computing autocorrelation for a small shift.
 static double EstimateReasonableError(const FloatImage &image,
                                double x, double y,




More information about the Bf-blender-cvs mailing list