opencv/modules/ocl/src
Tom Stellard 8f3b876ee6 ocl: Change static variable order in cl_context.cpp to avoid crashes during destruction
ContextImpl::currentContext contains a reference to one of the
DeviceInfoImpl objects from:

static std::vector<DeviceInfoImpl> global_devices;

ContextImpl::currentContext is destroyed in the destructor
for the statically defined object __module, and relies on its
DeviceInfoImpl reference to query some hardware features while
being destroyed.

This means that we need to ensure that the global_devices vector is
destroyed affter __module, otherwise ContextImpl::currentContext's
DeviceInfoImpl reference will no longer be valid when __module is
destroyed.

Since these variables are all confined to a single compilation unit,
they will be destruct from bottom to top, so we need to make sure
that __module is the bottom definition so it can be destroyed first.
2014-10-14 20:54:13 -04:00
..
cl_runtime Fix the following error for ocl::getOpenCLPlatforms() on Ubuntu 12.04 with gcc 4.8 2014-01-13 16:09:42 +01:00
opencl ocl: Don't use 'inline' attribute on functions 2014-09-19 16:13:57 -04:00
arithm.cpp typos 2014-03-13 22:56:46 +04:00
bgfg_mog.cpp fixing typo 2013-10-25 18:00:46 +04:00
blend.cpp fixed and generalized ocl::blendLinear 2013-10-28 23:56:40 +04:00
brute_force_matcher.cpp ocl::BruteForceMatcher fix wrong use of oclMat::ptr(). 2013-12-05 19:27:10 -02:00
build_warps.cpp Some hacks to build and run OpenCL on Qualcomm S800. 2013-11-22 16:13:38 +04:00
canny.cpp ocl: Canny: port CUDA-based implementation of edgesHysteresisLocal 2013-10-28 00:10:47 +04:00
cl_context.cpp ocl: Change static variable order in cl_context.cpp to avoid crashes during destruction 2014-10-14 20:54:13 -04:00
cl_operations.cpp ocl: try to disable clFinish workaround 2013-12-04 13:00:37 +04:00
cl_programcache.cpp ocl: split: update tests and implementation 2013-10-30 14:08:37 +04:00
cl_programcache.hpp fixing typo 2013-10-25 18:00:46 +04:00
color.cpp Improve ocl cvt_color performance for the following conversions: RGB<->BGR, RGB->Gray, RGB<->XYZ, RGB<->YCrCb, RGB<->YUV, and mRGBA<->RGBA. 2013-12-19 22:56:46 +04:00
columnsum.cpp fixing typo 2013-10-25 18:00:46 +04:00
error.cpp fixing typo 2013-10-25 18:00:46 +04:00
fft.cpp Fixed typos in comments 2014-06-26 16:29:45 +02:00
filtering.cpp remove intel guard since the code is 2 times faster on AMD too 2014-03-17 19:11:21 +04:00
gemm.cpp fixing typo 2013-10-25 18:00:46 +04:00
gftt.cpp remove unused variable in findCorners_caller() 2014-04-09 22:59:52 +03:00
haar.cpp Revert "Merge pull request #1779 from perping:integral_2.4" 2014-03-28 16:05:04 +04:00
hog.cpp Changes the datatype of the angle of the gradient for Intel platforms. 2013-12-17 14:06:14 +04:00
imgproc.cpp Revert "Merge pull request #1779 from perping:integral_2.4" 2014-03-28 16:05:04 +04:00
interpolate_frames.cpp fixing typo 2013-10-25 18:00:46 +04:00
kalman.cpp fixing typo 2013-10-25 18:00:46 +04:00
kmeans.cpp speeded up ocl::distanceToCenters 2013-11-06 20:02:31 +04:00
knearest.cpp fixing typo 2013-10-25 18:00:46 +04:00
match_template.cpp Revert "Merge pull request #1779 from perping:integral_2.4" 2014-03-28 16:05:04 +04:00
matrix_operations.cpp Some hacks to build and run OpenCL on Qualcomm S800. 2013-11-22 16:13:38 +04:00
mcwutil.cpp fixing typo 2013-10-25 18:00:46 +04:00
moments.cpp remove unused variable in ocl_moments() 2014-04-09 23:01:49 +03:00
mssegmentation.cpp Warning fixes and suppression in ocl module for gcc 4.6 from Android NDK. 2013-12-02 17:51:29 +04:00
optical_flow_farneback.cpp Some hacks to build and run OpenCL on Qualcomm S800. 2013-11-22 16:13:38 +04:00
precomp.hpp fixing typo 2013-10-25 18:00:46 +04:00
pyrdown.cpp fixing typo 2013-10-25 18:00:46 +04:00
pyrlk.cpp fixing typo 2013-10-25 18:00:46 +04:00
pyrup.cpp fixing typo 2013-10-25 18:00:46 +04:00
safe_call.hpp Enabled CV_Assert and such to print the function name with Visual C++. 2013-11-07 17:22:02 +04:00
sort_by_key.cpp Some hacks to build and run OpenCL on Qualcomm S800. 2013-11-22 16:13:38 +04:00
split_merge.cpp fixed Split for device version equals 78712 2013-11-18 13:20:57 +04:00
stereo_csbp.cpp fixing typo 2013-10-25 18:00:46 +04:00
stereobm.cpp fixing typo 2013-10-25 18:00:46 +04:00
stereobp.cpp fixing typo 2013-10-25 18:00:46 +04:00
svm.cpp ocl: svm: restore non BLAS version 2013-11-05 15:15:26 +04:00
tvl1flow.cpp Resolved a bug and used ocl::multiply. 2013-10-31 16:09:33 +08:00