From 16d1bbf2ea7ae37b65b307d8896715fe9974a047 Mon Sep 17 00:00:00 2001 From: Alexander Alekhin Date: Tue, 27 Jun 2017 09:04:50 +0300 Subject: [PATCH] dnn: fix build - winpack - opencv_world --- modules/dnn/src/halide_scheduler.cpp | 1 + modules/dnn/src/op_halide.cpp | 1 + modules/dnn/src/torch/THDiskFile.cpp | 1 + modules/dnn/src/torch/THFile.cpp | 1 + modules/dnn/src/torch/THFile.h | 2 +- modules/dnn/src/torch/THGeneral.cpp | 31 +++++++++++----------------- modules/dnn/src/torch/THGeneral.h | 2 -- 7 files changed, 17 insertions(+), 22 deletions(-) diff --git a/modules/dnn/src/halide_scheduler.cpp b/modules/dnn/src/halide_scheduler.cpp index b7f748ff7a..a2cb410e7e 100644 --- a/modules/dnn/src/halide_scheduler.cpp +++ b/modules/dnn/src/halide_scheduler.cpp @@ -5,6 +5,7 @@ // Copyright (C) 2017, Intel Corporation, all rights reserved. // Third party copyrights are property of their respective owners. +#include "precomp.hpp" #include "halide_scheduler.hpp" #include "op_halide.hpp" diff --git a/modules/dnn/src/op_halide.cpp b/modules/dnn/src/op_halide.cpp index 9678359137..09e38f9cd9 100644 --- a/modules/dnn/src/op_halide.cpp +++ b/modules/dnn/src/op_halide.cpp @@ -5,6 +5,7 @@ // Copyright (C) 2017, Intel Corporation, all rights reserved. // Third party copyrights are property of their respective owners. +#include "precomp.hpp" #include "op_halide.hpp" #ifdef HAVE_HALIDE diff --git a/modules/dnn/src/torch/THDiskFile.cpp b/modules/dnn/src/torch/THDiskFile.cpp index 25346a8711..e7bc5d7ace 100644 --- a/modules/dnn/src/torch/THDiskFile.cpp +++ b/modules/dnn/src/torch/THDiskFile.cpp @@ -1,3 +1,4 @@ +#include "../precomp.hpp" #if defined(ENABLE_TORCH_IMPORTER) && ENABLE_TORCH_IMPORTER #include "THGeneral.h" #include "THDiskFile.h" diff --git a/modules/dnn/src/torch/THFile.cpp b/modules/dnn/src/torch/THFile.cpp index 9e055105ce..4be78ed5b8 100644 --- a/modules/dnn/src/torch/THFile.cpp +++ b/modules/dnn/src/torch/THFile.cpp @@ -1,3 +1,4 @@ +#include "../precomp.hpp" #if defined(ENABLE_TORCH_IMPORTER) && ENABLE_TORCH_IMPORTER #include "THFile.h" #include "THFilePrivate.h" diff --git a/modules/dnn/src/torch/THFile.h b/modules/dnn/src/torch/THFile.h index de362150fe..a496c96c0c 100644 --- a/modules/dnn/src/torch/THFile.h +++ b/modules/dnn/src/torch/THFile.h @@ -3,8 +3,8 @@ //#include "THStorage.h" #if defined(ENABLE_TORCH_IMPORTER) && ENABLE_TORCH_IMPORTER -#include "THGeneral.h" #include "opencv2/core/hal/interface.h" +#include "THGeneral.h" typedef struct THFile__ THFile; diff --git a/modules/dnn/src/torch/THGeneral.cpp b/modules/dnn/src/torch/THGeneral.cpp index 1bf0b4f897..57bd8b99f5 100644 --- a/modules/dnn/src/torch/THGeneral.cpp +++ b/modules/dnn/src/torch/THGeneral.cpp @@ -1,3 +1,4 @@ +#include "../precomp.hpp" #if defined(ENABLE_TORCH_IMPORTER) && ENABLE_TORCH_IMPORTER #include @@ -14,7 +15,9 @@ extern "C" { #ifndef TH_HAVE_THREAD -#define __thread +#define TH_THREAD +#else +#define TH_THREAD __thread #endif /* Torch Error Handling */ @@ -23,8 +26,8 @@ static void defaultTorchErrorHandlerFunction(const char *msg, void*) CV_Error(cv::Error::StsError, cv::String("Torch Error: ") + msg); } -static __thread void (*torchErrorHandlerFunction)(const char *msg, void *data) = defaultTorchErrorHandlerFunction; -static __thread void *torchErrorHandlerData; +static TH_THREAD void (*torchErrorHandlerFunction)(const char *msg, void *data) = defaultTorchErrorHandlerFunction; +static TH_THREAD void *torchErrorHandlerData; void _THError(const char *file, const int line, const char *fmt, ...) { @@ -71,8 +74,8 @@ static void defaultTorchArgErrorHandlerFunction(int argNumber, const char *msg, CV_Error(cv::Error::StsError, cv::format("Invalid argument %d", argNumber)); } -static __thread void (*torchArgErrorHandlerFunction)(int argNumber, const char *msg, void *data) = defaultTorchArgErrorHandlerFunction; -static __thread void *torchArgErrorHandlerData; +static TH_THREAD void (*torchArgErrorHandlerFunction)(int argNumber, const char *msg, void *data) = defaultTorchArgErrorHandlerFunction; +static TH_THREAD void *torchArgErrorHandlerData; void _THArgCheck(const char *file, int line, int condition, int argNumber, const char *fmt, ...) { @@ -103,10 +106,10 @@ void THSetArgErrorHandler( void (*torchArgErrorHandlerFunction_)(int argNumber, torchArgErrorHandlerData = data; } -static __thread void (*torchGCFunction)(void *data) = NULL; -static __thread void *torchGCData; -static __thread long torchHeapSize = 0; -static __thread long torchHeapSizeSoftMax = 300000000; // 300MB, adjusted upward dynamically +static TH_THREAD void (*torchGCFunction)(void *data) = NULL; +static TH_THREAD void *torchGCData; +static TH_THREAD long torchHeapSize = 0; +static TH_THREAD long torchHeapSizeSoftMax = 300000000; // 300MB, adjusted upward dynamically /* Optional hook for integrating with a garbage-collected frontend. * @@ -242,15 +245,5 @@ void THFree(void *ptr) free(ptr); } -double THLog1p(const double x) -{ -#if (defined(_MSC_VER) || defined(__MINGW32__)) - volatile double y = 1 + x; - return log(y) - ((y-1)-x)/y ; /* cancels errors with IEEE arithmetic */ -#else - return log1p(x); -#endif -} - } #endif diff --git a/modules/dnn/src/torch/THGeneral.h b/modules/dnn/src/torch/THGeneral.h index 8d33ede382..efde1c1fa4 100644 --- a/modules/dnn/src/torch/THGeneral.h +++ b/modules/dnn/src/torch/THGeneral.h @@ -30,7 +30,6 @@ # define M_PI 3.14159265358979323846 #endif -TH_API double THLog1p(const double x); TH_API void _THError(const char *file, const int line, const char *fmt, ...); TH_API void _THAssertionFailed(const char *file, const int line, const char *exp, const char *fmt, ...); TH_API void THSetErrorHandler( void (*torchErrorHandlerFunction)(const char *msg, void *data), void *data ); @@ -80,7 +79,6 @@ do { \ #define THMax(X, Y) ((X) > (Y) ? (X) : (Y)) #if (defined(_MSC_VER) || defined(__MINGW32__)) -# define log1p(x) THLog1p(x) #define snprintf _snprintf #define popen _popen #define pclose _pclose