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

Side by Side Diff: gyp/opts.gyp

Issue 874863002: SSE4 opaque blend using intrinsics instead of assembly. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: can't hurt to swap the order Created 5 years, 10 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
« no previous file with comments | « no previous file | src/opts/SkBlitRow_opts_SSE4.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Gyp file for opts projects 1 # Gyp file for opts projects
2 { 2 {
3 'targets': [ 3 'targets': [
4 # Due to an unfortunate intersection of lameness between gcc and gyp, 4 # Due to an unfortunate intersection of lameness between gcc and gyp,
5 # we have to build the *_SSE2.cpp files in a separate target. The 5 # we have to build the *_SSE2.cpp files in a separate target. The
6 # gcc lameness is that, in order to compile SSE2 intrinsics code, it 6 # gcc lameness is that, in order to compile SSE2 intrinsics code, it
7 # must be passed the -msse2 flag. However, with this flag, it may 7 # must be passed the -msse2 flag. However, with this flag, it may
8 # emit SSE2 instructions even for scalar code, such as the CPUID 8 # emit SSE2 instructions even for scalar code, such as the CPUID
9 # test used to test for the presence of SSE2. So that, and all other 9 # test used to test for the presence of SSE2. So that, and all other
10 # code must be compiled *without* -msse2. The gyp lameness is that it 10 # code must be compiled *without* -msse2. The gyp lameness is that it
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after
200 '-mssse3', 200 '-mssse3',
201 ], 201 ],
202 }], 202 }],
203 ], 203 ],
204 }, 204 },
205 # For the same lame reasons as what is done for skia_opts, we also have to 205 # For the same lame reasons as what is done for skia_opts, we also have to
206 # create another target specifically for SSE4 code as we would not want 206 # create another target specifically for SSE4 code as we would not want
207 # to compile the SSE2 code with -msse4 which would potentially allow 207 # to compile the SSE2 code with -msse4 which would potentially allow
208 # gcc to generate SSE4 code. 208 # gcc to generate SSE4 code.
209 { 209 {
210 'target_name': 'opts_sse4', 210 'target_name': 'opts_sse4',
Nico 2015/01/26 22:23:02 You probably need something like https://coderevie
211 'product_name': 'skia_opts_sse4', 211 'product_name': 'skia_opts_sse4',
212 'type': 'static_library', 212 'type': 'static_library',
213 'standalone_static_library': 1, 213 'standalone_static_library': 1,
214 'dependencies': [ 214 'dependencies': [
215 'core.gyp:*', 215 'core.gyp:*',
216 'effects.gyp:*' 216 'effects.gyp:*'
217 ], 217 ],
218 'include_dirs': [ 218 'include_dirs': [
219 '../src/core', 219 '../src/core',
220 '../src/utils', 220 '../src/utils',
221 ], 221 ],
222 'sources': [ 222 'sources': [
223 '../src/opts/SkBlitRow_opts_SSE4.cpp',
223 '../src/opts/SkBlurImage_opts_SSE4.cpp', 224 '../src/opts/SkBlurImage_opts_SSE4.cpp',
224 ], 225 ],
225 'conditions': [ 226 'conditions': [
226 [ 'skia_arch_width == 64', {
227 'sources': [
228 '../src/opts/SkBlitRow_opts_SSE4_x64_asm.S',
229 ],
230 }],
231 [ 'skia_arch_width == 32', {
232 'sources': [
233 '../src/opts/SkBlitRow_opts_SSE4_asm.S',
234 ],
235 }],
236 [ 'skia_os == "win"', { 227 [ 'skia_os == "win"', {
237 'defines' : [ 'SK_CPU_SSE_LEVEL=41' ], 228 'defines' : [ 'SK_CPU_SSE_LEVEL=41' ],
238 }], 229 }],
239 [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "nacl", "chrome os", "android"] \ 230 [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "nacl", "chrome os", "android"] \
240 and not skia_android_framework', { 231 and not skia_android_framework', {
241 'cflags': [ 232 'cflags': [
242 '-msse4.1', 233 '-msse4.1',
243 ], 234 ],
244 }], 235 }],
245 [ 'skia_os == "mac"', { 236 [ 'skia_os == "mac"', {
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
299 '../src/opts/SkBlitMask_opts_arm_neon.cpp', 290 '../src/opts/SkBlitMask_opts_arm_neon.cpp',
300 '../src/opts/SkBlitRow_opts_arm_neon.cpp', 291 '../src/opts/SkBlitRow_opts_arm_neon.cpp',
301 '../src/opts/SkBlurImage_opts_neon.cpp', 292 '../src/opts/SkBlurImage_opts_neon.cpp',
302 '../src/opts/SkMorphology_opts_neon.cpp', 293 '../src/opts/SkMorphology_opts_neon.cpp',
303 '../src/opts/SkTextureCompression_opts_neon.cpp', 294 '../src/opts/SkTextureCompression_opts_neon.cpp',
304 '../src/opts/SkXfermode_opts_arm_neon.cpp', 295 '../src/opts/SkXfermode_opts_arm_neon.cpp',
305 ], 296 ],
306 }, 297 },
307 ], 298 ],
308 } 299 }
OLDNEW
« no previous file with comments | « no previous file | src/opts/SkBlitRow_opts_SSE4.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698