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.
This commit is contained in:
2013-05-15 17:00:53 +00:00
parent 65dcc6ad4f
commit 8a89d27b87
2 changed files with 14 additions and 0 deletions

View File

@@ -61,6 +61,13 @@ static bool RegionIsInBounds(const FloatImage &image1,
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,

View File

@@ -52,6 +52,13 @@ static bool RegionIsInBounds(const FloatImage &image1,
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,