Switch Skia's libjpeg-turbo to 1.4.2

The Android security team wants Android to be on the latest version
of libjpeg-turbo, so Skia should test on this version as well.

This shouldn't affect Gold.

I wouldn't be surprised if this causes a few ASAN/valgrind issues
that we need to fix.

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/8e8eda9d4d2e6e65e3339eaaaf8144a4ef6c721c

Review URL: https://codereview.chromium.org/1469553002
diff --git a/DEPS b/DEPS
index e4dc54c..635f466 100644
--- a/DEPS
+++ b/DEPS
@@ -22,7 +22,7 @@
   "third_party/externals/libpng"  : "https://skia.googlesource.com/third_party/libpng.git@070a616b8275277e18ef8ee91e2ca23f7bdc67d5",
   "third_party/externals/giflib"  : "https://android.googlesource.com/platform/external/giflib.git@ab10e256df4f684260ca239905b1cec727181f6c",
 
-  "third_party/externals/libjpeg-turbo"             : "https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git@631e2dd119d49794e3572b6ca3f16ee39d59f372",
+  "third_party/externals/libjpeg-turbo"             : "https://skia.googlesource.com/third_party/libjpeg-turbo.git@363c754f56f13d045df270f269453f2fc1753d76",
   # libjpeg-turbo depends on yasm to compile .asm files
   "third_party/externals/yasm/source/patched-yasm/" : "https://chromium.googlesource.com/chromium/deps/yasm/patched-yasm.git@4671120cd8558ce62ee8672ebf3eb6f5216f909b",
   "third_party/externals/yasm/binaries"             : "https://chromium.googlesource.com/chromium/deps/yasm/binaries.git@52f9b3f4b0aa06da24ef8b123058bb61ee468881",
diff --git a/gyp/libjpeg-turbo.gyp b/gyp/libjpeg-turbo.gyp
index 7ef744f..407fcca 100644
--- a/gyp/libjpeg-turbo.gyp
+++ b/gyp/libjpeg-turbo.gyp
@@ -102,7 +102,6 @@
         '../third_party/externals/libjpeg-turbo/jmorecfg.h',
         '../third_party/externals/libjpeg-turbo/jpegint.h',
         '../third_party/externals/libjpeg-turbo/jpeglib.h',
-        '../third_party/externals/libjpeg-turbo/jpeglibmangler.h',
         '../third_party/externals/libjpeg-turbo/jquant1.c',
         '../third_party/externals/libjpeg-turbo/jquant2.c',
         '../third_party/externals/libjpeg-turbo/jutils.c',
