This PR fixes incorrect division by zero handling in template specialization of `Div_SIMD` for type `double`.
* use hasSIMD128 rather than calling checkHardwareSupport * add SIMD check in spartialgradient.cpp * add SIMD check in stereosgbm.cpp * add SIMD check in canny.cpp