Index: include/libyuv/row.h |
diff --git a/include/libyuv/row.h b/include/libyuv/row.h |
index c6db06b5bdd98bd260d1c67cac89ca9c6e966589..4fa8343c328cc0edb6cae55dcd97089bea10f9b0 100644 |
--- a/include/libyuv/row.h |
+++ b/include/libyuv/row.h |
@@ -105,10 +105,10 @@ extern "C" { |
#define HAS_COPYROW_SSE2 |
#define HAS_H422TOARGBROW_SSSE3 |
#define HAS_I400TOARGBROW_SSE2 |
-// The following functions fail on gcc/clang 32 bit. |
+// The following functions fail on gcc/clang 32 bit with fpic and framepointer. |
// caveat: clangcl uses row_win.cc which works. |
-#if !(defined(DEBUG) || defined(_DEBUG)) || !defined(__i386__) || \ |
- defined(_MSC_VER) |
+#if defined(NDEBUG) || !(defined(_DEBUG) && defined(__i386__)) || \ |
+ !defined(__i386__) || defined(_MSC_VER) |
// TODO(fbarchard): fix build error on x86 debug |
// https://code.google.com/p/libyuv/issues/detail?id=524 |
#define HAS_I411TOARGBROW_SSSE3 |