Commit Graph

5904 Commits

Author SHA1 Message Date
Stefan Weil
534a237015 Move AVX / SSE messages to function PrintVersionInfo (crash fix)
This information is not needed for normal runs, so it is sufficient
to show it on request (like versions and OpenCL information).

This also fixes a crash caused by undefined order of global constructors:

When the global variable SIMDDetect::detector is initialized before the
global variable debug_file, the first tprintf call in simddetect.cpp
crashes because of a NULL pointer in debug_file. This was only seen when
running with a shared library (libtesseract.so).

Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-12-28 13:35:44 +01:00
zdenop
38033cebb7 Merge pull request #618 from stweil/lstm
lstm: Move class SIMDDetect to new source file and improve code
2016-12-27 14:13:19 +01:00
Stefan Weil
19616b07ba lstm: Move class SIMDDetect to new source file and improve code
Modify also the code to use a singleton. This simplifies the code as
no locking is needed. It also slightly improves the performance because
no check whether the architecture was tested is needed.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-12-27 13:25:08 +01:00
zdenop
e949812e63 Merge pull request #617 from stweil/lept
Remove code for old versions of Leptonica
2016-12-27 12:05:16 +01:00
Stefan Weil
680bfddb4f Remove code for old versions of Leptonica
Those versions are no longer supported.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-12-27 11:57:44 +01:00
zdenop
e8d477c538 Merge pull request #616 from stweil/lstm
lstm: Update AVX / SSE support
2016-12-27 11:50:55 +01:00
Stefan Weil
5cfe0c700c lstm: Add AVX / SSE support for Windows
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-12-27 11:14:15 +01:00
Stefan Weil
b2a0262c59 lstm: Update AVX / SSE support
* Fix compiler warning (see below)

* Use Linux code for Mingw-w64, too

* Simplify conditional code by using X86_BUILD instead of NONX86_BUILD

* Remove unneeded call of __get_cpuid_max (already called by __get_cpuid)

* Remove unneeded #undef statement

gcc report:

lstm/weightmatrix.cpp: In static member function
 'static double tesseract::WeightMatrix::DotProduct(const double*, const double*, int)':
weightmatrix.cpp:67:29: warning:
 'ecx' may be used uninitialized in this function [-Wmaybe-uninitialized]
       avx_available_ = (ecx & 0x10000000) != 0;
                             ^
