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

Side by Side Diff: include/libyuv/row.h

Issue 2451503002: use __OPTIMIZE__ macro to determine debug vs release. (Closed)
Patch Set: allow clang-cl to use ssse3 version Created 4 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
« no previous file with comments | « README.chromium ('k') | include/libyuv/version.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 /* 1 /*
2 * Copyright 2011 The LibYuv Project Authors. All rights reserved. 2 * Copyright 2011 The LibYuv Project Authors. All rights reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
(...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after
167 #define HAS_INTERPOLATEROW_SSSE3 167 #define HAS_INTERPOLATEROW_SSSE3
168 #define HAS_RGBCOLORTABLEROW_X86 168 #define HAS_RGBCOLORTABLEROW_X86
169 #define HAS_SOBELROW_SSE2 169 #define HAS_SOBELROW_SSE2
170 #define HAS_SOBELTOPLANEROW_SSE2 170 #define HAS_SOBELTOPLANEROW_SSE2
171 #define HAS_SOBELXROW_SSE2 171 #define HAS_SOBELXROW_SSE2
172 #define HAS_SOBELXYROW_SSE2 172 #define HAS_SOBELXYROW_SSE2
173 #define HAS_SOBELYROW_SSE2 173 #define HAS_SOBELYROW_SSE2
174 174
175 // The following functions fail on gcc/clang 32 bit with fpic and framepointer. 175 // The following functions fail on gcc/clang 32 bit with fpic and framepointer.
176 // caveat: clangcl uses row_win.cc which works. 176 // caveat: clangcl uses row_win.cc which works.
177 #if defined(NDEBUG) || !(defined(_DEBUG) && defined(__i386__)) || \ 177 #if defined(__x86_64__) || defined(__OPTIMIZE__) || defined(_MSC_VER)
178 !defined(__i386__) || defined(_MSC_VER)
179 // TODO(fbarchard): fix build error on android_full_debug=1 178 // TODO(fbarchard): fix build error on android_full_debug=1
180 // https://code.google.com/p/libyuv/issues/detail?id=517 179 // https://code.google.com/p/libyuv/issues/detail?id=517
181 #define HAS_I422ALPHATOARGBROW_SSSE3 180 #define HAS_I422ALPHATOARGBROW_SSSE3
182 #endif 181 #endif
183 #endif 182 #endif
184 183
185 // The following are available on all x86 platforms, but 184 // The following are available on all x86 platforms, but
186 // require VS2012, clang 3.4 or gcc 4.7. 185 // require VS2012, clang 3.4 or gcc 4.7.
187 // The code supports NaCL but requires a new compiler and validator. 186 // The code supports NaCL but requires a new compiler and validator.
188 #if !defined(LIBYUV_DISABLE_X86) && (defined(VISUALC_HAS_AVX2) || \ 187 #if !defined(LIBYUV_DISABLE_X86) && (defined(VISUALC_HAS_AVX2) || \
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
228 #define HAS_YUY2TOYROW_AVX2 227 #define HAS_YUY2TOYROW_AVX2
229 228
230 // Effects: 229 // Effects:
231 #define HAS_ARGBADDROW_AVX2 230 #define HAS_ARGBADDROW_AVX2
232 #define HAS_ARGBATTENUATEROW_AVX2 231 #define HAS_ARGBATTENUATEROW_AVX2
233 #define HAS_ARGBMULTIPLYROW_AVX2 232 #define HAS_ARGBMULTIPLYROW_AVX2
234 #define HAS_ARGBSUBTRACTROW_AVX2 233 #define HAS_ARGBSUBTRACTROW_AVX2
235 #define HAS_ARGBUNATTENUATEROW_AVX2 234 #define HAS_ARGBUNATTENUATEROW_AVX2
236 #define HAS_BLENDPLANEROW_AVX2 235 #define HAS_BLENDPLANEROW_AVX2
237 236
238 #if !(defined(_DEBUG) && defined(__i386__)) 237 #if defined(__x86_64__) || defined(__OPTIMIZE__) || defined(_MSC_VER)
239 // TODO(fbarchard): fix build error on android_full_debug=1 238 // TODO(fbarchard): fix build error on android_full_debug=1
240 // https://code.google.com/p/libyuv/issues/detail?id=517 239 // https://code.google.com/p/libyuv/issues/detail?id=517
241 #define HAS_I422ALPHATOARGBROW_AVX2 240 #define HAS_I422ALPHATOARGBROW_AVX2
242 #endif 241 #endif
243 #endif 242 #endif
244 243
245 // The following are available for AVX2 Visual C and clangcl 32 bit: 244 // The following are available for AVX2 Visual C and clangcl 32 bit:
246 // TODO(fbarchard): Port to gcc. 245 // TODO(fbarchard): Port to gcc.
247 #if !defined(LIBYUV_DISABLE_X86) && defined(_M_IX86) && \ 246 #if !defined(LIBYUV_DISABLE_X86) && defined(_M_IX86) && \
248 (defined(VISUALC_HAS_AVX2) || defined(CLANG_HAS_AVX2)) 247 (defined(VISUALC_HAS_AVX2) || defined(CLANG_HAS_AVX2))
(...skipping 1750 matching lines...) Expand 10 before | Expand all | Expand 10 after
1999 void ARGBLumaColorTableRow_SSSE3(const uint8* src_argb, uint8* dst_argb, 1998 void ARGBLumaColorTableRow_SSSE3(const uint8* src_argb, uint8* dst_argb,
2000 int width, 1999 int width,
2001 const uint8* luma, uint32 lumacoeff); 2000 const uint8* luma, uint32 lumacoeff);
2002 2001
2003 #ifdef __cplusplus 2002 #ifdef __cplusplus
2004 } // extern "C" 2003 } // extern "C"
2005 } // namespace libyuv 2004 } // namespace libyuv
2006 #endif 2005 #endif
2007 2006
2008 #endif // INCLUDE_LIBYUV_ROW_H_ 2007 #endif // INCLUDE_LIBYUV_ROW_H_
OLDNEW
« no previous file with comments | « README.chromium ('k') | include/libyuv/version.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698