diff options
author | mtklein@chromium.org <mtklein@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-07-01 19:10:35 +0000 |
---|---|---|
committer | mtklein@chromium.org <mtklein@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-07-01 19:10:35 +0000 |
commit | 1749589c8a1a6611881b8ed4980cf6fbf7150194 (patch) | |
tree | d5f433c8cd895546f7692ac12b81f534b37a85a9 /skia | |
parent | 19aec37d615420b1001e3f0505b06307a4fcfe0d (diff) | |
download | chromium_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.gn | 11 | ||||
-rw-r--r-- | skia/skia_library_opts.gyp | 38 |
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', |