Add support for NEON intrinsics to speed up texture compression. We can
now convert the time that we would have spent uploading the texture to
compressing it giving a net 50% memory savings for these things.

Committed: https://skia.googlesource.com/skia/+/bc9205be0a1094e312da098348601398c210dc5a

R=robertphillips@google.com, mtklein@google.com, kevin.petit@arm.com

Author: krajcevski@google.com

Review URL: https://codereview.chromium.org/390453002
diff --git a/gyp/opts.gyp b/gyp/opts.gyp
index e64264f..0c1bc0a 100644
--- a/gyp/opts.gyp
+++ b/gyp/opts.gyp
@@ -31,6 +31,7 @@
       'include_dirs': [
         '../src/core',
         '../src/opts',
+        '../src/utils',
       ],
       'conditions': [
         [ 'skia_arch_type == "x86" and skia_os != "ios"', {
@@ -56,6 +57,7 @@
             '../src/opts/SkBlitRect_opts_SSE2.cpp',
             '../src/opts/SkBlurImage_opts_SSE2.cpp',
             '../src/opts/SkMorphology_opts_SSE2.cpp',
+            '../src/opts/SkTextureCompression_opts_none.cpp',
             '../src/opts/SkUtils_opts_SSE2.cpp',
             '../src/opts/SkXfermode_opts_SSE2.cpp',
           ],
@@ -82,6 +84,7 @@
             '../src/opts/SkBlitRow_opts_arm.cpp',
             '../src/opts/SkBlurImage_opts_arm.cpp',
             '../src/opts/SkMorphology_opts_arm.cpp',
+            '../src/opts/SkTextureCompression_opts_arm.cpp',
             '../src/opts/SkUtils_opts_arm.cpp',
             '../src/opts/SkXfermode_opts_arm.cpp',
           ],
@@ -107,6 +110,7 @@
             '../src/opts/SkBlurImage_opts_none.cpp',
             '../src/opts/SkMorphology_opts_none.cpp',
             '../src/opts/SkUtils_opts_none.cpp',
+            '../src/opts/SkTextureCompression_opts_none.cpp',
             '../src/opts/SkXfermode_opts_none.cpp',
           ],
           'conditions': [
@@ -134,6 +138,7 @@
             '../src/opts/SkBlurImage_opts_none.cpp',
             '../src/opts/SkMorphology_opts_none.cpp',
             '../src/opts/SkUtils_opts_none.cpp',
+            '../src/opts/SkTextureCompression_opts_none.cpp',
             '../src/opts/SkXfermode_opts_none.cpp',
           ],
         }],
@@ -158,6 +163,7 @@
             '../src/opts/SkBlurImage_opts_neon.cpp',
             '../src/opts/SkMorphology_opts_arm.cpp',
             '../src/opts/SkMorphology_opts_neon.cpp',
+            '../src/opts/SkTextureCompression_opts_none.cpp',
             '../src/opts/SkUtils_opts_none.cpp',
             '../src/opts/SkXfermode_opts_arm.cpp',
             '../src/opts/SkXfermode_opts_arm_neon.cpp',
@@ -180,6 +186,7 @@
       ],
       'include_dirs': [
         '../src/core',
+        '../src/utils',
       ],
       'conditions': [
         [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "nacl", "chromeos", "android"] \
@@ -211,6 +218,7 @@
       ],
       'include_dirs': [
         '../src/core',
+        '../src/utils',
       ],
       'conditions': [
         [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "nacl", "chromeos", "android"] \
@@ -264,6 +272,7 @@
       'include_dirs': [
         '../src/core',
         '../src/opts',
+        '../src/utils',
       ],
       'cflags!': [
         '-fno-omit-frame-pointer',
@@ -293,6 +302,7 @@
         '../src/opts/SkBlitRow_opts_arm_neon.cpp',
         '../src/opts/SkBlurImage_opts_neon.cpp',
         '../src/opts/SkMorphology_opts_neon.cpp',
+        '../src/opts/SkTextureCompression_opts_neon.cpp',
         '../src/opts/SkXfermode_opts_arm_neon.cpp',
       ],
     },