Chromium Code Reviews| OLD | NEW |
|---|---|
| 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 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 117 ], | 117 ], |
| 118 'include_dirs': [ | 118 'include_dirs': [ |
| 119 '../src/core', | 119 '../src/core', |
| 120 ], | 120 ], |
| 121 'conditions': [ | 121 'conditions': [ |
| 122 [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "nacl", "chrome os"]', { | 122 [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "nacl", "chrome os"]', { |
| 123 'cflags': [ | 123 'cflags': [ |
| 124 '-mssse3', | 124 '-mssse3', |
| 125 ], | 125 ], |
| 126 }], | 126 }], |
| 127 # TODO(epoger): the following will enable SSSE3 on Macs, but it will | 127 # This is a little redundant, as common_conditions enables SSSE3 globall y on Macs. |
| 128 # break once we set OTHER_CFLAGS anywhere else (the first setting will | |
| 129 # 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_CPLUSPLUSFLAGS': ['-mssse3',], |
|
epoger
2013/08/06 15:38:32
I don't understand how this is not susceptible to
| |
| 133 }, | 131 }, |
| 134 }], | 132 }], |
| 135 [ 'skia_arch_type == "x86"', { | 133 [ 'skia_arch_type == "x86"', { |
| 136 'sources': [ | 134 'sources': [ |
| 137 '../src/opts/SkBitmapProcState_opts_SSSE3.cpp', | 135 '../src/opts/SkBitmapProcState_opts_SSSE3.cpp', |
| 138 ], | 136 ], |
| 139 }], | 137 }], |
| 140 ], | 138 ], |
| 141 }, | 139 }, |
| 142 # NEON code must be compiled with -mfpu=neon which also affects scalar | 140 # NEON code must be compiled with -mfpu=neon which also affects scalar |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 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: |
| OLD | NEW |