@@ -130,59 +129,59 @@
         [ 'skia_arch_type == "x86" and (skia_os != "android" or host_os == "linux")', {
           'sources': [
             '../third_party/externals/libjpeg-turbo/simd/jsimd_i386.c',
-            '../third_party/externals/libjpeg-turbo/simd/jccolmmx.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jccolss2.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jcgrammx.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jcgrass2.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jcqnt3dn.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jcqntmmx.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jcqnts2f.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jcqnts2i.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jcqntsse.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jcsammmx.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jcsamss2.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jdcolmmx.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jdcolss2.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jdmermmx.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jdmerss2.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jdsammmx.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jdsamss2.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jf3dnflt.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jfmmxfst.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jfmmxint.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jfss2fst.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jfss2int.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jfsseflt.asm',
-            '../third_party/externals/libjpeg-turbo/simd/ji3dnflt.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jimmxfst.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jimmxint.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jimmxred.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jiss2flt.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jiss2fst.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jiss2int.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jiss2red.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jisseflt.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jccolor-mmx.asm', 
+            '../third_party/externals/libjpeg-turbo/simd/jccolor-sse2.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jcgray-mmx.asm',  
+            '../third_party/externals/libjpeg-turbo/simd/jcgray-sse2.asm', 
+            '../third_party/externals/libjpeg-turbo/simd/jcsample-mmx.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jcsample-sse2.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jdcolor-mmx.asm', 
+            '../third_party/externals/libjpeg-turbo/simd/jdcolor-sse2.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jdmerge-mmx.asm', 
+            '../third_party/externals/libjpeg-turbo/simd/jdmerge-sse2.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jdsample-mmx.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jdsample-sse2.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jfdctflt-3dn.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jfdctflt-sse.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jfdctfst-mmx.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jfdctfst-sse2.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jfdctint-mmx.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jfdctint-sse2.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jidctflt-3dn.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jidctflt-sse2.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jidctflt-sse.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jidctfst-mmx.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jidctfst-sse2.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jidctint-mmx.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jidctint-sse2.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jidctred-mmx.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jidctred-sse2.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jquant-3dn.asm',  
+            '../third_party/externals/libjpeg-turbo/simd/jquantf-sse2.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jquanti-sse2.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jquant-mmx.asm',  
+            '../third_party/externals/libjpeg-turbo/simd/jquant-sse.asm',  
             '../third_party/externals/libjpeg-turbo/simd/jsimdcpu.asm',
           ],
         }],
         [ 'skia_arch_type == "x86_64" and (skia_os != "android" or host_os == "linux")', {
           'sources': [
             '../third_party/externals/libjpeg-turbo/simd/jsimd_x86_64.c',
-            '../third_party/externals/libjpeg-turbo/simd/jccolss2-64.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jcgrass2-64.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jcqnts2f-64.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jcqnts2i-64.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jcsamss2-64.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jdcolss2-64.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jdmerss2-64.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jdsamss2-64.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jfss2fst-64.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jfss2int-64.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jfsseflt-64.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jiss2flt-64.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jiss2fst-64.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jiss2int-64.asm',
-            '../third_party/externals/libjpeg-turbo/simd/jiss2red-64.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jccolor-sse2-64.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jcgray-sse2-64.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jcsample-sse2-64.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jdcolor-sse2-64.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jdmerge-sse2-64.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jdsample-sse2-64.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jfdctflt-sse-64.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jfdctfst-sse2-64.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jfdctint-sse2-64.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jidctflt-sse2-64.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jidctfst-sse2-64.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jidctint-sse2-64.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jidctred-sse2-64.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jquantf-sse2-64.asm',
+            '../third_party/externals/libjpeg-turbo/simd/jquanti-sse2-64.asm',
           ],
         }],
         [ 'skia_arch_type == "arm64"', {
@@ -221,6 +220,9 @@
           'dependencies': [
             'yasm-win',
           ],
+          'defines': [
+            'TURBO_FOR_WINDOWS',
+          ],
           'variables': {
             'yasm_path': '<(PRODUCT_DIR)/yasm.exe',
             'conditions': [
@@ -230,7 +232,6 @@
                   '-D__x86__',
                   '-DWIN32',
                   '-DMSVC',
-                  '-I../third_party/externals/libjpeg-turbo/win/'
                 ],
               }, {
                 'yasm_format': '-fwin64',
@@ -238,7 +239,6 @@
                   '-D__x86_64__',
                   '-DWIN64',
                   '-DMSVC',
-                  '-I../third_party/externals/libjpeg-turbo/win/'
                 ],
               }],
             ],
@@ -257,14 +257,12 @@
                 'yasm_flags': [
                   '-D__x86__',
                   '-DELF',
-                  '-I../third_party/externals/libjpeg-turbo/linux/'
                 ],
               }, {
                 'yasm_format': '-felf64',
                 'yasm_flags': [
                   '-D__x86_64__',
                   '-DELF',
-                  '-I../third_party/externals/libjpeg-turbo/linux/'
                 ],
               }],
             ],
@@ -283,14 +281,12 @@
                 'yasm_flags': [
                   '-D__x86__',
                   '-DMACHO',
-                  '-I../third_party/externals/libjpeg-turbo/mac/'
                 ],
               }, {
                 'yasm_format': '-fmacho64',
                 'yasm_flags': [
                   '-D__x86_64__',
                   '-DMACHO',
-                  '-I../third_party/externals/libjpeg-turbo/mac/'
                 ],
               }],
             ],
@@ -309,14 +305,12 @@
                 'yasm_flags': [
                   '-D__x86__',
                   '-DELF',
-                  '-I../third_party/externals/libjpeg-turbo/linux/'
                 ],
               }, {
                 'yasm_format': '-felf64',
                 'yasm_flags': [
                   '-D__x86_64__',
                   '-DELF',
-                  '-I../third_party/externals/libjpeg-turbo/linux/'
                 ],
               }],
             ],
@@ -340,6 +334,7 @@
                 '<@(yasm_flags)',
                 '-DRGBX_FILLER_0XFF',
                 '-DSTRICT_MEMORY_ACCESS',
+                '-Isimd/',
                 '-o', '<(shared_generated_dir)/<(RULE_INPUT_ROOT).<(object_suffix)',
                 '<(RULE_INPUT_PATH)',
               ],