aboutsummaryrefslogtreecommitdiffhomepage
path: root/gyp
diff options
context:
space:
mode:
authorGravatar djsollen <djsollen@google.com>2014-07-24 13:53:56 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2014-07-24 13:53:56 -0700
commitbc89329fb52eccb982fe9d7f58744ddd1f2922ca (patch)
tree23d11056716232bf7552ab031cacd7b74d54848c /gyp
parent57493ba62a7ec6a6038e64afa891b3c98a7cc15d (diff)
Enable the SSSE3 compile time check on all platforms (4th attempt)
BUG=skia:2746 R=bungeman@google.com, robertphillips@google.com, mtklein@google.com Author: djsollen@google.com Review URL: https://codereview.chromium.org/414033002
Diffstat (limited to 'gyp')
-rw-r--r--gyp/common_conditions.gypi5
-rw-r--r--gyp/opts.gyp50
2 files changed, 30 insertions, 25 deletions
diff --git a/gyp/common_conditions.gypi b/gyp/common_conditions.gypi
index 69f1ddbcd4..abb47502b6 100644
--- a/gyp/common_conditions.gypi
+++ b/gyp/common_conditions.gypi
@@ -646,6 +646,11 @@
'-fuse-ld=gold',
],
'conditions': [
+ [ 'skia_arch_type == "x86"', {
+ 'cflags': [
+ '-mssse3',
+ ],
+ }],
[ 'skia_android_framework', {
'libraries!': [
'-lstdc++',
diff --git a/gyp/opts.gyp b/gyp/opts.gyp
index 0c1bc0a0c9..55306e4ee1 100644
--- a/gyp/opts.gyp
+++ b/gyp/opts.gyp
@@ -188,19 +188,20 @@
'../src/core',
'../src/utils',
],
+ 'sources': [
+ '../src/opts/SkBitmapProcState_opts_SSSE3.cpp',
+ ],
'conditions': [
+ [ 'skia_os == "win"', {
+ 'defines' : [ 'SK_CPU_SSE_LEVEL=31' ],
+ }],
+ # (Mac has -mssse3 globally.)
[ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "nacl", "chromeos", "android"] \
and not skia_android_framework', {
'cflags': [
'-mssse3',
],
}],
- # (Mac has -mssse3 globally.)
- [ 'skia_arch_type == "x86"', {
- 'sources': [
- '../src/opts/SkBitmapProcState_opts_SSSE3.cpp',
- ],
- }],
],
},
# For the same lame reasons as what is done for skia_opts, we also have to
@@ -220,11 +221,27 @@
'../src/core',
'../src/utils',
],
+ 'sources': [
+ '../src/opts/SkBlurImage_opts_SSE4.cpp',
+ ],
'conditions': [
+ [ 'skia_arch_width == 64', {
+ 'sources': [
+ '../src/opts/SkBlitRow_opts_SSE4_x64_asm.S',
+ ],
+ }],
+ [ 'skia_arch_width == 32', {
+ 'sources': [
+ '../src/opts/SkBlitRow_opts_SSE4_asm.S',
+ ],
+ }],
+ [ 'skia_os == "win"', {
+ 'defines' : [ 'SK_CPU_SSE_LEVEL=41' ],
+ }],
[ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "nacl", "chromeos", "android"] \
and not skia_android_framework', {
'cflags': [
- '-msse4',
+ '-msse4.1',
],
}],
[ 'skia_os == "mac"', {
@@ -233,27 +250,10 @@
'-mssse3',
],
'OTHER_CPLUSPLUSFLAGS': [
- '-msse4',
+ '-msse4.1',
],
},
}],
- [ 'skia_arch_type == "x86"', {
- 'sources': [
- '../src/opts/SkBlurImage_opts_SSE4.cpp',
- ],
- 'conditions': [
- [ 'skia_arch_width == 64', {
- 'sources': [
- '../src/opts/SkBlitRow_opts_SSE4_x64_asm.S',
- ],
- }],
- [ 'skia_arch_width == 32', {
- 'sources': [
- '../src/opts/SkBlitRow_opts_SSE4_asm.S',
- ],
- }],
- ],
- }],
],
},
# NEON code must be compiled with -mfpu=neon which also affects scalar