diff options
author | Matt Sarett <msarett@google.com> | 2015-11-24 12:18:04 -0500 |
---|---|---|
committer | Matt Sarett <msarett@google.com> | 2015-11-25 11:12:32 -0500 |
commit | b3ffc5a2fb2b2f03b77b91e29d7d505340af0ecb (patch) | |
tree | dea9a192cac4f4926da05536cd98c84784ce311e /README.android | |
parent | 2a6062fe4080bf65e9c71fdfb899e7152fd1ac0d (diff) | |
download | libjpeg-turbo-b3ffc5a2fb2b2f03b77b91e29d7d505340af0ecb.tar.gz |
Compile x86 and x86-64 SIMD optimizations
Change-Id: I2aa903ea44cc3da9255543dd21a312e3dd410b8c
Diffstat (limited to 'README.android')
-rw-r--r-- | README.android | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/README.android b/README.android new file mode 100644 index 00000000..b83c4d79 --- /dev/null +++ b/README.android @@ -0,0 +1,38 @@ +Any Android specific modifications to upstream libjpeg-turbo (1.4.2) should +be listed here: + +(1) jconfig.h and jconfigint.h + +These are included upstream as jconfig.h.in and jconfigint.h.in. +We have the option autogenerate these platform/version specific files (using +the libjpeg-turbo build system) or to manually create them. + +Autogenerating these files on linux gets us most of the way, but we've needed +to add some multi-platform flexibility to the INLINE and SIZEOF_SIZE_T macros. + +(2) Partial decoding optimizations + +These have been cherry picked from upstream and will be included in the 1.5 +release. The cherry picked commits are: +90c92ed5bf98bda381fcc369f0da46837dbb8894 +fc235cfdabbcd1c915fa3a87a56d73727da2eaeb +9bafc6a7ffa62ed7109314cbb66085075cd1c334 +3fb56e969c890e6aa7b044eea7e24751ab6f4e97 +e67a7e37deb26db5ac7da420560d22e1ca7ea4b4 +f8a1775eab51fb0a83e82343d2eae8cf52b16124 +15884f48eb1a4acd9c6c24291db974c596e71934 +ac30a1bf12751bd82e56158eb9456a28d9c086f3 + +(3) simd/jsimdext.inc + +The modification enables us to compile x86 SIMD. + +The original code was: +%define EXTN(name) _ %+ name +The new code is: +%define EXTN(name) name + +It is unclear why the unmodified code from upstream appends an underscore +to name. Before removing the underscore, the code failed to link because +the function names in the SIMD code did not match the callers (because of +the extra underscore). |