From e7794c0c724bf1c1f5ec71aa11c78c0d409884d6 Mon Sep 17 00:00:00 2001 From: Stefan Weil Date: Tue, 2 May 2017 18:21:34 +0200 Subject: [PATCH] arch: Replace Tesseract data types by POSIX data types Signed-off-by: Stefan Weil --- arch/dotproductavx.cpp | 2 +- arch/dotproductsse.cpp | 6 +++--- arch/dotproductsse.h | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/arch/dotproductavx.cpp b/arch/dotproductavx.cpp index d78feff7c6..11517f8dec 100644 --- a/arch/dotproductavx.cpp +++ b/arch/dotproductavx.cpp @@ -90,7 +90,7 @@ double DotProductAVX(const double* u, const double* v, int n) { // instruction, as that introduces a 70 cycle delay. All this casting is to // fool the intrinsics into thinking we are extracting the bottom int64. auto cast_sum = _mm256_castpd_si256(sum); - *(reinterpret_cast(&result)) = + *(reinterpret_cast(&result)) = #if defined(_WIN32) || defined(__i386__) // This is a very simple workaround that is activated // for all platforms that do not have _mm256_extract_epi64. diff --git a/arch/dotproductsse.cpp b/arch/dotproductsse.cpp index cc5c245522..3e629900b8 100644 --- a/arch/dotproductsse.cpp +++ b/arch/dotproductsse.cpp @@ -28,7 +28,7 @@ double DotProductSSE(const double* u, const double* v, int n) { fprintf(stderr, "DotProductSSE can't be used on Android\n"); abort(); } -inT32 IntDotProductSSE(const inT8* u, const inT8* v, int n) { +int32_t IntDotProductSSE(const int8_t* u, const int8_t* v, int n) { fprintf(stderr, "IntDotProductSSE can't be used on Android\n"); abort(); } @@ -99,7 +99,7 @@ double DotProductSSE(const double* u, const double* v, int n) { // Computes and returns the dot product of the n-vectors u and v. // Uses Intel SSE intrinsics to access the SIMD instruction set. -inT32 IntDotProductSSE(const inT8* u, const inT8* v, int n) { +int32_t IntDotProductSSE(const int8_t* u, const int8_t* v, int n) { int max_offset = n - 8; int offset = 0; // Accumulate a set of 4 32-bit sums in sum, by loading 8 pairs of 8-bit @@ -128,7 +128,7 @@ inT32 IntDotProductSSE(const inT8* u, const inT8* v, int n) { // Sum the 4 packed 32 bit sums and extract the low result. sum = _mm_hadd_epi32(sum, sum); sum = _mm_hadd_epi32(sum, sum); - inT32 result = _mm_cvtsi128_si32(sum); + int32_t result = _mm_cvtsi128_si32(sum); while (offset < n) { result += u[offset] * v[offset]; ++offset; diff --git a/arch/dotproductsse.h b/arch/dotproductsse.h index fa0a744fca..a654669399 100644 --- a/arch/dotproductsse.h +++ b/arch/dotproductsse.h @@ -28,7 +28,7 @@ namespace tesseract { double DotProductSSE(const double* u, const double* v, int n); // Computes and returns the dot product of the n-vectors u and v. // Uses Intel SSE intrinsics to access the SIMD instruction set. -inT32 IntDotProductSSE(const inT8* u, const inT8* v, int n); +int32_t IntDotProductSSE(const int8_t* u, const int8_t* v, int n); } // namespace tesseract.