lstm/weightmatrix.cpp:64:30: note: 'ecx' was declared here
       unsigned int eax, ebx, ecx, edx;
                              ^
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-12-27 10:21:50 +01:00
Egor Pugin
fc94820a29 Update appveyor.yml 2016-12-27 01:18:27 +03:00
zdenop
25fed52bd5 Merge pull request #614 from stweil/lept
Fix build for non x86
2016-12-26 19:28:06 +01:00
Stefan Weil
9a4a32137c Fix build for non x86
cpuid.h is only available for x86 builds. There are lots of non x86
architectures, so simply checking for PowerPC is not enough.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-12-26 19:17:03 +01:00
zdenop
21a5c51e58 Update INSTALL.GIT.md
add info about autoconf-archive
2016-12-26 18:03:07 +01:00
Egor Pugin
f4ea71ea22 Update CMakeLists.txt 2016-12-26 17:51:03 +03:00
Egor Pugin
04f43701d9 Update appveyor.yml 2016-12-26 17:36:03 +03:00
Egor Pugin
1127d0145e Update CMakeLists.txt 2016-12-26 17:35:50 +03:00
Egor Pugin
3566a1d467 Merge pull request #613 from stweil/lept
Fix Leptonica version check for cmake
2016-12-26 17:33:53 +03:00
Egor Pugin
c160f80133 Add error message with cmake 3.6. 2016-12-26 17:30:41 +03:00
Stefan Weil
7a9a2f7b33 Fix Leptonica version check for cmake
* The check was missing.
* The check did not work with the given Leptonica version.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-12-26 15:28:31 +01:00
Egor Pugin
c124f87d5b Merge pull request #608 from amitdo/cmake-leptonica-1740
CMake - Set minimum Leptonica version to 1.74.0
2016-12-25 14:05:41 +03:00
Amit D
43322643ff CMake - Set minimum Leptonica version to 1.74.0 2016-12-25 09:36:09 +02:00
Egor Pugin
c7caaaf8cd Update cppan.yml 2016-12-24 21:44:15 +03:00
zdenop
cbd4f54ef0 Merge pull request #605 from amitdo/travis-leptonica-174
Travis CI - Update Leptonica to 1.74.0
2016-12-24 14:57:50 +01:00
Amit D
b0b4c57ef3 Travis CI - Update Leptonica to 1.74.0 2016-12-24 13:39:20 +02:00
Amit D
c1f191cd5a Travis CI - Update Leptonica to 1.74.0 2016-12-24 13:17:59 +02:00
Amit D
7f14e17b6c Travis CI - Update Leptonica to 1.74 2016-12-24 13:04:56 +02:00
Zdenko Podobný
11f205707e Multi-page TIFF buffering is broken - fix #233 2016-12-24 09:17:02 +01:00
Zdenko Podobný
38cb4acaf9 require leptonica 1.74 or higher 2016-12-24 09:05:32 +01:00
Egor Pugin
29ad9aca47 Add tesseractmain. 2016-12-23 23:29:30 +03:00
Egor Pugin
e8b2e3990b Add training tools to cppan config. 2016-12-23 23:26:40 +03:00
zdenop
1950a49d42 Merge pull request #603 from stweil/opencl
opencl: Show up to four OpenCL platforms
2016-12-23 10:41:52 +01:00
Stefan Weil
b262136b45 opencl: Show up to four OpenCL platforms
The old code only allowed one platform.
Add also strict error handling.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-12-23 10:25:56 +01:00
Zdenko Podobný
02a6970cf3 autotools: test if compiler support -mavx and -msse4.1 2016-12-23 10:20:08 +01:00
Zdenko Podobný
54611c1cc8 increase min autoconf version (2.59). Fixes #598. 2016-12-23 09:32:51 +01:00
Egor Pugin
8b3c6ac057 Merge branch 'master' of github.com-egorpugin:tesseract-ocr/tesseract 2016-12-22 22:30:29 +03:00
Egor Pugin
f0bbf1aeeb Update cppan config. 2016-12-22 22:30:16 +03:00
Egor Pugin
c1ee2fe922 Merge pull request #597 from techtonik/patch-1
AppVeyor: add downloadable builds
2016-12-21 21:37:57 +03:00
anatoly techtonik
df8dcf1834 AppVeyor: add build version 2016-12-21 13:44:08 +03:00
anatoly techtonik
c8fcc89e3b AppVeyor: add downloadable builds 2016-12-21 13:18:03 +03:00
Egor Pugin
bf10925e0f Merge pull request #595 from stweil/lept
Add missing Leptonica linker flags (needed for macOS)
2016-12-20 02:44:17 +03:00
Stefan Weil
c07c46524a Add missing Leptonica linker flags (needed for macOS)
This fixes a build regression caused by commit
d70f3c3663.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-12-19 22:27:12 +01:00
Egor Pugin
5bddb99bcc Update appveyor.yml 2016-12-19 00:22:57 +03:00
Egor Pugin
7a9f74c3c3 Update appveyor.yml 2016-12-19 00:12:07 +03:00
Egor Pugin
cb91c2c172 Update appveyor.yml 2016-12-18 23:30:36 +03:00
Egor Pugin
560978b25f Update appveyor.yml 2016-12-18 23:23:51 +03:00
Egor Pugin
21d86865ad Update appveyor.yml 2016-12-18 23:18:12 +03:00
Egor Pugin
e3491de95d Update appveyor.yml 2016-12-18 23:06:06 +03:00
Egor Pugin
2d1decbdcf Disable training tools on appveyor because of installed cmake 3.6 bug. 2016-12-17 18:33:41 +03:00
Egor Pugin
2a9e162297 Update appveyor.yml 2016-12-17 18:11:06 +03:00
Egor Pugin
26dfac71ed Update appveyor.yml 2016-12-17 17:56:27 +03:00
Egor Pugin
130500243a Temporarily unsilent appveyor build. 2016-12-17 16:47:52 +03:00