committed by
Alexander Alekhin
parent
5e2bcc9149
commit
f9c514b391
@@ -1309,7 +1309,7 @@ CVAPI(void) cvMulTransposed( const CvArr* src, CvArr* dst, int order,
|
||||
const CvArr* delta CV_DEFAULT(NULL),
|
||||
double scale CV_DEFAULT(1.) );
|
||||
|
||||
/** Tranposes matrix. Square matrices can be transposed in-place */
|
||||
/** Transposes matrix. Square matrices can be transposed in-place */
|
||||
CVAPI(void) cvTranspose( const CvArr* src, CvArr* dst );
|
||||
#define cvT cvTranspose
|
||||
|
||||
|
||||
@@ -569,7 +569,7 @@ inline v_int64x4 v256_blend(const v_int64x4& a, const v_int64x4& b)
|
||||
{ return v_int64x4(v256_blend<m>(v_uint64x4(a.val), v_uint64x4(b.val)).val); }
|
||||
|
||||
// shuffle
|
||||
// todo: emluate 64bit
|
||||
// todo: emulate 64bit
|
||||
#define OPENCV_HAL_IMPL_AVX_SHUFFLE(_Tpvec, intrin) \
|
||||
template<int m> \
|
||||
inline _Tpvec v256_shuffle(const _Tpvec& a) \
|
||||
|
||||
@@ -73,7 +73,7 @@ implemented as a structure based on a one SIMD register.
|
||||
|
||||
- cv::v_uint8x16 and cv::v_int8x16: sixteen 8-bit integer values (unsigned/signed) - char
|
||||
- cv::v_uint16x8 and cv::v_int16x8: eight 16-bit integer values (unsigned/signed) - short
|
||||
- cv::v_uint32x4 and cv::v_int32x4: four 32-bit integer values (unsgined/signed) - int
|
||||
- cv::v_uint32x4 and cv::v_int32x4: four 32-bit integer values (unsigned/signed) - int
|
||||
- cv::v_uint64x2 and cv::v_int64x2: two 64-bit integer values (unsigned/signed) - int64
|
||||
- cv::v_float32x4: four 32-bit floating point values (signed) - float
|
||||
- cv::v_float64x2: two 64-bit floating point values (signed) - double
|
||||
|
||||
@@ -1805,7 +1805,7 @@ inline v_float32x4 v_broadcast_element(const v_float32x4& a)
|
||||
return v_setall_f32(v_extract_n<i>(a));
|
||||
}
|
||||
|
||||
////// FP16 suport ///////
|
||||
////// FP16 support ///////
|
||||
#if CV_FP16
|
||||
inline v_float32x4 v_load_expand(const float16_t* ptr)
|
||||
{
|
||||
|
||||
@@ -94,7 +94,7 @@ struct v_uint16x8
|
||||
}
|
||||
ushort get0() const
|
||||
{
|
||||
return (ushort)wasm_i16x8_extract_lane(val, 0); // wasm_u16x8_extract_lane() unimplemeted yet
|
||||
return (ushort)wasm_i16x8_extract_lane(val, 0); // wasm_u16x8_extract_lane() unimplemented yet
|
||||
}
|
||||
|
||||
v128_t val;
|
||||
|
||||
@@ -50,7 +50,7 @@ typedef double v1f64 __attribute__ ((vector_size(8), aligned(8)));
|
||||
#define msa_ld1q_f32(__a) ((v4f32)__builtin_msa_ld_w(__a, 0))
|
||||
#define msa_ld1q_f64(__a) ((v2f64)__builtin_msa_ld_d(__a, 0))
|
||||
|
||||
/* Store 64bits vector elments values to the given memory address. */
|
||||
/* Store 64bits vector elements values to the given memory address. */
|
||||
#define msa_st1_s8(__a, __b) (*((v8i8*)(__a)) = __b)
|
||||
#define msa_st1_s16(__a, __b) (*((v4i16*)(__a)) = __b)
|
||||
#define msa_st1_s32(__a, __b) (*((v2i32*)(__a)) = __b)
|
||||
@@ -377,7 +377,7 @@ typedef double v1f64 __attribute__ ((vector_size(8), aligned(8)));
|
||||
})
|
||||
|
||||
/* Right shift elements in a 128 bits vector by an immediate value, saturate the results and them in a 64 bits vector.
|
||||
Input is signed and outpus is unsigned. */
|
||||
Input is signed and output is unsigned. */
|
||||
#define msa_qrshrun_n_s16(__a, __b) \
|
||||
({ \
|
||||
v8i16 __d = __builtin_msa_srlri_h(__builtin_msa_max_s_h(__builtin_msa_fill_h(0), (v8i16)(__a)), (int)(__b)); \
|
||||
|
||||
@@ -62,7 +62,7 @@ static String getDeviceTypeString(const cv::ocl::Device& device)
|
||||
}
|
||||
}
|
||||
|
||||
return "unkown";
|
||||
return "unknown";
|
||||
}
|
||||
} // namespace
|
||||
|
||||
|
||||
@@ -165,7 +165,7 @@ public:
|
||||
|
||||
/** @brief Sets the initial step that will be used in downhill simplex algorithm.
|
||||
|
||||
Step, together with initial point (givin in DownhillSolver::minimize) are two `n`-dimensional
|
||||
Step, together with initial point (given in DownhillSolver::minimize) are two `n`-dimensional
|
||||
vectors that are used to determine the shape of initial simplex. Roughly said, initial point
|
||||
determines the position of a simplex (it will become simplex's centroid), while step determines the
|
||||
spread (size in each dimension) of a simplex. To be more precise, if \f$s,x_0\in\mathbb{R}^n\f$ are
|
||||
|
||||
@@ -317,7 +317,7 @@ VSX_IMPL_1RG(vec_udword2, wi, vec_float4, wf, xvcvspuxds, vec_ctulo)
|
||||
* Also there's already an open bug https://bugs.llvm.org/show_bug.cgi?id=31837
|
||||
*
|
||||
* So we're not able to use inline asm and only use built-in functions that CLANG supports
|
||||
* and use __builtin_convertvector if clang missng any of vector conversions built-in functions
|
||||
* and use __builtin_convertvector if clang missing any of vector conversions built-in functions
|
||||
*
|
||||
* todo: clang asm template bug is fixed, need to reconsider the current workarounds.
|
||||
*/
|
||||
@@ -491,7 +491,7 @@ VSX_IMPL_CONV_EVEN_2_4(vec_uint4, vec_double2, vec_ctu, vec_ctuo)
|
||||
// Only for Eigen!
|
||||
/*
|
||||
* changing behavior of conversion intrinsics for gcc has effect on Eigen
|
||||
* so we redfine old behavior again only on gcc, clang
|
||||
* so we redefine old behavior again only on gcc, clang
|
||||
*/
|
||||
#if !defined(__clang__) || __clang_major__ > 4
|
||||
// ignoring second arg since Eigen only truncates toward zero
|
||||
|
||||
Reference in New Issue
Block a user