summaryrefslogtreecommitdiffstats
path: root/skia
diff options
context:
space:
mode:
authormtklein@chromium.org <mtklein@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-07-01 19:10:35 +0000
committermtklein@chromium.org <mtklein@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-07-01 19:10:35 +0000
commit1749589c8a1a6611881b8ed4980cf6fbf7150194 (patch)
treed5f433c8cd895546f7692ac12b81f534b37a85a9 /skia
parent19aec37d615420b1001e3f0505b06307a4fcfe0d (diff)
downloadchromium_src-1749589c8a1a6611881b8ed4980cf6fbf7150194.zip
chromium_src-1749589c8a1a6611881b8ed4980cf6fbf7150194.tar.gz
chromium_src-1749589c8a1a6611881b8ed4980cf6fbf7150194.tar.bz2
Manually roll Skia, picking up new SSE4 procs.
https://skia.googlesource.com/skia/+log/12ffdb31c9a01b255768a9a522c7af90a345c952..4a2489f7bbaccfe588597193561526d579004653 CQ_EXTRA_TRYBOTS=tryserver.chromium:linux_layout_rel BUG= win_chromium_rel failures look flaky NOTRY=true Review URL: https://codereview.chromium.org/332393003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@280859 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'skia')
-rw-r--r--skia/BUILD.gn11
-rw-r--r--skia/skia_library_opts.gyp38
2 files changed, 47 insertions, 2 deletions
diff --git a/skia/BUILD.gn b/skia/BUILD.gn
index 6979a32..72b8739 100644
--- a/skia/BUILD.gn
+++ b/skia/BUILD.gn
@@ -538,7 +538,7 @@ source_set("skia_opts") {
"//third_party/skia/src/opts/SkUtils_opts_SSE2.cpp",
"//third_party/skia/src/opts/SkXfermode_opts_SSE2.cpp",
- # SSE 3
+ # SSSE 3
"//third_party/skia/src/opts/SkBitmapProcState_opts_SSSE3.cpp",
# Chrome-specific.
@@ -549,8 +549,15 @@ source_set("skia_opts") {
"//third_party/skia/include/core/SkTypes.h",
]
+ # SSE 4
+ if (cpu_arch == "x86") {
+ sources += [ "//third_party/skia/src/opts/SkBlitRow_opts_SSE4_asm.S" ]
+ } else { # x64
+ sources += [ "//third_party/skia/src/opts/SkBlitRow_opts_SSE4_x64_asm.S" ]
+ }
+
if (is_linux || is_mac) {
- cflags += [ "-mssse3" ] # Note third 's'.
+ cflags += [ "-msse4" ]
}
} else if (cpu_arch == "arm") {
sources = [
diff --git a/skia/skia_library_opts.gyp b/skia/skia_library_opts.gyp
index 1c9713f..c6ee642 100644
--- a/skia/skia_library_opts.gyp
+++ b/skia/skia_library_opts.gyp
@@ -58,6 +58,7 @@
],
'dependencies': [
'skia_opts_ssse3',
+ 'skia_opts_sse4',
],
}],
[ 'target_arch == "arm"', {
@@ -204,6 +205,43 @@
}],
],
},
+ # For the same lame reasons as what is done for skia_opts, we also have to
+ # create another target specifically for SSE4 code as we would not want
+ # to compile the SSE2 code with -msse4 which would potentially allow
+ # gcc to generate SSE4 code.
+ {
+ 'target_name': 'skia_opts_sse4',
+ 'type': 'static_library',
+ 'includes': [
+ 'skia_common.gypi',
+ ],
+ 'include_dirs': [
+ '../third_party/skia/include/core',
+ '../third_party/skia/src/core',
+ ],
+ 'conditions': [
+ [ 'OS in ["linux", "freebsd", "openbsd", "solaris", "android"]', {
+ 'cflags': [
+ '-msse4',
+ ],
+ }],
+ [ 'OS == "mac"', {
+ 'xcode_settings': {
+ 'GCC_ENABLE_SSE41_EXTENSIONS': 'YES',
+ },
+ }],
+ [ 'target_arch == "x64"', {
+ 'sources': [
+ '../third_party/skia/src/opts/SkBlitRow_opts_SSE4_x64_asm.S',
+ ],
+ }],
+ [ 'target_arch == "ia32"', {
+ 'sources': [
+ '../third_party/skia/src/opts/SkBlitRow_opts_SSE4_asm.S',
+ ],
+ }],
+ ],
+ },
{
'target_name': 'skia_opts_none',
'type': 'static_library',