diff --git a/include/libyuv/row.h b/include/libyuv/row.h index ef2487a4d..7b49fe3d5 100644 --- a/include/libyuv/row.h +++ b/include/libyuv/row.h @@ -174,7 +174,8 @@ extern "C" { // The following functions fail on gcc/clang 32 bit with fpic and framepointer. // caveat: clangcl uses row_win.cc which works. -#if defined(__x86_64__) || defined(__OPTIMIZE__) || defined(_MSC_VER) +#if defined(__x86_64__) || !defined(__pic__) || defined(__clang__) || \ + defined(_MSC_VER) // TODO(fbarchard): fix build error on android_full_debug=1 // https://code.google.com/p/libyuv/issues/detail?id=517 #define HAS_I422ALPHATOARGBROW_SSSE3 @@ -235,7 +236,8 @@ extern "C" { #define HAS_ARGBUNATTENUATEROW_AVX2 #define HAS_BLENDPLANEROW_AVX2 -#if defined(__x86_64__) || defined(__OPTIMIZE__) || defined(_MSC_VER) +#if defined(__x86_64__) || !defined(__pic__) || defined(__clang__) || \ + defined(_MSC_VER) // TODO(fbarchard): fix build error on android_full_debug=1 // https://code.google.com/p/libyuv/issues/detail?id=517 #define HAS_I422ALPHATOARGBROW_AVX2