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

Side by Side Diff: gyp/opts.gyp

Issue 52603004: Implement SSE2-based implementations of the morphology filters (dilate & (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: Tweak Created 7 years, 1 month 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 | « gyp/effects.gyp ('k') | src/effects/SkMorphologyImageFilter.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 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 ], 44 ],
45 'dependencies': [ 45 'dependencies': [
46 'opts_ssse3', 46 'opts_ssse3',
47 ], 47 ],
48 'sources': [ 48 'sources': [
49 '../src/opts/opts_check_SSE2.cpp', 49 '../src/opts/opts_check_SSE2.cpp',
50 '../src/opts/SkBitmapProcState_opts_SSE2.cpp', 50 '../src/opts/SkBitmapProcState_opts_SSE2.cpp',
51 '../src/opts/SkBitmapFilter_opts_SSE2.cpp', 51 '../src/opts/SkBitmapFilter_opts_SSE2.cpp',
52 '../src/opts/SkBlitRow_opts_SSE2.cpp', 52 '../src/opts/SkBlitRow_opts_SSE2.cpp',
53 '../src/opts/SkBlitRect_opts_SSE2.cpp', 53 '../src/opts/SkBlitRect_opts_SSE2.cpp',
54 '../src/opts/SkMorphology_opts_SSE2.cpp',
54 '../src/opts/SkUtils_opts_SSE2.cpp', 55 '../src/opts/SkUtils_opts_SSE2.cpp',
55 '../src/opts/SkXfermode_opts_none.cpp', 56 '../src/opts/SkXfermode_opts_none.cpp',
56 ], 57 ],
57 }], 58 }],
58 [ 'skia_arch_type == "arm" and arm_version >= 7', { 59 [ 'skia_arch_type == "arm" and arm_version >= 7', {
59 # The assembly uses the frame pointer register (r7 in Thumb/r11 in 60 # The assembly uses the frame pointer register (r7 in Thumb/r11 in
60 # ARM), the compiler doesn't like that. 61 # ARM), the compiler doesn't like that.
61 'cflags!': [ 62 'cflags!': [
62 '-fno-omit-frame-pointer', 63 '-fno-omit-frame-pointer',
63 '-mapcs-frame', 64 '-mapcs-frame',
(...skipping 29 matching lines...) Expand all
93 '../src/opts/SkBlitRow_opts_arm.cpp', 94 '../src/opts/SkBlitRow_opts_arm.cpp',
94 ], 95 ],
95 }], 96 }],
96 ], 97 ],
97 }], 98 }],
98 [ '(skia_arch_type == "arm" and arm_version < 7) or (skia_os == "ios")', { 99 [ '(skia_arch_type == "arm" and arm_version < 7) or (skia_os == "ios")', {
99 'sources': [ 100 'sources': [
100 '../src/opts/SkBitmapProcState_opts_none.cpp', 101 '../src/opts/SkBitmapProcState_opts_none.cpp',
101 '../src/opts/SkBlitMask_opts_none.cpp', 102 '../src/opts/SkBlitMask_opts_none.cpp',
102 '../src/opts/SkBlitRow_opts_none.cpp', 103 '../src/opts/SkBlitRow_opts_none.cpp',
104 '../src/opts/SkMorphology_opts_none.cpp',
103 '../src/opts/SkUtils_opts_none.cpp', 105 '../src/opts/SkUtils_opts_none.cpp',
104 '../src/opts/SkXfermode_opts_none.cpp', 106 '../src/opts/SkXfermode_opts_none.cpp',
105 ], 107 ],
106 }], 108 }],
107 ], 109 ],
108 }, 110 },
109 # For the same lame reasons as what is done for skia_opts, we have to 111 # For the same lame reasons as what is done for skia_opts, we have to
110 # create another target specifically for SSSE3 code as we would not want 112 # create another target specifically for SSSE3 code as we would not want
111 # to compile the SSE2 code with -mssse3 which would potentially allow 113 # to compile the SSE2 code with -mssse3 which would potentially allow
112 # gcc to generate SSSE3 code. 114 # gcc to generate SSSE3 code.
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
177 ], 179 ],
178 }, 180 },
179 ], 181 ],
180 } 182 }
181 183
182 # Local Variables: 184 # Local Variables:
183 # tab-width:2 185 # tab-width:2
184 # indent-tabs-mode:nil 186 # indent-tabs-mode:nil
185 # End: 187 # End:
186 # vim: set expandtab tabstop=2 shiftwidth=2: 188 # vim: set expandtab tabstop=2 shiftwidth=2:
OLDNEW
« no previous file with comments | « gyp/effects.gyp ('k') | src/effects/SkMorphologyImageFilter.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698