Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(274)

Side by Side Diff: gyp/opts.gyp

Issue 21203005: Enable runtime checks for SSSE3 on x86 on Android. (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: Created 7 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | src/opts/opts_check_SSE2.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 { 1 {
2 'targets': [ 2 'targets': [
3 # Due to an unfortunate intersection of lameness between gcc and gyp, 3 # Due to an unfortunate intersection of lameness between gcc and gyp,
4 # we have to build the *_SSE2.cpp files in a separate target. The 4 # we have to build the *_SSE2.cpp files in a separate target. The
5 # gcc lameness is that, in order to compile SSE2 intrinsics code, it 5 # gcc lameness is that, in order to compile SSE2 intrinsics code, it
6 # must be passed the -msse2 flag. However, with this flag, it may 6 # must be passed the -msse2 flag. However, with this flag, it may
7 # emit SSE2 instructions even for scalar code, such as the CPUID 7 # emit SSE2 instructions even for scalar code, such as the CPUID
8 # test used to test for the presence of SSE2. So that, and all other 8 # test used to test for the presence of SSE2. So that, and all other
9 # code must be compiled *without* -msse2. The gyp lameness is that it 9 # code must be compiled *without* -msse2. The gyp lameness is that it
10 # does not allow file-specific CFLAGS, so we must create this extra 10 # does not allow file-specific CFLAGS, so we must create this extra
(...skipping 15 matching lines...) Expand all
26 'dependencies': [ 26 'dependencies': [
27 'core.gyp:*', 27 'core.gyp:*',
28 ], 28 ],
29 'include_dirs': [ 29 'include_dirs': [
30 '../src/core', 30 '../src/core',
31 '../src/opts', 31 '../src/opts',
32 ], 32 ],
33 'conditions': [ 33 'conditions': [
34 [ 'skia_arch_type == "x86" and skia_os != "ios"', { 34 [ 'skia_arch_type == "x86" and skia_os != "ios"', {
35 'conditions': [ 35 'conditions': [
36 [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "nacl", "ch romeos"]', { 36 [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "nacl", "ch romeos", "android"]', {
37 'cflags': [ 37 'cflags': [
38 '-msse2', 38 '-msse2',
39 ], 39 ],
40 }], 40 }],
41 [ 'skia_os != "android"', {
42 'dependencies': [
43 'opts_ssse3',
44 ],
45 }],
46 ], 41 ],
47 'include_dirs': [ 42 'include_dirs': [
48 '../include/utils', 43 '../include/utils',
49 ], 44 ],
45 'dependencies': [
46 'opts_ssse3',
47 ],
50 'sources': [ 48 'sources': [
51 '../src/opts/opts_check_SSE2.cpp', 49 '../src/opts/opts_check_SSE2.cpp',
52 '../src/opts/SkBitmapProcState_opts_SSE2.cpp', 50 '../src/opts/SkBitmapProcState_opts_SSE2.cpp',
53 '../src/opts/SkBitmapFilter_opts_SSE2.cpp', 51 '../src/opts/SkBitmapFilter_opts_SSE2.cpp',
54 '../src/opts/SkBlitRow_opts_SSE2.cpp', 52 '../src/opts/SkBlitRow_opts_SSE2.cpp',
55 '../src/opts/SkBlitRect_opts_SSE2.cpp', 53 '../src/opts/SkBlitRect_opts_SSE2.cpp',
56 '../src/opts/SkUtils_opts_SSE2.cpp', 54 '../src/opts/SkUtils_opts_SSE2.cpp',
57 ], 55 ],
58 }], 56 }],
59 [ 'skia_arch_type == "arm" and armv7 == 1', { 57 [ 'skia_arch_type == "arm" and armv7 == 1', {
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
112 'product_name': 'skia_opts_ssse3', 110 'product_name': 'skia_opts_ssse3',
113 'type': 'static_library', 111 'type': 'static_library',
114 'standalone_static_library': 1, 112 'standalone_static_library': 1,
115 'dependencies': [ 113 'dependencies': [
116 'core.gyp:*', 114 'core.gyp:*',
117 ], 115 ],
118 'include_dirs': [ 116 'include_dirs': [
119 '../src/core', 117 '../src/core',
120 ], 118 ],
121 'conditions': [ 119 'conditions': [
122 [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "nacl", "chrome os"]', { 120 [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "nacl", "chrome os", "android"]', {
123 'cflags': [ 121 'cflags': [
124 '-mssse3', 122 '-mssse3',
125 ], 123 ],
126 }], 124 }],
127 # TODO(epoger): the following will enable SSSE3 on Macs, but it will 125 # TODO(epoger): the following will enable SSSE3 on Macs, but it will
128 # break once we set OTHER_CFLAGS anywhere else (the first setting will 126 # break once we set OTHER_CFLAGS anywhere else (the first setting will
129 # be replaced, not added to) 127 # be replaced, not added to)
130 [ 'skia_os in ["mac"]', { 128 [ 'skia_os in ["mac"]', {
131 'xcode_settings': { 129 'xcode_settings': {
132 'OTHER_CFLAGS': ['-mssse3',], 130 'OTHER_CFLAGS': ['-mssse3',],
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
180 ], 178 ],
181 }, 179 },
182 ], 180 ],
183 } 181 }
184 182
185 # Local Variables: 183 # Local Variables:
186 # tab-width:2 184 # tab-width:2
187 # indent-tabs-mode:nil 185 # indent-tabs-mode:nil
188 # End: 186 # End:
189 # vim: set expandtab tabstop=2 shiftwidth=2: 187 # vim: set expandtab tabstop=2 shiftwidth=2:
OLDNEW
« no previous file with comments | « no previous file | src/opts/opts_check_SSE2.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698